From 58206b6802f2b86b66b8861d931fa1abf3ddeb90 Mon Sep 17 00:00:00 2001 From: OMpawar-21 Date: Fri, 13 Mar 2026 09:21:40 +0530 Subject: [PATCH 1/8] feat: Normal report push --- .../Contentstack.Management.Core.Tests.csproj | 1 + .../Contentstack.cs | 8 +- .../Helpers/AssertLogger.cs | 114 + .../Helpers/LoggingHttpHandler.cs | 110 + .../Helpers/TestOutputLogger.cs | 78 + .../Contentstack001_LoginTest.cs | 112 +- .../Contentstack002_OrganisationTest.cs | 133 +- .../Contentstack003_StackTest.cs | 159 +- .../Contentstack011_GlobalFieldTest.cs | 109 +- .../Contentstack012_ContentTypeTest.cs | 107 +- .../Contentstack013_AssetTest.cs | 326 +- .../Contentstack014_EntryTest.cs | 126 +- .../Contentstack015_BulkOperationTest.cs | 212 +- .../Contentstack016_DeliveryTokenTest.cs | 204 +- .../Contentstack017_TaxonomyTest.cs | 312 +- .../Contentstack999_LogoutTest.cs | 10 +- Scripts/generate_integration_test_report.py | 757 + Scripts/run-integration-tests-with-report.sh | 71 + integration-test-report_20260313_080307.html | 47577 ++++++++++++++++ 19 files changed, 49780 insertions(+), 746 deletions(-) create mode 100644 Contentstack.Management.Core.Tests/Helpers/AssertLogger.cs create mode 100644 Contentstack.Management.Core.Tests/Helpers/LoggingHttpHandler.cs create mode 100644 Contentstack.Management.Core.Tests/Helpers/TestOutputLogger.cs create mode 100644 Scripts/generate_integration_test_report.py create mode 100755 Scripts/run-integration-tests-with-report.sh create mode 100644 integration-test-report_20260313_080307.html diff --git a/Contentstack.Management.Core.Tests/Contentstack.Management.Core.Tests.csproj b/Contentstack.Management.Core.Tests/Contentstack.Management.Core.Tests.csproj index 74cce31..aec1149 100644 --- a/Contentstack.Management.Core.Tests/Contentstack.Management.Core.Tests.csproj +++ b/Contentstack.Management.Core.Tests/Contentstack.Management.Core.Tests.csproj @@ -28,6 +28,7 @@ + diff --git a/Contentstack.Management.Core.Tests/Contentstack.cs b/Contentstack.Management.Core.Tests/Contentstack.cs index 2426d71..e69153c 100644 --- a/Contentstack.Management.Core.Tests/Contentstack.cs +++ b/Contentstack.Management.Core.Tests/Contentstack.cs @@ -1,9 +1,11 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net; +using System.Net.Http; using System.Reflection; +using Contentstack.Management.Core.Tests.Helpers; using Contentstack.Management.Core.Tests.Model; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Options; @@ -19,7 +21,9 @@ private static readonly Lazy new Lazy(() => { ContentstackClientOptions options = Config.GetSection("Contentstack").Get(); - return new ContentstackClient(new OptionsWrapper(options)); + var handler = new LoggingHttpHandler(); + var httpClient = new HttpClient(handler); + return new ContentstackClient(httpClient, options); }); diff --git a/Contentstack.Management.Core.Tests/Helpers/AssertLogger.cs b/Contentstack.Management.Core.Tests/Helpers/AssertLogger.cs new file mode 100644 index 0000000..29216f9 --- /dev/null +++ b/Contentstack.Management.Core.Tests/Helpers/AssertLogger.cs @@ -0,0 +1,114 @@ +using System; +using Microsoft.VisualStudio.TestTools.UnitTesting; + +namespace Contentstack.Management.Core.Tests.Helpers +{ + public static class AssertLogger + { + public static void IsNotNull(object value, string name = "") + { + bool passed = value != null; + TestOutputLogger.LogAssertion($"IsNotNull({name})", "NotNull", value?.ToString() ?? "null", passed); + Assert.IsNotNull(value); + } + + public static void IsNull(object value, string name = "") + { + bool passed = value == null; + TestOutputLogger.LogAssertion($"IsNull({name})", "null", value?.ToString() ?? "null", passed); + Assert.IsNull(value); + } + + public static void AreEqual(T expected, T actual, string name = "") + { + bool passed = Equals(expected, actual); + TestOutputLogger.LogAssertion($"AreEqual({name})", expected?.ToString() ?? "null", actual?.ToString() ?? "null", passed); + Assert.AreEqual(expected, actual); + } + + public static void AreEqual(T expected, T actual, string message, string name) + { + bool passed = Equals(expected, actual); + TestOutputLogger.LogAssertion($"AreEqual({name})", expected?.ToString() ?? "null", actual?.ToString() ?? "null", passed); + Assert.AreEqual(expected, actual, message); + } + + public static void IsTrue(bool condition, string name = "") + { + TestOutputLogger.LogAssertion($"IsTrue({name})", "True", condition.ToString(), condition); + Assert.IsTrue(condition); + } + + public static void IsTrue(bool condition, string message, string name) + { + TestOutputLogger.LogAssertion($"IsTrue({name})", "True", condition.ToString(), condition); + Assert.IsTrue(condition, message); + } + + public static void IsFalse(bool condition, string name = "") + { + TestOutputLogger.LogAssertion($"IsFalse({name})", "False", condition.ToString(), !condition); + Assert.IsFalse(condition); + } + + public static void IsFalse(bool condition, string message, string name) + { + TestOutputLogger.LogAssertion($"IsFalse({name})", "False", condition.ToString(), !condition); + Assert.IsFalse(condition, message); + } + + public static void IsInstanceOfType(object value, Type expectedType, string name = "") + { + bool passed = value != null && expectedType.IsInstanceOfType(value); + TestOutputLogger.LogAssertion( + $"IsInstanceOfType({name})", + expectedType?.Name ?? "null", + value?.GetType()?.Name ?? "null", + passed); + Assert.IsInstanceOfType(value, expectedType); + } + + public static T ThrowsException(Action action, string name = "") where T : Exception + { + try + { + action(); + TestOutputLogger.LogAssertion($"ThrowsException<{typeof(T).Name}>({name})", typeof(T).Name, "NoException", false); + throw new AssertFailedException($"Expected exception {typeof(T).Name} was not thrown."); + } + catch (T ex) + { + TestOutputLogger.LogAssertion($"ThrowsException<{typeof(T).Name}>({name})", typeof(T).Name, typeof(T).Name, true); + return ex; + } + catch (AssertFailedException) + { + throw; + } + catch (Exception ex) + { + TestOutputLogger.LogAssertion($"ThrowsException<{typeof(T).Name}>({name})", typeof(T).Name, ex.GetType().Name, false); + throw new AssertFailedException( + $"Expected exception {typeof(T).Name} but got {ex.GetType().Name}: {ex.Message}", ex); + } + } + + public static void Fail(string message) + { + TestOutputLogger.LogAssertion("Fail", "N/A", message ?? "", false); + Assert.Fail(message); + } + + public static void Fail(string message, params object[] parameters) + { + TestOutputLogger.LogAssertion("Fail", "N/A", message ?? "", false); + Assert.Fail(message, parameters); + } + + public static void Inconclusive(string message) + { + TestOutputLogger.LogAssertion("Inconclusive", "N/A", message ?? "", false); + Assert.Inconclusive(message); + } + } +} diff --git a/Contentstack.Management.Core.Tests/Helpers/LoggingHttpHandler.cs b/Contentstack.Management.Core.Tests/Helpers/LoggingHttpHandler.cs new file mode 100644 index 0000000..67a300b --- /dev/null +++ b/Contentstack.Management.Core.Tests/Helpers/LoggingHttpHandler.cs @@ -0,0 +1,110 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Net.Http; +using System.Text; +using System.Threading; +using System.Threading.Tasks; + +namespace Contentstack.Management.Core.Tests.Helpers +{ + public class LoggingHttpHandler : DelegatingHandler + { + public LoggingHttpHandler() : base(new HttpClientHandler()) { } + public LoggingHttpHandler(HttpMessageHandler innerHandler) : base(innerHandler) { } + + protected override async Task SendAsync( + HttpRequestMessage request, CancellationToken cancellationToken) + { + try + { + await CaptureRequest(request); + } + catch + { + // Never let logging break the request + } + + var response = await base.SendAsync(request, cancellationToken); + + try + { + await CaptureResponse(response); + } + catch + { + // Never let logging break the response + } + + return response; + } + + private async Task CaptureRequest(HttpRequestMessage request) + { + var headers = new Dictionary(); + foreach (var h in request.Headers) + headers[h.Key] = string.Join(", ", h.Value); + + string body = null; + if (request.Content != null) + { + foreach (var h in request.Content.Headers) + headers[h.Key] = string.Join(", ", h.Value); + + await request.Content.LoadIntoBufferAsync(); + body = await request.Content.ReadAsStringAsync(); + } + + var curl = BuildCurl(request.Method.ToString(), request.RequestUri?.ToString(), headers, body); + + TestOutputLogger.LogHttpRequest( + method: request.Method.ToString(), + url: request.RequestUri?.ToString() ?? "", + headers: headers, + body: body ?? "", + curlCommand: curl, + sdkMethod: "" + ); + } + + private async Task CaptureResponse(HttpResponseMessage response) + { + var headers = new Dictionary(); + foreach (var h in response.Headers) + headers[h.Key] = string.Join(", ", h.Value); + + string body = null; + if (response.Content != null) + { + foreach (var h in response.Content.Headers) + headers[h.Key] = string.Join(", ", h.Value); + + await response.Content.LoadIntoBufferAsync(); + body = await response.Content.ReadAsStringAsync(); + } + + TestOutputLogger.LogHttpResponse( + statusCode: (int)response.StatusCode, + statusText: response.ReasonPhrase ?? response.StatusCode.ToString(), + headers: headers, + body: body ?? "" + ); + } + + private static string BuildCurl(string method, string url, + IDictionary headers, string body) + { + var sb = new StringBuilder(); + sb.Append($"curl -X {method} \\\n"); + sb.Append($" '{url}' \\\n"); + foreach (var kv in headers) + sb.Append($" -H '{kv.Key}: {kv.Value}' \\\n"); + if (!string.IsNullOrEmpty(body)) + { + var escaped = body.Replace("'", "'\\''"); + sb.Append($" -d '{escaped}'"); + } + return sb.ToString().TrimEnd('\\', '\n', ' '); + } + } +} diff --git a/Contentstack.Management.Core.Tests/Helpers/TestOutputLogger.cs b/Contentstack.Management.Core.Tests/Helpers/TestOutputLogger.cs new file mode 100644 index 0000000..557588a --- /dev/null +++ b/Contentstack.Management.Core.Tests/Helpers/TestOutputLogger.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using Newtonsoft.Json; + +namespace Contentstack.Management.Core.Tests.Helpers +{ + public static class TestOutputLogger + { + private const string START_MARKER = "###TEST_OUTPUT_START###"; + private const string END_MARKER = "###TEST_OUTPUT_END###"; + + public static void LogAssertion(string assertionName, object expected, object actual, bool passed) + { + Emit(new Dictionary + { + { "type", "ASSERTION" }, + { "assertionName", assertionName }, + { "expected", expected?.ToString() ?? "null" }, + { "actual", actual?.ToString() ?? "null" }, + { "passed", passed } + }); + } + + public static void LogHttpRequest(string method, string url, + IDictionary headers, string body, + string curlCommand, string sdkMethod) + { + Emit(new Dictionary + { + { "type", "HTTP_REQUEST" }, + { "method", method ?? "" }, + { "url", url ?? "" }, + { "headers", headers ?? new Dictionary() }, + { "body", body ?? "" }, + { "curlCommand", curlCommand ?? "" }, + { "sdkMethod", sdkMethod ?? "" } + }); + } + + public static void LogHttpResponse(int statusCode, string statusText, + IDictionary headers, string body) + { + Emit(new Dictionary + { + { "type", "HTTP_RESPONSE" }, + { "statusCode", statusCode }, + { "statusText", statusText ?? "" }, + { "headers", headers ?? new Dictionary() }, + { "body", body ?? "" } + }); + } + + public static void LogContext(string key, string value) + { + Emit(new Dictionary + { + { "type", "CONTEXT" }, + { "key", key ?? "" }, + { "value", value ?? "" } + }); + } + + private static void Emit(object data) + { + try + { + var json = JsonConvert.SerializeObject(data, Formatting.None); + Console.Write(START_MARKER); + Console.Write(json); + Console.WriteLine(END_MARKER); + } + catch + { + // Never let logging break a test + } + } + } +} diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack001_LoginTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack001_LoginTest.cs index 16aaed8..2f40b48 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack001_LoginTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack001_LoginTest.cs @@ -1,7 +1,8 @@ -using System; +using System; using System.Net; using Contentstack.Management.Core.Exceptions; using Contentstack.Management.Core.Models; +using Contentstack.Management.Core.Tests.Helpers; using Microsoft.VisualStudio.TestTools.UnitTesting; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Options; @@ -19,6 +20,7 @@ public class Contentstack001_LoginTest [DoNotParallelize] public void Test001_Should_Return_Failuer_On_Wrong_Login_Credentials() { + TestOutputLogger.LogContext("TestScenario", "WrongCredentials"); ContentstackClient client = new ContentstackClient(); NetworkCredential credentials = new NetworkCredential("mock_user", "mock_pasword"); @@ -28,10 +30,10 @@ public void Test001_Should_Return_Failuer_On_Wrong_Login_Credentials() } catch (Exception e) { ContentstackErrorException errorException = e as ContentstackErrorException; - Assert.AreEqual(HttpStatusCode.UnprocessableEntity, errorException.StatusCode); - Assert.AreEqual("Looks like your email or password is invalid. Please try again or reset your password.", errorException.Message); - Assert.AreEqual("Looks like your email or password is invalid. Please try again or reset your password.", errorException.ErrorMessage); - Assert.AreEqual(104, errorException.ErrorCode); + AssertLogger.AreEqual(HttpStatusCode.UnprocessableEntity, errorException.StatusCode, "StatusCode"); + AssertLogger.AreEqual("Looks like your email or password is invalid. Please try again or reset your password.", errorException.Message, "Message"); + AssertLogger.AreEqual("Looks like your email or password is invalid. Please try again or reset your password.", errorException.ErrorMessage, "ErrorMessage"); + AssertLogger.AreEqual(104, errorException.ErrorCode, "ErrorCode"); } } @@ -39,6 +41,7 @@ public void Test001_Should_Return_Failuer_On_Wrong_Login_Credentials() [DoNotParallelize] public void Test002_Should_Return_Failuer_On_Wrong_Async_Login_Credentials() { + TestOutputLogger.LogContext("TestScenario", "WrongCredentialsAsync"); ContentstackClient client = new ContentstackClient(); NetworkCredential credentials = new NetworkCredential("mock_user", "mock_pasword"); var response = client.LoginAsync(credentials); @@ -48,10 +51,10 @@ public void Test002_Should_Return_Failuer_On_Wrong_Async_Login_Credentials() if (t.IsCompleted && t.Status == System.Threading.Tasks.TaskStatus.Faulted) { ContentstackErrorException errorException = t.Exception.InnerException as ContentstackErrorException; - Assert.AreEqual(HttpStatusCode.UnprocessableEntity, errorException.StatusCode); - Assert.AreEqual("Looks like your email or password is invalid. Please try again or reset your password.", errorException.Message); - Assert.AreEqual("Looks like your email or password is invalid. Please try again or reset your password.", errorException.ErrorMessage); - Assert.AreEqual(104, errorException.ErrorCode); + AssertLogger.AreEqual(HttpStatusCode.UnprocessableEntity, errorException.StatusCode, "StatusCode"); + AssertLogger.AreEqual("Looks like your email or password is invalid. Please try again or reset your password.", errorException.Message, "Message"); + AssertLogger.AreEqual("Looks like your email or password is invalid. Please try again or reset your password.", errorException.ErrorMessage, "ErrorMessage"); + AssertLogger.AreEqual(104, errorException.ErrorCode, "ErrorCode"); } }); Thread.Sleep(3000); @@ -61,6 +64,7 @@ public void Test002_Should_Return_Failuer_On_Wrong_Async_Login_Credentials() [DoNotParallelize] public async System.Threading.Tasks.Task Test003_Should_Return_Success_On_Async_Login() { + TestOutputLogger.LogContext("TestScenario", "AsyncLoginSuccess"); ContentstackClient client = new ContentstackClient(); try @@ -68,14 +72,14 @@ public async System.Threading.Tasks.Task Test003_Should_Return_Success_On_Async_ ContentstackResponse contentstackResponse = await client.LoginAsync(Contentstack.Credential); string loginResponse = contentstackResponse.OpenResponse(); - Assert.IsNotNull(client.contentstackOptions.Authtoken); - Assert.IsNotNull(loginResponse); + AssertLogger.IsNotNull(client.contentstackOptions.Authtoken, "Authtoken"); + AssertLogger.IsNotNull(loginResponse, "loginResponse"); await client.LogoutAsync(); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -83,6 +87,7 @@ public async System.Threading.Tasks.Task Test003_Should_Return_Success_On_Async_ [DoNotParallelize] public void Test004_Should_Return_Success_On_Login() { + TestOutputLogger.LogContext("TestScenario", "SyncLoginSuccess"); try { ContentstackClient client = new ContentstackClient(); @@ -90,12 +95,12 @@ public void Test004_Should_Return_Success_On_Login() ContentstackResponse contentstackResponse = client.Login(Contentstack.Credential); string loginResponse = contentstackResponse.OpenResponse(); - Assert.IsNotNull(client.contentstackOptions.Authtoken); - Assert.IsNotNull(loginResponse); + AssertLogger.IsNotNull(client.contentstackOptions.Authtoken, "Authtoken"); + AssertLogger.IsNotNull(loginResponse, "loginResponse"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -103,6 +108,7 @@ public void Test004_Should_Return_Success_On_Login() [DoNotParallelize] public void Test005_Should_Return_Loggedin_User() { + TestOutputLogger.LogContext("TestScenario", "GetUser"); try { ContentstackClient client = new ContentstackClient(); @@ -113,12 +119,12 @@ public void Test005_Should_Return_Loggedin_User() var user = response.OpenJObjectResponse(); - Assert.IsNotNull(user); + AssertLogger.IsNotNull(user, "user"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -126,6 +132,7 @@ public void Test005_Should_Return_Loggedin_User() [DoNotParallelize] public async System.Threading.Tasks.Task Test006_Should_Return_Loggedin_User_Async() { + TestOutputLogger.LogContext("TestScenario", "GetUserAsync"); try { ContentstackClient client = new ContentstackClient(); @@ -136,15 +143,15 @@ public async System.Threading.Tasks.Task Test006_Should_Return_Loggedin_User_Asy var user = response.OpenJObjectResponse(); - Assert.IsNotNull(user); - Assert.IsNotNull(user["user"]["organizations"]); - Assert.IsInstanceOfType(user["user"]["organizations"], typeof(JArray)); - Assert.IsNull(user["user"]["organizations"][0]["org_roles"]); + AssertLogger.IsNotNull(user, "user"); + AssertLogger.IsNotNull(user["user"]["organizations"], "organizations"); + AssertLogger.IsInstanceOfType(user["user"]["organizations"], typeof(JArray), "organizations"); + AssertLogger.IsNull(user["user"]["organizations"][0]["org_roles"], "org_roles"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -152,6 +159,7 @@ public async System.Threading.Tasks.Task Test006_Should_Return_Loggedin_User_Asy [DoNotParallelize] public void Test007_Should_Return_Loggedin_User_With_Organizations_detail() { + TestOutputLogger.LogContext("TestScenario", "GetUserWithOrgRoles"); try { ParameterCollection collection = new ParameterCollection(); @@ -165,14 +173,14 @@ public void Test007_Should_Return_Loggedin_User_With_Organizations_detail() var user = response.OpenJObjectResponse(); - Assert.IsNotNull(user); - Assert.IsNotNull(user["user"]["organizations"]); - Assert.IsInstanceOfType(user["user"]["organizations"], typeof(JArray)); - Assert.IsNotNull(user["user"]["organizations"][0]["org_roles"]); + AssertLogger.IsNotNull(user, "user"); + AssertLogger.IsNotNull(user["user"]["organizations"], "organizations"); + AssertLogger.IsInstanceOfType(user["user"]["organizations"], typeof(JArray), "organizations"); + AssertLogger.IsNotNull(user["user"]["organizations"][0]["org_roles"], "org_roles"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -180,6 +188,7 @@ public void Test007_Should_Return_Loggedin_User_With_Organizations_detail() [DoNotParallelize] public void Test008_Should_Fail_Login_With_Invalid_MfaSecret() { + TestOutputLogger.LogContext("TestScenario", "InvalidMfaSecret"); ContentstackClient client = new ContentstackClient(); NetworkCredential credentials = new NetworkCredential("test_user", "test_password"); string invalidMfaSecret = "INVALID_BASE32_SECRET!@#"; @@ -187,16 +196,15 @@ public void Test008_Should_Fail_Login_With_Invalid_MfaSecret() try { ContentstackResponse contentstackResponse = client.Login(credentials, null, invalidMfaSecret); - Assert.Fail("Expected exception for invalid MFA secret"); + AssertLogger.Fail("Expected exception for invalid MFA secret"); } catch (ArgumentException) { - // Expected exception for invalid Base32 encoding - Assert.IsTrue(true); + AssertLogger.IsTrue(true, "ArgumentException thrown as expected"); } catch (Exception e) { - Assert.Fail($"Unexpected exception type: {e.GetType().Name} - {e.Message}"); + AssertLogger.Fail($"Unexpected exception type: {e.GetType().Name} - {e.Message}"); } } @@ -204,31 +212,29 @@ public void Test008_Should_Fail_Login_With_Invalid_MfaSecret() [DoNotParallelize] public void Test009_Should_Generate_TOTP_Token_With_Valid_MfaSecret() { + TestOutputLogger.LogContext("TestScenario", "ValidMfaSecret"); ContentstackClient client = new ContentstackClient(); NetworkCredential credentials = new NetworkCredential("test_user", "test_password"); - string validMfaSecret = "JBSWY3DPEHPK3PXP"; // Valid Base32 test secret + string validMfaSecret = "JBSWY3DPEHPK3PXP"; try { - // This should fail due to invalid credentials, but should succeed in generating TOTP ContentstackResponse contentstackResponse = client.Login(credentials, null, validMfaSecret); } catch (ContentstackErrorException errorException) { - // Expected to fail due to invalid credentials, but we verify it processed the MFA secret - // The error should be about credentials, not about MFA secret format - Assert.AreEqual(HttpStatusCode.UnprocessableEntity, errorException.StatusCode); - Assert.IsTrue(errorException.Message.Contains("email or password") || + AssertLogger.AreEqual(HttpStatusCode.UnprocessableEntity, errorException.StatusCode, "StatusCode"); + AssertLogger.IsTrue(errorException.Message.Contains("email or password") || errorException.Message.Contains("credentials") || - errorException.Message.Contains("authentication")); + errorException.Message.Contains("authentication"), "MFA error message check"); } catch (ArgumentException) { - Assert.Fail("Should not throw ArgumentException for valid MFA secret"); + AssertLogger.Fail("Should not throw ArgumentException for valid MFA secret"); } catch (Exception e) { - Assert.Fail($"Unexpected exception type: {e.GetType().Name} - {e.Message}"); + AssertLogger.Fail($"Unexpected exception type: {e.GetType().Name} - {e.Message}"); } } @@ -236,31 +242,29 @@ public void Test009_Should_Generate_TOTP_Token_With_Valid_MfaSecret() [DoNotParallelize] public async System.Threading.Tasks.Task Test010_Should_Generate_TOTP_Token_With_Valid_MfaSecret_Async() { + TestOutputLogger.LogContext("TestScenario", "ValidMfaSecretAsync"); ContentstackClient client = new ContentstackClient(); NetworkCredential credentials = new NetworkCredential("test_user", "test_password"); - string validMfaSecret = "JBSWY3DPEHPK3PXP"; // Valid Base32 test secret + string validMfaSecret = "JBSWY3DPEHPK3PXP"; try { - // This should fail due to invalid credentials, but should succeed in generating TOTP ContentstackResponse contentstackResponse = await client.LoginAsync(credentials, null, validMfaSecret); } catch (ContentstackErrorException errorException) { - // Expected to fail due to invalid credentials, but we verify it processed the MFA secret - // The error should be about credentials, not about MFA secret format - Assert.AreEqual(HttpStatusCode.UnprocessableEntity, errorException.StatusCode); - Assert.IsTrue(errorException.Message.Contains("email or password") || + AssertLogger.AreEqual(HttpStatusCode.UnprocessableEntity, errorException.StatusCode, "StatusCode"); + AssertLogger.IsTrue(errorException.Message.Contains("email or password") || errorException.Message.Contains("credentials") || - errorException.Message.Contains("authentication")); + errorException.Message.Contains("authentication"), "MFA error message check"); } catch (ArgumentException) { - Assert.Fail("Should not throw ArgumentException for valid MFA secret"); + AssertLogger.Fail("Should not throw ArgumentException for valid MFA secret"); } catch (Exception e) { - Assert.Fail($"Unexpected exception type: {e.GetType().Name} - {e.Message}"); + AssertLogger.Fail($"Unexpected exception type: {e.GetType().Name} - {e.Message}"); } } @@ -268,6 +272,7 @@ public async System.Threading.Tasks.Task Test010_Should_Generate_TOTP_Token_With [DoNotParallelize] public void Test011_Should_Prefer_Explicit_Token_Over_MfaSecret() { + TestOutputLogger.LogContext("TestScenario", "ExplicitTokenOverMfa"); ContentstackClient client = new ContentstackClient(); NetworkCredential credentials = new NetworkCredential("test_user", "test_password"); string validMfaSecret = "JBSWY3DPEHPK3PXP"; @@ -275,22 +280,19 @@ public void Test011_Should_Prefer_Explicit_Token_Over_MfaSecret() try { - // This should fail due to invalid credentials, but should use explicit token ContentstackResponse contentstackResponse = client.Login(credentials, explicitToken, validMfaSecret); } catch (ContentstackErrorException errorException) { - // Expected to fail due to invalid credentials - // The important thing is that it didn't throw an exception about MFA secret processing - Assert.AreEqual(HttpStatusCode.UnprocessableEntity, errorException.StatusCode); + AssertLogger.AreEqual(HttpStatusCode.UnprocessableEntity, errorException.StatusCode, "StatusCode"); } catch (ArgumentException) { - Assert.Fail("Should not throw ArgumentException when explicit token is provided"); + AssertLogger.Fail("Should not throw ArgumentException when explicit token is provided"); } catch (Exception e) { - Assert.Fail($"Unexpected exception type: {e.GetType().Name} - {e.Message}"); + AssertLogger.Fail($"Unexpected exception type: {e.GetType().Name} - {e.Message}"); } } } diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack002_OrganisationTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack002_OrganisationTest.cs index 584b520..3d0d1d1 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack002_OrganisationTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack002_OrganisationTest.cs @@ -1,8 +1,9 @@ -using System; +using System; using System.Net.Mail; using AutoFixture; using Contentstack.Management.Core.Models; using Contentstack.Management.Core.Queryable; +using Contentstack.Management.Core.Tests.Helpers; using Contentstack.Management.Core.Tests.Model; using Microsoft.VisualStudio.TestTools.UnitTesting; using Newtonsoft.Json.Linq; @@ -24,6 +25,7 @@ public class Contentstack002_OrganisationTest [DoNotParallelize] public void Test001_Should_Return_All_Organizations() { + TestOutputLogger.LogContext("TestScenario", "GetAllOrganizations"); try { Organization organization = Contentstack.Client.Organization(); @@ -31,12 +33,12 @@ public void Test001_Should_Return_All_Organizations() ContentstackResponse contentstackResponse = organization.GetOrganizations(); var response = contentstackResponse.OpenJObjectResponse(); - Assert.IsNotNull(response); + AssertLogger.IsNotNull(response, "response"); _count = (response["organizations"] as Newtonsoft.Json.Linq.JArray).Count; } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -45,6 +47,7 @@ public void Test001_Should_Return_All_Organizations() [DoNotParallelize] public async System.Threading.Tasks.Task Test002_Should_Return_All_OrganizationsAsync() { + TestOutputLogger.LogContext("TestScenario", "GetAllOrganizationsAsync"); try { Organization organization = Contentstack.Client.Organization(); @@ -52,13 +55,13 @@ public async System.Threading.Tasks.Task Test002_Should_Return_All_Organizations ContentstackResponse contentstackResponse = await organization.GetOrganizationsAsync(); var response = contentstackResponse.OpenJObjectResponse(); - Assert.IsNotNull(response); + AssertLogger.IsNotNull(response, "response"); _count = (response["organizations"] as Newtonsoft.Json.Linq.JArray).Count; } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -67,6 +70,7 @@ public async System.Threading.Tasks.Task Test002_Should_Return_All_Organizations [DoNotParallelize] public void Test003_Should_Return_With_Skipping_Organizations() { + TestOutputLogger.LogContext("TestScenario", "SkipOrganizations"); try { Organization organization = Contentstack.Client.Organization(); @@ -75,12 +79,12 @@ public void Test003_Should_Return_With_Skipping_Organizations() ContentstackResponse contentstackResponse = organization.GetOrganizations(collection); var response = contentstackResponse.OpenJObjectResponse(); - Assert.IsNotNull(response); + AssertLogger.IsNotNull(response, "response"); var count = (response["organizations"] as Newtonsoft.Json.Linq.JArray).Count; } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -89,23 +93,25 @@ public void Test003_Should_Return_With_Skipping_Organizations() [DoNotParallelize] public void Test004_Should_Return_Organization_With_UID() { + TestOutputLogger.LogContext("TestScenario", "GetOrganizationByUID"); try { var org = Contentstack.Organization; + TestOutputLogger.LogContext("OrganizationUid", org.Uid); Organization organization = Contentstack.Client.Organization(org.Uid); ContentstackResponse contentstackResponse = organization.GetOrganizations(); var response = contentstackResponse.OpenJObjectResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(response["organization"]); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(response["organization"], "organization"); OrganisationResponse model = contentstackResponse.OpenTResponse(); - Assert.AreEqual(org.Name, model.Organization.Name); + AssertLogger.AreEqual(org.Name, model.Organization.Name, "OrganizationName"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -114,6 +120,7 @@ public void Test004_Should_Return_Organization_With_UID() [DoNotParallelize] public void Test005_Should_Return_Organization_With_UID_Include_Plan() { + TestOutputLogger.LogContext("TestScenario", "GetOrganizationWithPlan"); try { var org = Contentstack.Organization; @@ -124,14 +131,14 @@ public void Test005_Should_Return_Organization_With_UID_Include_Plan() ContentstackResponse contentstackResponse = organization.GetOrganizations(collection); var response = contentstackResponse.OpenJObjectResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(response["organization"]); - Assert.IsNotNull(response["organization"]["plan"]); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(response["organization"], "organization"); + AssertLogger.IsNotNull(response["organization"]["plan"], "plan"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -139,6 +146,7 @@ public void Test005_Should_Return_Organization_With_UID_Include_Plan() [DoNotParallelize] public void Test006_Should_Return_Organization_Roles() { + TestOutputLogger.LogContext("TestScenario", "GetOrganizationRoles"); try { var org = Contentstack.Organization; @@ -149,12 +157,12 @@ public void Test006_Should_Return_Organization_Roles() var response = contentstackResponse.OpenJObjectResponse(); RoleUID = (string)response["roles"][0]["uid"]; - Assert.IsNotNull(response); - Assert.IsNotNull(response["roles"]); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(response["roles"], "roles"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -163,6 +171,7 @@ public void Test006_Should_Return_Organization_Roles() [DoNotParallelize] public async System.Threading.Tasks.Task Test007_Should_Return_Organization_RolesAsync() { + TestOutputLogger.LogContext("TestScenario", "GetOrganizationRolesAsync"); try { var org = Contentstack.Organization; @@ -171,12 +180,12 @@ public async System.Threading.Tasks.Task Test007_Should_Return_Organization_Role ContentstackResponse contentstackResponse = await organization.RolesAsync(); var response = contentstackResponse.OpenJObjectResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(response["roles"]); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(response["roles"], "roles"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -185,6 +194,7 @@ public async System.Threading.Tasks.Task Test007_Should_Return_Organization_Role [DoNotParallelize] public void Test008_Should_Add_User_To_Organization() { + TestOutputLogger.LogContext("TestScenario", "AddUserToOrg"); try { var org = Contentstack.Organization; @@ -200,14 +210,14 @@ public void Test008_Should_Add_User_To_Organization() }, null); var response = contentstackResponse.OpenJObjectResponse(); - Assert.IsNotNull(response); - Assert.AreEqual(1, ((JArray)response["shares"]).Count); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.AreEqual(1, ((JArray)response["shares"]).Count, "sharesCount"); InviteID = (string)response["shares"][0]["uid"]; - Assert.AreEqual("The invitation has been sent successfully.", response["notice"]); + AssertLogger.AreEqual("The invitation has been sent successfully.", (string)response["notice"], "notice"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -216,6 +226,7 @@ public void Test008_Should_Add_User_To_Organization() [DoNotParallelize] public async System.Threading.Tasks.Task Test009_Should_Add_User_To_Organization() { + TestOutputLogger.LogContext("TestScenario", "AddUserToOrgAsync"); try { var org = Contentstack.Organization; @@ -231,14 +242,14 @@ public async System.Threading.Tasks.Task Test009_Should_Add_User_To_Organization }, null); var response = contentstackResponse.OpenJObjectResponse(); - Assert.IsNotNull(response); - Assert.AreEqual(1, ((JArray)response["shares"]).Count); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.AreEqual(1, ((JArray)response["shares"]).Count, "sharesCount"); InviteIDAsync = (string)response["shares"][0]["uid"]; - Assert.AreEqual("The invitation has been sent successfully.", response["notice"]); + AssertLogger.AreEqual("The invitation has been sent successfully.", (string)response["notice"], "notice"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -246,6 +257,7 @@ public async System.Threading.Tasks.Task Test009_Should_Add_User_To_Organization [DoNotParallelize] public void Test010_Should_Resend_Invite() { + TestOutputLogger.LogContext("TestScenario", "ResendInvite"); try { var org = Contentstack.Organization; @@ -254,12 +266,12 @@ public void Test010_Should_Resend_Invite() ContentstackResponse contentstackResponse = organization.ResendInvitation(InviteID); var response = contentstackResponse.OpenJObjectResponse(); - Assert.IsNotNull(response); - Assert.AreEqual("The invitation has been resent successfully.", response["notice"]); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.AreEqual("The invitation has been resent successfully.", (string)response["notice"], "notice"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -268,6 +280,7 @@ public void Test010_Should_Resend_Invite() [DoNotParallelize] public async System.Threading.Tasks.Task Test011_Should_Resend_Invite() { + TestOutputLogger.LogContext("TestScenario", "ResendInviteAsync"); try { var org = Contentstack.Organization; @@ -275,12 +288,12 @@ public async System.Threading.Tasks.Task Test011_Should_Resend_Invite() ContentstackResponse contentstackResponse = await organization.ResendInvitationAsync(InviteIDAsync); var response = contentstackResponse.OpenJObjectResponse(); - Assert.IsNotNull(response); - Assert.AreEqual("The invitation has been resent successfully.", response["notice"]); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.AreEqual("The invitation has been resent successfully.", (string)response["notice"], "notice"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -289,6 +302,7 @@ public async System.Threading.Tasks.Task Test011_Should_Resend_Invite() [DoNotParallelize] public void Test012_Should_Remove_User_From_Organization() { + TestOutputLogger.LogContext("TestScenario", "RemoveUser"); try { var org = Contentstack.Organization; @@ -297,12 +311,12 @@ public void Test012_Should_Remove_User_From_Organization() ContentstackResponse contentstackResponse = organization.RemoveUser(new System.Collections.Generic.List() { EmailSync } ); var response = contentstackResponse.OpenJObjectResponse(); - Assert.IsNotNull(response); - Assert.AreEqual("The invitation has been deleted successfully.", response["notice"]); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.AreEqual("The invitation has been deleted successfully.", (string)response["notice"], "notice"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -311,6 +325,7 @@ public void Test012_Should_Remove_User_From_Organization() [DoNotParallelize] public async System.Threading.Tasks.Task Test013_Should_Remove_User_From_Organization() { + TestOutputLogger.LogContext("TestScenario", "RemoveUserAsync"); try { var org = Contentstack.Organization; @@ -318,12 +333,12 @@ public async System.Threading.Tasks.Task Test013_Should_Remove_User_From_Organiz ContentstackResponse contentstackResponse = await organization.RemoveUserAsync(new System.Collections.Generic.List() { EmailAsync }); var response = contentstackResponse.OpenJObjectResponse(); - Assert.IsNotNull(response); - Assert.AreEqual("The invitation has been deleted successfully.", response["notice"]); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.AreEqual("The invitation has been deleted successfully.", (string)response["notice"], "notice"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -332,6 +347,7 @@ public async System.Threading.Tasks.Task Test013_Should_Remove_User_From_Organiz [DoNotParallelize] public void Test014_Should_Get_All_Invites() { + TestOutputLogger.LogContext("TestScenario", "GetAllInvites"); try { var org = Contentstack.Organization; @@ -340,14 +356,14 @@ public void Test014_Should_Get_All_Invites() ContentstackResponse contentstackResponse = organization.GetInvitations(); var response = contentstackResponse.OpenJObjectResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(response["shares"]); - Assert.AreEqual(response["shares"].GetType(), typeof(JArray)); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(response["shares"], "shares"); + AssertLogger.AreEqual(response["shares"].GetType(), typeof(JArray), "sharesType"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -356,6 +372,7 @@ public void Test014_Should_Get_All_Invites() [DoNotParallelize] public async System.Threading.Tasks.Task Test015_Should_Get_All_Invites_Async() { + TestOutputLogger.LogContext("TestScenario", "GetAllInvitesAsync"); try { var org = Contentstack.Organization; @@ -363,13 +380,13 @@ public async System.Threading.Tasks.Task Test015_Should_Get_All_Invites_Async() ContentstackResponse contentstackResponse = await organization.GetInvitationsAsync(); var response = contentstackResponse.OpenJObjectResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(response["shares"]); - Assert.AreEqual(response["shares"].GetType(), typeof(JArray)); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(response["shares"], "shares"); + AssertLogger.AreEqual(response["shares"].GetType(), typeof(JArray), "sharesType"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -378,6 +395,7 @@ public async System.Threading.Tasks.Task Test015_Should_Get_All_Invites_Async() [DoNotParallelize] public void Test016_Should_Get_All_Stacks() { + TestOutputLogger.LogContext("TestScenario", "GetAllStacks"); try { var org = Contentstack.Organization; @@ -386,14 +404,14 @@ public void Test016_Should_Get_All_Stacks() ContentstackResponse contentstackResponse = organization.GetStacks(); var response = contentstackResponse.OpenJObjectResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(response["stacks"]); - Assert.AreEqual(response["stacks"].GetType(), typeof(JArray)); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(response["stacks"], "stacks"); + AssertLogger.AreEqual(response["stacks"].GetType(), typeof(JArray), "stacksType"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -402,6 +420,7 @@ public void Test016_Should_Get_All_Stacks() [DoNotParallelize] public async System.Threading.Tasks.Task Test017_Should_Get_All_Stacks_Async() { + TestOutputLogger.LogContext("TestScenario", "GetAllStacksAsync"); try { var org = Contentstack.Organization; @@ -409,13 +428,13 @@ public async System.Threading.Tasks.Task Test017_Should_Get_All_Stacks_Async() ContentstackResponse contentstackResponse = await organization.GetStacksAsync(); var response = contentstackResponse.OpenJObjectResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(response["stacks"]); - Assert.AreEqual(response["stacks"].GetType(), typeof(JArray)); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(response["stacks"], "stacks"); + AssertLogger.AreEqual(response["stacks"].GetType(), typeof(JArray), "stacksType"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack003_StackTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack003_StackTest.cs index 211a4ca..bcfe77b 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack003_StackTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack003_StackTest.cs @@ -1,7 +1,8 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using Contentstack.Management.Core.Models; +using Contentstack.Management.Core.Tests.Helpers; using Contentstack.Management.Core.Tests.Model; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -21,6 +22,7 @@ public class Contentstack003_StackTest [DoNotParallelize] public void Test001_Should_Return_All_Stacks() { + TestOutputLogger.LogContext("TestScenario", "ReturnAllStacks"); try { Stack stack = Contentstack.Client.Stack(); @@ -28,11 +30,11 @@ public void Test001_Should_Return_All_Stacks() ContentstackResponse contentstackResponse = stack.GetAll(); var response = contentstackResponse.OpenJObjectResponse(); - Assert.IsNotNull(response); + AssertLogger.IsNotNull(response, "response"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -40,6 +42,7 @@ public void Test001_Should_Return_All_Stacks() [DoNotParallelize] public async System.Threading.Tasks.Task Test002_Should_Return_All_StacksAsync() { + TestOutputLogger.LogContext("TestScenario", "ReturnAllStacksAsync"); try { Stack stack = Contentstack.Client.Stack(); @@ -47,11 +50,11 @@ public async System.Threading.Tasks.Task Test002_Should_Return_All_StacksAsync() ContentstackResponse contentstackResponse = await stack.GetAllAsync(); var response = contentstackResponse.OpenJObjectResponse(); - Assert.IsNotNull(response); + AssertLogger.IsNotNull(response, "response"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -60,6 +63,7 @@ public async System.Threading.Tasks.Task Test002_Should_Return_All_StacksAsync() [DoNotParallelize] public void Test003_Should_Create_Stack() { + TestOutputLogger.LogContext("TestScenario", "CreateStack"); try { Stack stack = Contentstack.Client.Stack(); @@ -68,16 +72,17 @@ public void Test003_Should_Create_Stack() var response = contentstackResponse.OpenJObjectResponse(); StackResponse model = contentstackResponse.OpenTResponse(); Contentstack.Stack = model.Stack; + TestOutputLogger.LogContext("StackApiKey", model.Stack.APIKey); - Assert.IsNotNull(response); - Assert.IsNull(model.Stack.Description); - Assert.AreEqual(_stackName, model.Stack.Name); - Assert.AreEqual(_locale, model.Stack.MasterLocale); - Assert.AreEqual(_org.Uid, model.Stack.OrgUid); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNull(model.Stack.Description, "model.Stack.Description"); + AssertLogger.AreEqual(_stackName, model.Stack.Name, "StackName"); + AssertLogger.AreEqual(_locale, model.Stack.MasterLocale, "MasterLocale"); + AssertLogger.AreEqual(_org.Uid, model.Stack.OrgUid, "OrgUid"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -85,6 +90,8 @@ public void Test003_Should_Create_Stack() [DoNotParallelize] public void Test004_Should_Update_Stack() { + TestOutputLogger.LogContext("TestScenario", "UpdateStack"); + TestOutputLogger.LogContext("StackApiKey", Contentstack.Stack.APIKey); try { Stack stack = Contentstack.Client.Stack(Contentstack.Stack.APIKey); @@ -96,16 +103,16 @@ public void Test004_Should_Update_Stack() StackResponse model = contentstackResponse.OpenTResponse(); Contentstack.Stack = model.Stack; - Assert.IsNotNull(response); - Assert.IsNull(model.Stack.Description); - Assert.AreEqual(Contentstack.Stack.APIKey, model.Stack.APIKey); - Assert.AreEqual(_updatestackName, model.Stack.Name); - Assert.AreEqual(_locale, model.Stack.MasterLocale); - Assert.AreEqual(_org.Uid, model.Stack.OrgUid); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNull(model.Stack.Description, "model.Stack.Description"); + AssertLogger.AreEqual(Contentstack.Stack.APIKey, model.Stack.APIKey, "APIKey"); + AssertLogger.AreEqual(_updatestackName, model.Stack.Name, "StackName"); + AssertLogger.AreEqual(_locale, model.Stack.MasterLocale, "MasterLocale"); + AssertLogger.AreEqual(_org.Uid, model.Stack.OrgUid, "OrgUid"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -113,6 +120,8 @@ public void Test004_Should_Update_Stack() [DoNotParallelize] public async System.Threading.Tasks.Task Test005_Should_Update_Stack_Async() { + TestOutputLogger.LogContext("TestScenario", "UpdateStackAsync"); + TestOutputLogger.LogContext("StackApiKey", Contentstack.Stack.APIKey); try { Stack stack = Contentstack.Client.Stack(Contentstack.Stack.APIKey); @@ -122,16 +131,16 @@ public async System.Threading.Tasks.Task Test005_Should_Update_Stack_Async() StackResponse model = contentstackResponse.OpenTResponse(); Contentstack.Stack = model.Stack; - Assert.IsNotNull(response); - Assert.AreEqual(Contentstack.Stack.APIKey, model.Stack.APIKey); - Assert.AreEqual(_updatestackName, model.Stack.Name); - Assert.AreEqual(_locale, model.Stack.MasterLocale); - Assert.AreEqual(_description, model.Stack.Description); - Assert.AreEqual(_org.Uid, model.Stack.OrgUid); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.AreEqual(Contentstack.Stack.APIKey, model.Stack.APIKey, "APIKey"); + AssertLogger.AreEqual(_updatestackName, model.Stack.Name, "StackName"); + AssertLogger.AreEqual(_locale, model.Stack.MasterLocale, "MasterLocale"); + AssertLogger.AreEqual(_description, model.Stack.Description, "Description"); + AssertLogger.AreEqual(_org.Uid, model.Stack.OrgUid, "OrgUid"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -139,6 +148,8 @@ public async System.Threading.Tasks.Task Test005_Should_Update_Stack_Async() [DoNotParallelize] public void Test006_Should_Fetch_Stack() { + TestOutputLogger.LogContext("TestScenario", "FetchStack"); + TestOutputLogger.LogContext("StackApiKey", Contentstack.Stack.APIKey); try { Stack stack = Contentstack.Client.Stack(Contentstack.Stack.APIKey); @@ -147,16 +158,16 @@ public void Test006_Should_Fetch_Stack() var response = contentstackResponse.OpenJObjectResponse(); StackResponse model = contentstackResponse.OpenTResponse(); - Assert.IsNotNull(response); - Assert.AreEqual(Contentstack.Stack.APIKey, model.Stack.APIKey); - Assert.AreEqual(Contentstack.Stack.Name, model.Stack.Name); - Assert.AreEqual(Contentstack.Stack.MasterLocale, model.Stack.MasterLocale); - Assert.AreEqual(Contentstack.Stack.Description, model.Stack.Description); - Assert.AreEqual(Contentstack.Stack.OrgUid, model.Stack.OrgUid); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.AreEqual(Contentstack.Stack.APIKey, model.Stack.APIKey, "APIKey"); + AssertLogger.AreEqual(Contentstack.Stack.Name, model.Stack.Name, "StackName"); + AssertLogger.AreEqual(Contentstack.Stack.MasterLocale, model.Stack.MasterLocale, "MasterLocale"); + AssertLogger.AreEqual(Contentstack.Stack.Description, model.Stack.Description, "Description"); + AssertLogger.AreEqual(Contentstack.Stack.OrgUid, model.Stack.OrgUid, "OrgUid"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -164,6 +175,8 @@ public void Test006_Should_Fetch_Stack() [DoNotParallelize] public async System.Threading.Tasks.Task Test007_Should_Fetch_StackAsync() { + TestOutputLogger.LogContext("TestScenario", "FetchStackAsync"); + TestOutputLogger.LogContext("StackApiKey", Contentstack.Stack.APIKey); try { Stack stack = Contentstack.Client.Stack(Contentstack.Stack.APIKey); @@ -172,16 +185,16 @@ public async System.Threading.Tasks.Task Test007_Should_Fetch_StackAsync() var response = contentstackResponse.OpenJObjectResponse(); StackResponse model = contentstackResponse.OpenTResponse(); - Assert.IsNotNull(response); - Assert.AreEqual(Contentstack.Stack.APIKey, model.Stack.APIKey); - Assert.AreEqual(Contentstack.Stack.Name, model.Stack.Name); - Assert.AreEqual(Contentstack.Stack.MasterLocale, model.Stack.MasterLocale); - Assert.AreEqual(Contentstack.Stack.Description, model.Stack.Description); - Assert.AreEqual(Contentstack.Stack.OrgUid, model.Stack.OrgUid); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.AreEqual(Contentstack.Stack.APIKey, model.Stack.APIKey, "APIKey"); + AssertLogger.AreEqual(Contentstack.Stack.Name, model.Stack.Name, "StackName"); + AssertLogger.AreEqual(Contentstack.Stack.MasterLocale, model.Stack.MasterLocale, "MasterLocale"); + AssertLogger.AreEqual(Contentstack.Stack.Description, model.Stack.Description, "Description"); + AssertLogger.AreEqual(Contentstack.Stack.OrgUid, model.Stack.OrgUid, "OrgUid"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -189,6 +202,8 @@ public async System.Threading.Tasks.Task Test007_Should_Fetch_StackAsync() [DoNotParallelize] public void Test008_Add_Stack_Settings() { + TestOutputLogger.LogContext("TestScenario", "AddStackSettings"); + TestOutputLogger.LogContext("StackApiKey", Contentstack.Stack.APIKey); try { Stack stack = Contentstack.Client.Stack(Contentstack.Stack.APIKey); @@ -206,14 +221,14 @@ public void Test008_Add_Stack_Settings() var response = contentstackResponse.OpenJObjectResponse(); StackSettingsModel model = contentstackResponse.OpenTResponse(); - Assert.IsNotNull(response); - Assert.AreEqual("Stack settings updated successfully.", model.Notice); - Assert.AreEqual(true, model.StackSettings.StackVariables["enforce_unique_urls"]); - Assert.AreEqual("figure", model.StackSettings.StackVariables["sys_rte_allowed_tags"]); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.AreEqual("Stack settings updated successfully.", model.Notice, "Notice"); + AssertLogger.AreEqual(true, model.StackSettings.StackVariables["enforce_unique_urls"], "enforce_unique_urls"); + AssertLogger.AreEqual("figure", model.StackSettings.StackVariables["sys_rte_allowed_tags"], "sys_rte_allowed_tags"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -221,6 +236,8 @@ public void Test008_Add_Stack_Settings() [DoNotParallelize] public void Test009_Stack_Settings() { + TestOutputLogger.LogContext("TestScenario", "StackSettings"); + TestOutputLogger.LogContext("StackApiKey", Contentstack.Stack.APIKey); try { Stack stack = Contentstack.Client.Stack(Contentstack.Stack.APIKey); @@ -230,14 +247,14 @@ public void Test009_Stack_Settings() var response = contentstackResponse.OpenJObjectResponse(); StackSettingsModel model = contentstackResponse.OpenTResponse(); - Assert.IsNotNull(response); - Assert.IsNull(model.Notice); - Assert.AreEqual(true, model.StackSettings.StackVariables["enforce_unique_urls"]); - Assert.AreEqual("figure", model.StackSettings.StackVariables["sys_rte_allowed_tags"]); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNull(model.Notice, "model.Notice"); + AssertLogger.AreEqual(true, model.StackSettings.StackVariables["enforce_unique_urls"], "enforce_unique_urls"); + AssertLogger.AreEqual("figure", model.StackSettings.StackVariables["sys_rte_allowed_tags"], "sys_rte_allowed_tags"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -245,6 +262,8 @@ public void Test009_Stack_Settings() [DoNotParallelize] public void Test010_Reset_Stack_Settings() { + TestOutputLogger.LogContext("TestScenario", "ResetStackSettings"); + TestOutputLogger.LogContext("StackApiKey", Contentstack.Stack.APIKey); try { Stack stack = Contentstack.Client.Stack(Contentstack.Stack.APIKey); @@ -254,14 +273,14 @@ public void Test010_Reset_Stack_Settings() var response = contentstackResponse.OpenJObjectResponse(); StackSettingsModel model = contentstackResponse.OpenTResponse(); - Assert.IsNotNull(response); - Assert.AreEqual("Stack settings updated successfully.", model.Notice); - Assert.AreEqual(true, model.StackSettings.StackVariables["enforce_unique_urls"]); - Assert.AreEqual("figure", model.StackSettings.StackVariables["sys_rte_allowed_tags"]); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.AreEqual("Stack settings updated successfully.", model.Notice, "Notice"); + AssertLogger.AreEqual(true, model.StackSettings.StackVariables["enforce_unique_urls"], "enforce_unique_urls"); + AssertLogger.AreEqual("figure", model.StackSettings.StackVariables["sys_rte_allowed_tags"], "sys_rte_allowed_tags"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -269,6 +288,8 @@ public void Test010_Reset_Stack_Settings() [DoNotParallelize] public async System.Threading.Tasks.Task Test011_Add_Stack_Settings_Async() { + TestOutputLogger.LogContext("TestScenario", "AddStackSettingsAsync"); + TestOutputLogger.LogContext("StackApiKey", Contentstack.Stack.APIKey); try { Stack stack = Contentstack.Client.Stack(Contentstack.Stack.APIKey); @@ -285,13 +306,13 @@ public async System.Threading.Tasks.Task Test011_Add_Stack_Settings_Async() var response = contentstackResponse.OpenJObjectResponse(); StackSettingsModel model = contentstackResponse.OpenTResponse(); - Assert.IsNotNull(response); - Assert.AreEqual("Stack settings updated successfully.", model.Notice); - Assert.AreEqual(true, model.StackSettings.Rte["cs_only_breakline"]); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.AreEqual("Stack settings updated successfully.", model.Notice, "Notice"); + AssertLogger.AreEqual(true, model.StackSettings.Rte["cs_only_breakline"], "cs_only_breakline"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -299,6 +320,8 @@ public async System.Threading.Tasks.Task Test011_Add_Stack_Settings_Async() [DoNotParallelize] public async System.Threading.Tasks.Task Test012_Reset_Stack_Settings_Async() { + TestOutputLogger.LogContext("TestScenario", "ResetStackSettingsAsync"); + TestOutputLogger.LogContext("StackApiKey", Contentstack.Stack.APIKey); try { Stack stack = Contentstack.Client.Stack(Contentstack.Stack.APIKey); @@ -308,14 +331,14 @@ public async System.Threading.Tasks.Task Test012_Reset_Stack_Settings_Async() var response = contentstackResponse.OpenJObjectResponse(); StackSettingsModel model = contentstackResponse.OpenTResponse(); - Assert.IsNotNull(response); - Assert.AreEqual("Stack settings updated successfully.", model.Notice); - Assert.AreEqual(true, model.StackSettings.StackVariables["enforce_unique_urls"]); - Assert.AreEqual("figure", model.StackSettings.StackVariables["sys_rte_allowed_tags"]); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.AreEqual("Stack settings updated successfully.", model.Notice, "Notice"); + AssertLogger.AreEqual(true, model.StackSettings.StackVariables["enforce_unique_urls"], "enforce_unique_urls"); + AssertLogger.AreEqual("figure", model.StackSettings.StackVariables["sys_rte_allowed_tags"], "sys_rte_allowed_tags"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } @@ -323,6 +346,8 @@ public async System.Threading.Tasks.Task Test012_Reset_Stack_Settings_Async() [DoNotParallelize] public async System.Threading.Tasks.Task Test013_Stack_Settings_Async() { + TestOutputLogger.LogContext("TestScenario", "StackSettingsAsync"); + TestOutputLogger.LogContext("StackApiKey", Contentstack.Stack.APIKey); try { Stack stack = Contentstack.Client.Stack(Contentstack.Stack.APIKey); @@ -332,13 +357,13 @@ public async System.Threading.Tasks.Task Test013_Stack_Settings_Async() var response = contentstackResponse.OpenJObjectResponse(); StackSettingsModel model = contentstackResponse.OpenTResponse(); - Assert.IsNotNull(response); - Assert.AreEqual(true, model.StackSettings.StackVariables["enforce_unique_urls"]); - Assert.AreEqual("figure", model.StackSettings.StackVariables["sys_rte_allowed_tags"]); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.AreEqual(true, model.StackSettings.StackVariables["enforce_unique_urls"], "enforce_unique_urls"); + AssertLogger.AreEqual("figure", model.StackSettings.StackVariables["sys_rte_allowed_tags"], "sys_rte_allowed_tags"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } } diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack011_GlobalFieldTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack011_GlobalFieldTest.cs index aa7d4b7..08f050b 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack011_GlobalFieldTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack011_GlobalFieldTest.cs @@ -1,8 +1,9 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using AutoFixture; using Contentstack.Management.Core.Models; +using Contentstack.Management.Core.Tests.Helpers; using Contentstack.Management.Core.Tests.Model; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -25,120 +26,134 @@ public void Initialize () [DoNotParallelize] public void Test001_Should_Create_Global_Field() { + TestOutputLogger.LogContext("TestScenario", "CreateGlobalField"); ContentstackResponse response = _stack.GlobalField().Create(_modelling); GlobalFieldModel globalField = response.OpenTResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(globalField); - Assert.IsNotNull(globalField.Modelling); - Assert.AreEqual(_modelling.Title, globalField.Modelling.Title); - Assert.AreEqual(_modelling.Uid, globalField.Modelling.Uid); - Assert.AreEqual(_modelling.Schema.Count, globalField.Modelling.Schema.Count); + TestOutputLogger.LogContext("GlobalField", _modelling.Uid); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(globalField, "globalField"); + AssertLogger.IsNotNull(globalField.Modelling, "globalField.Modelling"); + AssertLogger.AreEqual(_modelling.Title, globalField.Modelling.Title, "Title"); + AssertLogger.AreEqual(_modelling.Uid, globalField.Modelling.Uid, "Uid"); + AssertLogger.AreEqual(_modelling.Schema.Count, globalField.Modelling.Schema.Count, "SchemaCount"); } [TestMethod] [DoNotParallelize] public void Test002_Should_Fetch_Global_Field() { + TestOutputLogger.LogContext("TestScenario", "FetchGlobalField"); + TestOutputLogger.LogContext("GlobalField", _modelling.Uid); ContentstackResponse response = _stack.GlobalField(_modelling.Uid).Fetch(); GlobalFieldModel globalField = response.OpenTResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(globalField); - Assert.IsNotNull(globalField.Modelling); - Assert.AreEqual(_modelling.Title, globalField.Modelling.Title); - Assert.AreEqual(_modelling.Uid, globalField.Modelling.Uid); - Assert.AreEqual(_modelling.Schema.Count, globalField.Modelling.Schema.Count); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(globalField, "globalField"); + AssertLogger.IsNotNull(globalField.Modelling, "globalField.Modelling"); + AssertLogger.AreEqual(_modelling.Title, globalField.Modelling.Title, "Title"); + AssertLogger.AreEqual(_modelling.Uid, globalField.Modelling.Uid, "Uid"); + AssertLogger.AreEqual(_modelling.Schema.Count, globalField.Modelling.Schema.Count, "SchemaCount"); } [TestMethod] [DoNotParallelize] public async System.Threading.Tasks.Task Test003_Should_Fetch_Async_Global_Field() { + TestOutputLogger.LogContext("TestScenario", "FetchAsyncGlobalField"); + TestOutputLogger.LogContext("GlobalField", _modelling.Uid); ContentstackResponse response = await _stack.GlobalField(_modelling.Uid).FetchAsync(); GlobalFieldModel globalField = response.OpenTResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(globalField); - Assert.IsNotNull(globalField.Modelling); - Assert.AreEqual(_modelling.Title, globalField.Modelling.Title); - Assert.AreEqual(_modelling.Uid, globalField.Modelling.Uid); - Assert.AreEqual(_modelling.Schema.Count, globalField.Modelling.Schema.Count); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(globalField, "globalField"); + AssertLogger.IsNotNull(globalField.Modelling, "globalField.Modelling"); + AssertLogger.AreEqual(_modelling.Title, globalField.Modelling.Title, "Title"); + AssertLogger.AreEqual(_modelling.Uid, globalField.Modelling.Uid, "Uid"); + AssertLogger.AreEqual(_modelling.Schema.Count, globalField.Modelling.Schema.Count, "SchemaCount"); } [TestMethod] [DoNotParallelize] public void Test004_Should_Update_Global_Field() { + TestOutputLogger.LogContext("TestScenario", "UpdateGlobalField"); + TestOutputLogger.LogContext("GlobalField", _modelling.Uid); _modelling.Title = "Updated title"; ContentstackResponse response = _stack.GlobalField(_modelling.Uid).Update(_modelling); GlobalFieldModel globalField = response.OpenTResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(globalField); - Assert.IsNotNull(globalField.Modelling); - Assert.AreEqual(_modelling.Title, globalField.Modelling.Title); - Assert.AreEqual(_modelling.Uid, globalField.Modelling.Uid); - Assert.AreEqual(_modelling.Schema.Count, globalField.Modelling.Schema.Count); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(globalField, "globalField"); + AssertLogger.IsNotNull(globalField.Modelling, "globalField.Modelling"); + AssertLogger.AreEqual(_modelling.Title, globalField.Modelling.Title, "Title"); + AssertLogger.AreEqual(_modelling.Uid, globalField.Modelling.Uid, "Uid"); + AssertLogger.AreEqual(_modelling.Schema.Count, globalField.Modelling.Schema.Count, "SchemaCount"); } [TestMethod] [DoNotParallelize] public async System.Threading.Tasks.Task Test005_Should_Update_Async_Global_Field() { + TestOutputLogger.LogContext("TestScenario", "UpdateAsyncGlobalField"); + TestOutputLogger.LogContext("GlobalField", _modelling.Uid); _modelling.Title = "First Async"; ContentstackResponse response = await _stack.GlobalField(_modelling.Uid).UpdateAsync(_modelling); GlobalFieldModel globalField = response.OpenTResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(globalField); - Assert.IsNotNull(globalField.Modelling); - Assert.AreEqual(_modelling.Title, globalField.Modelling.Title); - Assert.AreEqual(_modelling.Uid, globalField.Modelling.Uid); - Assert.AreEqual(_modelling.Schema.Count, globalField.Modelling.Schema.Count); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(globalField, "globalField"); + AssertLogger.IsNotNull(globalField.Modelling, "globalField.Modelling"); + AssertLogger.AreEqual(_modelling.Title, globalField.Modelling.Title, "Title"); + AssertLogger.AreEqual(_modelling.Uid, globalField.Modelling.Uid, "Uid"); + AssertLogger.AreEqual(_modelling.Schema.Count, globalField.Modelling.Schema.Count, "SchemaCount"); } [TestMethod] [DoNotParallelize] public void Test006_Should_Query_Global_Field() { + TestOutputLogger.LogContext("TestScenario", "QueryGlobalField"); ContentstackResponse response = _stack.GlobalField().Query().Find(); GlobalFieldsModel globalField = response.OpenTResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(globalField); - Assert.IsNotNull(globalField.Modellings); - Assert.AreEqual(1, globalField.Modellings.Count); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(globalField, "globalField"); + AssertLogger.IsNotNull(globalField.Modellings, "globalField.Modellings"); + AssertLogger.AreEqual(1, globalField.Modellings.Count, "ModellingsCount"); } [TestMethod] [DoNotParallelize] public void Test006a_Should_Query_Global_Field_With_ApiVersion() { + TestOutputLogger.LogContext("TestScenario", "QueryGlobalFieldWithApiVersion"); ContentstackResponse response = _stack.GlobalField(apiVersion: "3.2").Query().Find(); GlobalFieldsModel globalField = response.OpenTResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(globalField); - Assert.IsNotNull(globalField.Modellings); - Assert.AreEqual(1, globalField.Modellings.Count); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(globalField, "globalField"); + AssertLogger.IsNotNull(globalField.Modellings, "globalField.Modellings"); + AssertLogger.AreEqual(1, globalField.Modellings.Count, "ModellingsCount"); } [TestMethod] [DoNotParallelize] public async System.Threading.Tasks.Task Test007_Should_Query_Async_Global_Field() { + TestOutputLogger.LogContext("TestScenario", "QueryAsyncGlobalField"); ContentstackResponse response = await _stack.GlobalField().Query().FindAsync(); GlobalFieldsModel globalField = response.OpenTResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(globalField); - Assert.IsNotNull(globalField.Modellings); - Assert.AreEqual(1, globalField.Modellings.Count); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(globalField, "globalField"); + AssertLogger.IsNotNull(globalField.Modellings, "globalField.Modellings"); + AssertLogger.AreEqual(1, globalField.Modellings.Count, "ModellingsCount"); } [TestMethod] [DoNotParallelize] public async System.Threading.Tasks.Task Test007a_Should_Query_Async_Global_Field_With_ApiVersion() { + TestOutputLogger.LogContext("TestScenario", "QueryAsyncGlobalFieldWithApiVersion"); ContentstackResponse response = await _stack.GlobalField(apiVersion: "3.2").Query().FindAsync(); GlobalFieldsModel globalField = response.OpenTResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(globalField); - Assert.IsNotNull(globalField.Modellings); - Assert.AreEqual(1, globalField.Modellings.Count); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(globalField, "globalField"); + AssertLogger.IsNotNull(globalField.Modellings, "globalField.Modellings"); + AssertLogger.AreEqual(1, globalField.Modellings.Count, "ModellingsCount"); } } } diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack012_ContentTypeTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack012_ContentTypeTest.cs index d9b006f..a23d15c 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack012_ContentTypeTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack012_ContentTypeTest.cs @@ -1,6 +1,7 @@ -using System; +using System; using System.Collections.Generic; using Contentstack.Management.Core.Models; +using Contentstack.Management.Core.Tests.Helpers; using Contentstack.Management.Core.Tests.Model; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -26,77 +27,89 @@ public void Initialize () [DoNotParallelize] public void Test001_Should_Create_Content_Type() { + TestOutputLogger.LogContext("TestScenario", "CreateContentType_SinglePage"); ContentstackResponse response = _stack.ContentType().Create(_singlePage); ContentTypeModel ContentType = response.OpenTResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(ContentType); - Assert.IsNotNull(ContentType.Modelling); - Assert.AreEqual(_singlePage.Title, ContentType.Modelling.Title); - Assert.AreEqual(_singlePage.Uid, ContentType.Modelling.Uid); - Assert.AreEqual(_singlePage.Schema.Count, ContentType.Modelling.Schema.Count); + TestOutputLogger.LogContext("ContentType", _singlePage.Uid); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(ContentType, "ContentType"); + AssertLogger.IsNotNull(ContentType.Modelling, "ContentType.Modelling"); + AssertLogger.AreEqual(_singlePage.Title, ContentType.Modelling.Title, "Title"); + AssertLogger.AreEqual(_singlePage.Uid, ContentType.Modelling.Uid, "Uid"); + AssertLogger.AreEqual(_singlePage.Schema.Count, ContentType.Modelling.Schema.Count, "SchemaCount"); } [TestMethod] [DoNotParallelize] public void Test002_Should_Create_Content_Type() { + TestOutputLogger.LogContext("TestScenario", "CreateContentType_MultiPage"); ContentstackResponse response = _stack.ContentType().Create(_multiPage); ContentTypeModel ContentType = response.OpenTResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(ContentType); - Assert.IsNotNull(ContentType.Modelling); - Assert.AreEqual(_multiPage.Title, ContentType.Modelling.Title); - Assert.AreEqual(_multiPage.Uid, ContentType.Modelling.Uid); - Assert.AreEqual(_multiPage.Schema.Count, ContentType.Modelling.Schema.Count); + TestOutputLogger.LogContext("ContentType", _multiPage.Uid); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(ContentType, "ContentType"); + AssertLogger.IsNotNull(ContentType.Modelling, "ContentType.Modelling"); + AssertLogger.AreEqual(_multiPage.Title, ContentType.Modelling.Title, "Title"); + AssertLogger.AreEqual(_multiPage.Uid, ContentType.Modelling.Uid, "Uid"); + AssertLogger.AreEqual(_multiPage.Schema.Count, ContentType.Modelling.Schema.Count, "SchemaCount"); } [TestMethod] [DoNotParallelize] public void Test003_Should_Fetch_Content_Type() { + TestOutputLogger.LogContext("TestScenario", "FetchContentType"); + TestOutputLogger.LogContext("ContentType", _multiPage.Uid); ContentstackResponse response = _stack.ContentType(_multiPage.Uid).Fetch(); ContentTypeModel ContentType = response.OpenTResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(ContentType); - Assert.IsNotNull(ContentType.Modelling); - Assert.AreEqual(_multiPage.Title, ContentType.Modelling.Title); - Assert.AreEqual(_multiPage.Uid, ContentType.Modelling.Uid); - Assert.AreEqual(_multiPage.Schema.Count, ContentType.Modelling.Schema.Count); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(ContentType, "ContentType"); + AssertLogger.IsNotNull(ContentType.Modelling, "ContentType.Modelling"); + AssertLogger.AreEqual(_multiPage.Title, ContentType.Modelling.Title, "Title"); + AssertLogger.AreEqual(_multiPage.Uid, ContentType.Modelling.Uid, "Uid"); + AssertLogger.AreEqual(_multiPage.Schema.Count, ContentType.Modelling.Schema.Count, "SchemaCount"); } [TestMethod] [DoNotParallelize] public async System.Threading.Tasks.Task Test004_Should_Fetch_Async_Content_Type() { + TestOutputLogger.LogContext("TestScenario", "FetchAsyncContentType"); + TestOutputLogger.LogContext("ContentType", _singlePage.Uid); ContentstackResponse response = await _stack.ContentType(_singlePage.Uid).FetchAsync(); ContentTypeModel ContentType = response.OpenTResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(ContentType); - Assert.IsNotNull(ContentType.Modelling); - Assert.AreEqual(_singlePage.Title, ContentType.Modelling.Title); - Assert.AreEqual(_singlePage.Uid, ContentType.Modelling.Uid); - Assert.AreEqual(_singlePage.Schema.Count, ContentType.Modelling.Schema.Count); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(ContentType, "ContentType"); + AssertLogger.IsNotNull(ContentType.Modelling, "ContentType.Modelling"); + AssertLogger.AreEqual(_singlePage.Title, ContentType.Modelling.Title, "Title"); + AssertLogger.AreEqual(_singlePage.Uid, ContentType.Modelling.Uid, "Uid"); + AssertLogger.AreEqual(_singlePage.Schema.Count, ContentType.Modelling.Schema.Count, "SchemaCount"); } [TestMethod] [DoNotParallelize] public void Test005_Should_Update_Content_Type() { + TestOutputLogger.LogContext("TestScenario", "UpdateContentType"); + TestOutputLogger.LogContext("ContentType", _multiPage.Uid); _multiPage.Schema = Contentstack.serializeArray>(Contentstack.Client.serializer, "contentTypeSchema.json"); ; ContentstackResponse response = _stack.ContentType(_multiPage.Uid).Update(_multiPage); ContentTypeModel ContentType = response.OpenTResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(ContentType); - Assert.IsNotNull(ContentType.Modelling); - Assert.AreEqual(_multiPage.Title, ContentType.Modelling.Title); - Assert.AreEqual(_multiPage.Uid, ContentType.Modelling.Uid); - Assert.AreEqual(_multiPage.Schema.Count, ContentType.Modelling.Schema.Count); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(ContentType, "ContentType"); + AssertLogger.IsNotNull(ContentType.Modelling, "ContentType.Modelling"); + AssertLogger.AreEqual(_multiPage.Title, ContentType.Modelling.Title, "Title"); + AssertLogger.AreEqual(_multiPage.Uid, ContentType.Modelling.Uid, "Uid"); + AssertLogger.AreEqual(_multiPage.Schema.Count, ContentType.Modelling.Schema.Count, "SchemaCount"); } [TestMethod] [DoNotParallelize] public async System.Threading.Tasks.Task Test006_Should_Update_Async_Content_Type() { + TestOutputLogger.LogContext("TestScenario", "UpdateAsyncContentType"); + TestOutputLogger.LogContext("ContentType", _multiPage.Uid); try { // Load the existing schema @@ -121,21 +134,21 @@ public async System.Threading.Tasks.Task Test006_Should_Update_Async_Content_Typ if (response.IsSuccessStatusCode) { ContentTypeModel ContentType = response.OpenTResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(ContentType); - Assert.IsNotNull(ContentType.Modelling); - Assert.AreEqual(_multiPage.Uid, ContentType.Modelling.Uid); - Assert.AreEqual(_multiPage.Schema.Count, ContentType.Modelling.Schema.Count); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(ContentType, "ContentType"); + AssertLogger.IsNotNull(ContentType.Modelling, "ContentType.Modelling"); + AssertLogger.AreEqual(_multiPage.Uid, ContentType.Modelling.Uid, "Uid"); + AssertLogger.AreEqual(_multiPage.Schema.Count, ContentType.Modelling.Schema.Count, "SchemaCount"); Console.WriteLine($"Successfully updated content type with {ContentType.Modelling.Schema.Count} fields"); } else { - Assert.Fail($"Update failed with status {response.StatusCode}: {response.OpenResponse()}"); + AssertLogger.Fail($"Update failed with status {response.StatusCode}: {response.OpenResponse()}"); } } catch (Exception ex) { - Assert.Fail($"Exception during async update: {ex.Message}"); + AssertLogger.Fail($"Exception during async update: {ex.Message}"); } } @@ -143,24 +156,26 @@ public async System.Threading.Tasks.Task Test006_Should_Update_Async_Content_Typ [DoNotParallelize] public void Test007_Should_Query_Content_Type() { + TestOutputLogger.LogContext("TestScenario", "QueryContentType"); ContentstackResponse response = _stack.ContentType().Query().Find(); ContentTypesModel ContentType = response.OpenTResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(ContentType); - Assert.IsNotNull(ContentType.Modellings); - Assert.AreEqual(2, ContentType.Modellings.Count); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(ContentType, "ContentType"); + AssertLogger.IsNotNull(ContentType.Modellings, "ContentType.Modellings"); + AssertLogger.AreEqual(2, ContentType.Modellings.Count, "ModellingsCount"); } [TestMethod] [DoNotParallelize] public async System.Threading.Tasks.Task Test008_Should_Query_Async_Content_Type() { + TestOutputLogger.LogContext("TestScenario", "QueryAsyncContentType"); ContentstackResponse response = await _stack.ContentType().Query().FindAsync(); ContentTypesModel ContentType = response.OpenTResponse(); - Assert.IsNotNull(response); - Assert.IsNotNull(ContentType); - Assert.IsNotNull(ContentType.Modellings); - Assert.AreEqual(2, ContentType.Modellings.Count); + AssertLogger.IsNotNull(response, "response"); + AssertLogger.IsNotNull(ContentType, "ContentType"); + AssertLogger.IsNotNull(ContentType.Modellings, "ContentType.Modellings"); + AssertLogger.AreEqual(2, ContentType.Modellings.Count, "ModellingsCount"); } } } diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack013_AssetTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack013_AssetTest.cs index 0f699fe..9d21420 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack013_AssetTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack013_AssetTest.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Linq; @@ -7,6 +7,7 @@ using System.Threading.Tasks; using Contentstack.Management.Core.Models; using Contentstack.Management.Core.Models.CustomExtension; +using Contentstack.Management.Core.Tests.Helpers; using Contentstack.Management.Core.Tests.Model; using Contentstack.Management.Core.Exceptions; using Microsoft.AspNetCore.Http.Internal; @@ -30,15 +31,17 @@ public void Initialize() [DoNotParallelize] public void Test001_Should_Create_Asset() { + TestOutputLogger.LogContext("TestScenario", "CreateAsset"); var path = Path.Combine(System.Environment.CurrentDirectory, "../../../Mock/contentTypeSchema.json"); try { AssetModel asset = new AssetModel("contentTypeSchema.json", path, "application/json", title:"New.json", description:"new test desc", parentUID: null, tags:"one,two"); ContentstackResponse response = _stack.Asset().Create(asset); - + TestOutputLogger.LogContext("StackAPIKey", _stack?.APIKey ?? "null"); + if (response.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.Created, response.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.Created, response.StatusCode, "CreateAsset_StatusCode"); } else { @@ -47,7 +50,7 @@ public void Test001_Should_Create_Asset() } catch (Exception e) { - Assert.Fail("Asset Creation Failed ", e.Message); + AssertLogger.Fail("Asset Creation Failed ", e.Message); } } @@ -56,20 +59,22 @@ public void Test001_Should_Create_Asset() [DoNotParallelize] public void Test002_Should_Create_Dashboard() { + TestOutputLogger.LogContext("TestScenario", "CreateDashboard"); var path = Path.Combine(System.Environment.CurrentDirectory, "../../../Mock/customUpload.html"); try { DashboardWidgetModel dashboard = new DashboardWidgetModel(path, "text/html", "Dashboard", isEnable: true, defaultWidth: "half", tags: "one,two"); ContentstackResponse response = _stack.Extension().Upload(dashboard); - + TestOutputLogger.LogContext("StackAPIKey", _stack?.APIKey ?? "null"); + if (response.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.Created, response.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.Created, response.StatusCode, "CreateDashboard_StatusCode"); } } catch (Exception e) { - Assert.Fail("Dashboard Creation Failed ", e.Message); + AssertLogger.Fail("Dashboard Creation Failed ", e.Message); } } @@ -77,6 +82,7 @@ public void Test002_Should_Create_Dashboard() [DoNotParallelize] public void Test003_Should_Create_Custom_Widget() { + TestOutputLogger.LogContext("TestScenario", "CreateCustomWidget"); var path = Path.Combine(System.Environment.CurrentDirectory, "../../../Mock/customUpload.html"); try { @@ -88,15 +94,16 @@ public void Test003_Should_Create_Custom_Widget() } }, tags: "one,two"); ContentstackResponse response = _stack.Extension().Upload(customWidget); - + TestOutputLogger.LogContext("StackAPIKey", _stack?.APIKey ?? "null"); + if (response.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.Created, response.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.Created, response.StatusCode, "CreateCustomWidget_StatusCode"); } } catch (Exception e) { - Assert.Fail("Custom Widget Creation Failed ", e.Message); + AssertLogger.Fail("Custom Widget Creation Failed ", e.Message); } } @@ -104,20 +111,22 @@ public void Test003_Should_Create_Custom_Widget() [DoNotParallelize] public void Test004_Should_Create_Custom_field() { + TestOutputLogger.LogContext("TestScenario", "CreateCustomField"); var path = Path.Combine(System.Environment.CurrentDirectory, "../../../Mock/customUpload.html"); try { CustomFieldModel fieldModel = new CustomFieldModel(path, "text/html", "Custom field Upload", "text", isMultiple: false, tags: "one,two"); ContentstackResponse response = _stack.Extension().Upload(fieldModel); - + TestOutputLogger.LogContext("StackAPIKey", _stack?.APIKey ?? "null"); + if (response.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.Created, response.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.Created, response.StatusCode, "CreateCustomField_StatusCode"); } } catch (Exception e) { - Assert.Fail("Custom Field Creation Failed ", e.Message); + AssertLogger.Fail("Custom Field Creation Failed ", e.Message); } } @@ -127,29 +136,32 @@ public void Test004_Should_Create_Custom_field() [DoNotParallelize] public void Test005_Should_Create_Asset_Async() { + TestOutputLogger.LogContext("TestScenario", "CreateAssetAsync"); var path = Path.Combine(System.Environment.CurrentDirectory, "../../../Mock/contentTypeSchema.json"); try { AssetModel asset = new AssetModel("async_asset.json", path, "application/json", title:"Async Asset", description:"async test asset", parentUID: null, tags:"async,test"); ContentstackResponse response = _stack.Asset().CreateAsync(asset).Result; - + TestOutputLogger.LogContext("StackAPIKey", _stack?.APIKey ?? "null"); + if (response.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.Created, response.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.Created, response.StatusCode, "CreateAssetAsync_StatusCode"); var responseObject = response.OpenJObjectResponse(); if (responseObject["asset"] != null) { _testAssetUid = responseObject["asset"]["uid"]?.ToString(); + TestOutputLogger.LogContext("AssetUID", _testAssetUid ?? "null"); } } else { - Assert.Fail("Asset Creation Async Failed"); + AssertLogger.Fail("Asset Creation Async Failed"); } } catch (Exception ex) { - Assert.Fail("Asset Creation Async Failed ",ex.Message); + AssertLogger.Fail("Asset Creation Async Failed ",ex.Message); } } @@ -157,6 +169,7 @@ public void Test005_Should_Create_Asset_Async() [DoNotParallelize] public void Test006_Should_Fetch_Asset() { + TestOutputLogger.LogContext("TestScenario", "FetchAsset"); try { if (string.IsNullOrEmpty(_testAssetUid)) @@ -166,23 +179,24 @@ public void Test006_Should_Fetch_Asset() if (!string.IsNullOrEmpty(_testAssetUid)) { + TestOutputLogger.LogContext("AssetUID", _testAssetUid); ContentstackResponse response = _stack.Asset(_testAssetUid).Fetch(); - + if (response.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode, "FetchAsset_StatusCode"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["asset"], "Response should contain asset object"); + AssertLogger.IsNotNull(responseObject["asset"], "FetchAsset_ResponseContainsAsset"); } else { - Assert.Fail("The Asset is Not Getting Created"); + AssertLogger.Fail("The Asset is Not Getting Created"); } } } catch (Exception e) { - Assert.Fail("Asset Fetch Failed ",e.Message); + AssertLogger.Fail("Asset Fetch Failed ",e.Message); } } @@ -190,6 +204,7 @@ public void Test006_Should_Fetch_Asset() [DoNotParallelize] public void Test007_Should_Fetch_Asset_Async() { + TestOutputLogger.LogContext("TestScenario", "FetchAssetAsync"); try { if (string.IsNullOrEmpty(_testAssetUid)) @@ -199,23 +214,24 @@ public void Test007_Should_Fetch_Asset_Async() if (!string.IsNullOrEmpty(_testAssetUid)) { + TestOutputLogger.LogContext("AssetUID", _testAssetUid); ContentstackResponse response = _stack.Asset(_testAssetUid).FetchAsync().Result; - + if (response.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode, "FetchAssetAsync_StatusCode"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["asset"], "Response should contain asset object"); + AssertLogger.IsNotNull(responseObject["asset"], "FetchAssetAsync_ResponseContainsAsset"); } else { - Assert.Fail("Asset Fetch Async Failed"); + AssertLogger.Fail("Asset Fetch Async Failed"); } } } catch (Exception e) { - Assert.Fail("Asset Fetch Async Failed ",e.Message); + AssertLogger.Fail("Asset Fetch Async Failed ",e.Message); } } @@ -223,6 +239,7 @@ public void Test007_Should_Fetch_Asset_Async() [DoNotParallelize] public void Test008_Should_Update_Asset() { + TestOutputLogger.LogContext("TestScenario", "UpdateAsset"); try { if (string.IsNullOrEmpty(_testAssetUid)) @@ -232,26 +249,27 @@ public void Test008_Should_Update_Asset() if (!string.IsNullOrEmpty(_testAssetUid)) { + TestOutputLogger.LogContext("AssetUID", _testAssetUid); var path = Path.Combine(System.Environment.CurrentDirectory, "../../../Mock/contentTypeSchema.json"); AssetModel updatedAsset = new AssetModel("updated_asset.json", path, "application/json", title:"Updated Asset", description:"updated test asset", parentUID: null, tags:"updated,test"); - + ContentstackResponse response = _stack.Asset(_testAssetUid).Update(updatedAsset); - + if (response.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode, "UpdateAsset_StatusCode"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["asset"], "Response should contain asset object"); + AssertLogger.IsNotNull(responseObject["asset"], "UpdateAsset_ResponseContainsAsset"); } else { - Assert.Fail("Asset update Failed"); + AssertLogger.Fail("Asset update Failed"); } } } catch (Exception e) { - Assert.Fail("Asset Update Failed ",e.Message); + AssertLogger.Fail("Asset Update Failed ",e.Message); } } @@ -259,6 +277,7 @@ public void Test008_Should_Update_Asset() [DoNotParallelize] public void Test009_Should_Update_Asset_Async() { + TestOutputLogger.LogContext("TestScenario", "UpdateAssetAsync"); try { if (string.IsNullOrEmpty(_testAssetUid)) @@ -268,26 +287,27 @@ public void Test009_Should_Update_Asset_Async() if (!string.IsNullOrEmpty(_testAssetUid)) { + TestOutputLogger.LogContext("AssetUID", _testAssetUid); var path = Path.Combine(System.Environment.CurrentDirectory, "../../../Mock/contentTypeSchema.json"); AssetModel updatedAsset = new AssetModel("async_updated_asset.json", path, "application/json", title:"Async Updated Asset", description:"async updated test asset", parentUID: null, tags:"async,updated,test"); - + ContentstackResponse response = _stack.Asset(_testAssetUid).UpdateAsync(updatedAsset).Result; - + if (response.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode, "UpdateAssetAsync_StatusCode"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["asset"], "Response should contain asset object"); + AssertLogger.IsNotNull(responseObject["asset"], "UpdateAssetAsync_ResponseContainsAsset"); } else { - Assert.Fail("Asset Update Async Failed"); + AssertLogger.Fail("Asset Update Async Failed"); } } } catch (Exception e) { - Assert.Fail("Asset Update Async Failed ",e.Message); + AssertLogger.Fail("Asset Update Async Failed ",e.Message); } } @@ -295,24 +315,26 @@ public void Test009_Should_Update_Asset_Async() [DoNotParallelize] public void Test010_Should_Query_Assets() { + TestOutputLogger.LogContext("TestScenario", "QueryAssets"); try { + TestOutputLogger.LogContext("StackAPIKey", _stack?.APIKey ?? "null"); ContentstackResponse response = _stack.Asset().Query().Find(); - + if (response.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode, "QueryAssets_StatusCode"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["assets"], "Response should contain assets array"); + AssertLogger.IsNotNull(responseObject["assets"], "QueryAssets_ResponseContainsAssets"); } else { - Assert.Fail("Querying the Asset Failed"); + AssertLogger.Fail("Querying the Asset Failed"); } } catch (ContentstackErrorException ex) { - Assert.Fail("Querying the Asset Failed ",ex.Message); + AssertLogger.Fail("Querying the Asset Failed ",ex.Message); } } @@ -320,28 +342,30 @@ public void Test010_Should_Query_Assets() [DoNotParallelize] public void Test011_Should_Query_Assets_With_Parameters() { + TestOutputLogger.LogContext("TestScenario", "QueryAssetsWithParameters"); try { + TestOutputLogger.LogContext("StackAPIKey", _stack?.APIKey ?? "null"); var query = _stack.Asset().Query(); query.Limit(5); query.Skip(0); - + ContentstackResponse response = query.Find(); - + if (response.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode, "QueryAssetsWithParams_StatusCode"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["assets"], "Response should contain assets array"); + AssertLogger.IsNotNull(responseObject["assets"], "QueryAssetsWithParams_ResponseContainsAssets"); } else { - Assert.Fail("Querying the Asset Failed"); + AssertLogger.Fail("Querying the Asset Failed"); } } catch (Exception e) { - Assert.Fail("Querying the Asset Failed ",e.Message); + AssertLogger.Fail("Querying the Asset Failed ",e.Message); } } @@ -349,6 +373,7 @@ public void Test011_Should_Query_Assets_With_Parameters() [DoNotParallelize] public void Test012_Should_Delete_Asset() { + TestOutputLogger.LogContext("TestScenario", "DeleteAsset"); try { if (string.IsNullOrEmpty(_testAssetUid)) @@ -358,22 +383,23 @@ public void Test012_Should_Delete_Asset() if (!string.IsNullOrEmpty(_testAssetUid)) { + TestOutputLogger.LogContext("AssetUID", _testAssetUid); ContentstackResponse response = _stack.Asset(_testAssetUid).Delete(); - + if (response.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode, "DeleteAsset_StatusCode"); _testAssetUid = null; // Clear the UID since asset is deleted } else { - Assert.Fail("Deleting the Asset Failed"); + AssertLogger.Fail("Deleting the Asset Failed"); } } } catch (Exception e) { - Assert.Fail("Deleting the Asset Failed ",e.Message); + AssertLogger.Fail("Deleting the Asset Failed ",e.Message); } } @@ -381,39 +407,42 @@ public void Test012_Should_Delete_Asset() [DoNotParallelize] public void Test013_Should_Delete_Asset_Async() { + TestOutputLogger.LogContext("TestScenario", "DeleteAssetAsync"); try { + TestOutputLogger.LogContext("StackAPIKey", _stack?.APIKey ?? "null"); var path = Path.Combine(System.Environment.CurrentDirectory, "../../../Mock/contentTypeSchema.json"); AssetModel asset = new AssetModel("delete_asset.json", path, "application/json", title:"Delete Asset", description:"asset for deletion", parentUID: null, tags:"delete,test"); ContentstackResponse createResponse = _stack.Asset().CreateAsync(asset).Result; - + if (createResponse.IsSuccessStatusCode) { var responseObject = createResponse.OpenJObjectResponse(); string assetUid = responseObject["asset"]["uid"]?.ToString(); - + TestOutputLogger.LogContext("AssetUID", assetUid ?? "null"); + if (!string.IsNullOrEmpty(assetUid)) { ContentstackResponse deleteResponse = _stack.Asset(assetUid).DeleteAsync().Result; - + if (deleteResponse.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.OK, deleteResponse.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.OK, deleteResponse.StatusCode, "DeleteAssetAsync_StatusCode"); } else { - Assert.Fail("Deleting Asset Async Failed"); + AssertLogger.Fail("Deleting Asset Async Failed"); } } } else { - Assert.Fail("Deleting Asset Async Failed"); + AssertLogger.Fail("Deleting Asset Async Failed"); } } catch (Exception e) { - Assert.Fail("Deleting Asset Async Failed ",e.Message); + AssertLogger.Fail("Deleting Asset Async Failed ",e.Message); } } @@ -424,27 +453,30 @@ public void Test013_Should_Delete_Asset_Async() [DoNotParallelize] public void Test014_Should_Create_Folder() { + TestOutputLogger.LogContext("TestScenario", "CreateFolder"); try { + TestOutputLogger.LogContext("StackAPIKey", _stack?.APIKey ?? "null"); ContentstackResponse response = _stack.Asset().Folder().Create("Test Folder", null); - + if (response.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.Created, response.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.Created, response.StatusCode, "CreateFolder_StatusCode"); var responseObject = response.OpenJObjectResponse(); if (responseObject["asset"] != null) { _testFolderUid = responseObject["asset"]["uid"]?.ToString(); + TestOutputLogger.LogContext("FolderUID", _testFolderUid ?? "null"); } } else { - Assert.Fail("Folder Creation Failed"); + AssertLogger.Fail("Folder Creation Failed"); } } catch (Exception e) { - Assert.Fail("Folder Creation Failed ",e.Message); + AssertLogger.Fail("Folder Creation Failed ",e.Message); } } @@ -452,6 +484,7 @@ public void Test014_Should_Create_Folder() [DoNotParallelize] public void Test015_Should_Create_Subfolder() { + TestOutputLogger.LogContext("TestScenario", "CreateSubfolder"); try { if (string.IsNullOrEmpty(_testFolderUid)) @@ -461,23 +494,24 @@ public void Test015_Should_Create_Subfolder() if (!string.IsNullOrEmpty(_testFolderUid)) { + TestOutputLogger.LogContext("FolderUID", _testFolderUid); ContentstackResponse response = _stack.Asset().Folder().Create("Test Subfolder", _testFolderUid); - + if (response.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.Created, response.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.Created, response.StatusCode, "CreateSubfolder_StatusCode"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["asset"], "Response should contain folder object"); + AssertLogger.IsNotNull(responseObject["asset"], "CreateSubfolder_ResponseContainsFolder"); } else { - Assert.Fail("SubFolder Creation Failed"); + AssertLogger.Fail("SubFolder Creation Failed"); } } } catch (Exception e) { - Assert.Fail("SubFolder Fetch Failed ",e.Message); + AssertLogger.Fail("SubFolder Fetch Failed ",e.Message); } } @@ -485,6 +519,7 @@ public void Test015_Should_Create_Subfolder() [DoNotParallelize] public void Test016_Should_Fetch_Folder() { + TestOutputLogger.LogContext("TestScenario", "FetchFolder"); try { if (string.IsNullOrEmpty(_testFolderUid)) @@ -494,23 +529,24 @@ public void Test016_Should_Fetch_Folder() if (!string.IsNullOrEmpty(_testFolderUid)) { + TestOutputLogger.LogContext("FolderUID", _testFolderUid); ContentstackResponse response = _stack.Asset().Folder(_testFolderUid).Fetch(); - + if (response.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode, "FetchFolder_StatusCode"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["asset"], "Response should contain folder object"); + AssertLogger.IsNotNull(responseObject["asset"], "FetchFolder_ResponseContainsFolder"); } else { - Assert.Fail("Fetch Failed for Folder"); + AssertLogger.Fail("Fetch Failed for Folder"); } } } catch (Exception e) { - Assert.Fail("Fetch Async Failed for Folder ",e.Message); + AssertLogger.Fail("Fetch Async Failed for Folder ",e.Message); } } @@ -518,6 +554,7 @@ public void Test016_Should_Fetch_Folder() [DoNotParallelize] public void Test017_Should_Fetch_Folder_Async() { + TestOutputLogger.LogContext("TestScenario", "FetchFolderAsync"); try { if (string.IsNullOrEmpty(_testFolderUid)) @@ -527,23 +564,24 @@ public void Test017_Should_Fetch_Folder_Async() if (!string.IsNullOrEmpty(_testFolderUid)) { + TestOutputLogger.LogContext("FolderUID", _testFolderUid); ContentstackResponse response = _stack.Asset().Folder(_testFolderUid).FetchAsync().Result; - + if (response.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode, "FetchFolderAsync_StatusCode"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["asset"], "Response should contain folder object"); + AssertLogger.IsNotNull(responseObject["asset"], "FetchFolderAsync_ResponseContainsFolder"); } else { - Assert.Fail("Fetch Async Failed"); + AssertLogger.Fail("Fetch Async Failed"); } } } catch (Exception e) { - Assert.Fail("Fetch Async Failed for Folder ",e.Message); + AssertLogger.Fail("Fetch Async Failed for Folder ",e.Message); } } @@ -551,6 +589,7 @@ public void Test017_Should_Fetch_Folder_Async() [DoNotParallelize] public void Test018_Should_Update_Folder() { + TestOutputLogger.LogContext("TestScenario", "UpdateFolder"); try { if (string.IsNullOrEmpty(_testFolderUid)) @@ -560,23 +599,24 @@ public void Test018_Should_Update_Folder() if (!string.IsNullOrEmpty(_testFolderUid)) { + TestOutputLogger.LogContext("FolderUID", _testFolderUid); ContentstackResponse response = _stack.Asset().Folder(_testFolderUid).Update("Updated Test Folder", null); - + if (response.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.Created, response.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.Created, response.StatusCode, "UpdateFolder_StatusCode"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["asset"], "Response should contain folder object"); + AssertLogger.IsNotNull(responseObject["asset"], "UpdateFolder_ResponseContainsFolder"); } else { - Assert.Fail("Folder update Failed"); + AssertLogger.Fail("Folder update Failed"); } } } catch (Exception e) { - Assert.Fail("Folder Update Async Failed ",e.Message); + AssertLogger.Fail("Folder Update Async Failed ",e.Message); } } @@ -584,6 +624,7 @@ public void Test018_Should_Update_Folder() [DoNotParallelize] public void Test019_Should_Update_Folder_Async() { + TestOutputLogger.LogContext("TestScenario", "UpdateFolderAsync"); try { // First create a folder if we don't have one @@ -594,23 +635,24 @@ public void Test019_Should_Update_Folder_Async() if (!string.IsNullOrEmpty(_testFolderUid)) { + TestOutputLogger.LogContext("FolderUID", _testFolderUid); ContentstackResponse response = _stack.Asset().Folder(_testFolderUid).UpdateAsync("Async Updated Test Folder", null).Result; - + if (response.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.Created, response.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.Created, response.StatusCode, "UpdateFolderAsync_StatusCode"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["asset"], "Response should contain folder object"); + AssertLogger.IsNotNull(responseObject["asset"], "UpdateFolderAsync_ResponseContainsFolder"); } else { - Assert.Fail("Folder Update Async Failed"); + AssertLogger.Fail("Folder Update Async Failed"); } } } catch (Exception e) { - Assert.Fail("Folder Delete Failed ",e.Message); + AssertLogger.Fail("Folder Delete Failed ",e.Message); } } @@ -618,6 +660,7 @@ public void Test019_Should_Update_Folder_Async() [DoNotParallelize] public void Test022_Should_Delete_Folder() { + TestOutputLogger.LogContext("TestScenario", "DeleteFolder"); try { // First create a folder if we don't have one @@ -628,22 +671,23 @@ public void Test022_Should_Delete_Folder() if (!string.IsNullOrEmpty(_testFolderUid)) { + TestOutputLogger.LogContext("FolderUID", _testFolderUid); ContentstackResponse response = _stack.Asset().Folder(_testFolderUid).Delete(); - + if (response.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode, "DeleteFolder_StatusCode"); _testFolderUid = null; // Clear the UID since folder is deleted } else { - Assert.Fail("Delete Folder Failed"); + AssertLogger.Fail("Delete Folder Failed"); } } } catch (Exception e) { - Assert.Fail("Delete Folder Async Failed ",e.Message); + AssertLogger.Fail("Delete Folder Async Failed ",e.Message); } } @@ -651,38 +695,41 @@ public void Test022_Should_Delete_Folder() [DoNotParallelize] public void Test023_Should_Delete_Folder_Async() { + TestOutputLogger.LogContext("TestScenario", "DeleteFolderAsync"); try { // Create a new folder for deletion + TestOutputLogger.LogContext("StackAPIKey", _stack?.APIKey ?? "null"); ContentstackResponse createResponse = _stack.Asset().Folder().Create("Delete Test Folder", null); - + if (createResponse.IsSuccessStatusCode) { var responseObject = createResponse.OpenJObjectResponse(); string folderUid = responseObject["asset"]["uid"]?.ToString(); - + TestOutputLogger.LogContext("FolderUID", folderUid ?? "null"); + if (!string.IsNullOrEmpty(folderUid)) { ContentstackResponse deleteResponse = _stack.Asset().Folder(folderUid).DeleteAsync().Result; - + if (deleteResponse.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.OK, deleteResponse.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.OK, deleteResponse.StatusCode, "DeleteFolderAsync_StatusCode"); } else { - Assert.Fail("The Delete Folder Async Failed"); + AssertLogger.Fail("The Delete Folder Async Failed"); } } } else { - Assert.Fail("The Create Folder Call Failed"); + AssertLogger.Fail("The Create Folder Call Failed"); } } catch (Exception e) { - Assert.Fail("Delete Folder Async Failed ",e.Message); + AssertLogger.Fail("Delete Folder Async Failed ",e.Message); } } @@ -691,48 +738,50 @@ public void Test023_Should_Delete_Folder_Async() [DoNotParallelize] public void Test024_Should_Handle_Invalid_Asset_Operations() { + TestOutputLogger.LogContext("TestScenario", "HandleInvalidAssetOperations"); string invalidAssetUid = "invalid_asset_uid_12345"; - + TestOutputLogger.LogContext("InvalidAssetUID", invalidAssetUid); + // Test fetching non-existent asset - expect exception try { _stack.Asset(invalidAssetUid).Fetch(); - Assert.Fail("Expected exception for invalid asset fetch, but operation succeeded"); + AssertLogger.Fail("Expected exception for invalid asset fetch, but operation succeeded"); } catch (ContentstackErrorException ex) { // Expected exception for invalid asset operations - Assert.IsTrue(ex.Message.Contains("not found") || ex.Message.Contains("invalid"), - $"Expected 'not found' or 'invalid' in exception message, got: {ex.Message}"); + AssertLogger.IsTrue(ex.Message.Contains("not found") || ex.Message.Contains("invalid"), + $"Expected 'not found' or 'invalid' in exception message, got: {ex.Message}", "InvalidAssetFetch_ExceptionMessage"); } - + // Test updating non-existent asset - expect exception try { var path = Path.Combine(System.Environment.CurrentDirectory, "../../../Mock/contentTypeSchema.json"); AssetModel updateModel = new AssetModel("invalid_asset.json", path, "application/json", title:"Invalid Asset", description:"invalid test asset", parentUID: null, tags:"invalid,test"); - + _stack.Asset(invalidAssetUid).Update(updateModel); - Assert.Fail("Expected exception for invalid asset update, but operation succeeded"); + AssertLogger.Fail("Expected exception for invalid asset update, but operation succeeded"); } catch (ContentstackErrorException ex) { // Expected exception for invalid asset operations - Assert.IsTrue(ex.Message.Contains("not found") || ex.Message.Contains("invalid"), - $"Expected 'not found' or 'invalid' in exception message, got: {ex.Message}"); + AssertLogger.IsTrue(ex.Message.Contains("not found") || ex.Message.Contains("invalid"), + $"Expected 'not found' or 'invalid' in exception message, got: {ex.Message}", "InvalidAssetUpdate_ExceptionMessage"); } - + // Test deleting non-existent asset - expect exception try { _stack.Asset(invalidAssetUid).Delete(); - Assert.Fail("Expected exception for invalid asset delete, but operation succeeded"); + AssertLogger.Fail("Expected exception for invalid asset delete, but operation succeeded"); } catch (ContentstackErrorException ex) { // Expected exception for invalid asset operations - Assert.IsTrue(ex.Message.Contains("not found") || ex.Message.Contains("invalid"), - $"Expected 'not found' or 'invalid' in exception message, got: {ex.Message}"); + AssertLogger.IsTrue(ex.Message.Contains("not found") || ex.Message.Contains("invalid"), + $"Expected 'not found' or 'invalid' in exception message, got: {ex.Message}", "InvalidAssetDelete_ExceptionMessage"); } } @@ -740,8 +789,10 @@ public void Test024_Should_Handle_Invalid_Asset_Operations() [DoNotParallelize] public void Test026_Should_Handle_Invalid_Folder_Operations() { + TestOutputLogger.LogContext("TestScenario", "HandleInvalidFolderOperations"); string invalidFolderUid = "invalid_folder_uid_12345"; - + TestOutputLogger.LogContext("InvalidFolderUID", invalidFolderUid); + // Test fetching non-existent folder - expect ContentstackErrorException bool fetchExceptionThrown = false; try @@ -755,8 +806,8 @@ public void Test026_Should_Handle_Invalid_Folder_Operations() Console.WriteLine($"Expected ContentstackErrorException for invalid folder fetch: {ex.Message}"); fetchExceptionThrown = true; } - Assert.IsTrue(fetchExceptionThrown, "Expected ContentstackErrorException for invalid folder fetch"); - + AssertLogger.IsTrue(fetchExceptionThrown, "Expected ContentstackErrorException for invalid folder fetch", "InvalidFolderFetch_ExceptionThrown"); + // Test updating non-existent folder - API may succeed or throw exception try { @@ -771,7 +822,7 @@ public void Test026_Should_Handle_Invalid_Folder_Operations() Console.WriteLine($"Expected ContentstackErrorException for invalid folder update: {ex.Message}"); } // Don't assert on update behavior as API may handle this differently - + // Test deleting non-existent folder - API may succeed or throw exception try { @@ -792,19 +843,21 @@ public void Test026_Should_Handle_Invalid_Folder_Operations() [DoNotParallelize] public void Test027_Should_Handle_Asset_Creation_With_Invalid_File() { + TestOutputLogger.LogContext("TestScenario", "HandleAssetCreationWithInvalidFile"); string invalidPath = Path.Combine(System.Environment.CurrentDirectory, "non_existent_file.json"); - + TestOutputLogger.LogContext("InvalidFilePath", invalidPath); + // Expect FileNotFoundException during AssetModel construction due to file not found try { new AssetModel("invalid_file.json", invalidPath, "application/json", title:"Invalid File Asset", description:"asset with invalid file", parentUID: null, tags:"invalid,file"); - Assert.Fail("Expected FileNotFoundException during AssetModel construction, but it succeeded"); + AssertLogger.Fail("Expected FileNotFoundException during AssetModel construction, but it succeeded"); } catch (FileNotFoundException ex) { // Expected exception for file not found during AssetModel construction - Assert.IsTrue(ex.Message.Contains("non_existent_file.json") || ex.Message.Contains("Could not find file"), - $"Expected file not found exception, got: {ex.Message}"); + AssertLogger.IsTrue(ex.Message.Contains("non_existent_file.json") || ex.Message.Contains("Could not find file"), + $"Expected file not found exception, got: {ex.Message}", "InvalidFileAsset_ExceptionMessage"); } } @@ -812,27 +865,30 @@ public void Test027_Should_Handle_Asset_Creation_With_Invalid_File() [DoNotParallelize] public void Test029_Should_Handle_Query_With_Invalid_Parameters() { + TestOutputLogger.LogContext("TestScenario", "HandleQueryWithInvalidParameters"); + TestOutputLogger.LogContext("StackAPIKey", _stack?.APIKey ?? "null"); + // Test asset query with invalid parameters - expect exception to be raised directly var assetQuery = _stack.Asset().Query(); assetQuery.Limit(-1); // Invalid limit assetQuery.Skip(-1); // Invalid skip - + try { assetQuery.Find(); - Assert.Fail("Expected exception for invalid query parameters, but operation succeeded"); + AssertLogger.Fail("Expected exception for invalid query parameters, but operation succeeded"); } catch (ArgumentException ex) { // Expected exception for invalid parameters - Assert.IsTrue(ex.Message.Contains("limit") || ex.Message.Contains("skip") || ex.Message.Contains("invalid"), - $"Expected parameter validation error, got: {ex.Message}"); + AssertLogger.IsTrue(ex.Message.Contains("limit") || ex.Message.Contains("skip") || ex.Message.Contains("invalid"), + $"Expected parameter validation error, got: {ex.Message}", "InvalidQuery_ArgumentException"); } catch (ContentstackErrorException ex) { // Expected ContentstackErrorException for invalid parameters - Assert.IsTrue(ex.Message.Contains("parameter") || ex.Message.Contains("invalid") || ex.Message.Contains("limit") || ex.Message.Contains("skip"), - $"Expected parameter validation error, got: {ex.Message}"); + AssertLogger.IsTrue(ex.Message.Contains("parameter") || ex.Message.Contains("invalid") || ex.Message.Contains("limit") || ex.Message.Contains("skip"), + $"Expected parameter validation error, got: {ex.Message}", "InvalidQuery_ContentstackErrorException"); } } @@ -840,30 +896,32 @@ public void Test029_Should_Handle_Query_With_Invalid_Parameters() [DoNotParallelize] public void Test030_Should_Handle_Empty_Query_Results() { + TestOutputLogger.LogContext("TestScenario", "HandleEmptyQueryResults"); try { + TestOutputLogger.LogContext("StackAPIKey", _stack?.APIKey ?? "null"); // Test query with very high skip value to get empty results var assetQuery = _stack.Asset().Query(); assetQuery.Skip(999999); assetQuery.Limit(1); - + ContentstackResponse response = assetQuery.Find(); - + if (response.IsSuccessStatusCode) { - Assert.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode); + AssertLogger.AreEqual(System.Net.HttpStatusCode.OK, response.StatusCode, "EmptyQuery_StatusCode"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["assets"], "Response should contain assets array"); + AssertLogger.IsNotNull(responseObject["assets"], "EmptyQuery_ResponseContainsAssets"); // Empty results are valid, so we don't assert on count } else { - Assert.Fail("Asset Querying with Empty Query Failed"); + AssertLogger.Fail("Asset Querying with Empty Query Failed"); } } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack014_EntryTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack014_EntryTest.cs index 6f21559..552ba07 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack014_EntryTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack014_EntryTest.cs @@ -1,8 +1,9 @@ -using System; +using System; using System.Collections.Generic; using Contentstack.Management.Core.Models; using Contentstack.Management.Core.Models.Fields; using Contentstack.Management.Core.Utils; +using Contentstack.Management.Core.Tests.Helpers; using Contentstack.Management.Core.Tests.Model; using Microsoft.VisualStudio.TestTools.UnitTesting; using Newtonsoft.Json; @@ -26,6 +27,7 @@ public void Initialize() [DoNotParallelize] public async System.Threading.Tasks.Task Test001_Should_Create_Entry() { + TestOutputLogger.LogContext("TestScenario", "CreateSinglePageEntry"); try { // First ensure the content type exists by trying to fetch it @@ -73,6 +75,7 @@ public async System.Threading.Tasks.Task Test001_Should_Create_Entry() } } + TestOutputLogger.LogContext("ContentType", "single_page"); // Create entry for single_page content type var singlePageEntry = new SinglePageEntry { @@ -82,27 +85,28 @@ public async System.Threading.Tasks.Task Test001_Should_Create_Entry() }; ContentstackResponse response = await _stack.ContentType("single_page").Entry().CreateAsync(singlePageEntry); - + if (response.IsSuccessStatusCode) { var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["entry"], "Response should contain entry object"); - + AssertLogger.IsNotNull(responseObject["entry"], "responseObject_entry"); + var entryData = responseObject["entry"] as Newtonsoft.Json.Linq.JObject; - Assert.IsNotNull(entryData["uid"], "Entry should have UID"); - Assert.AreEqual(singlePageEntry.Title, entryData["title"]?.ToString(), "Entry title should match"); - Assert.AreEqual(singlePageEntry.Url, entryData["url"]?.ToString(), "Entry URL should match"); - + AssertLogger.IsNotNull(entryData["uid"], "entry_uid"); + AssertLogger.AreEqual(singlePageEntry.Title, entryData["title"]?.ToString(), "Entry title should match", "entry_title"); + AssertLogger.AreEqual(singlePageEntry.Url, entryData["url"]?.ToString(), "Entry URL should match", "entry_url"); + + TestOutputLogger.LogContext("Entry", entryData["uid"]?.ToString()); Console.WriteLine($"Successfully created single page entry: {entryData["uid"]}"); } else { - Assert.Fail("Entry Creation Failed"); + AssertLogger.Fail("Entry Creation Failed"); } } catch (Exception ex) { - Assert.Fail("Entry Creation Failed", ex.Message); + AssertLogger.Fail("Entry Creation Failed", ex.Message); Console.WriteLine($"Create single page entry test encountered exception: {ex.Message}"); } } @@ -111,6 +115,7 @@ public async System.Threading.Tasks.Task Test001_Should_Create_Entry() [DoNotParallelize] public async System.Threading.Tasks.Task Test002_Should_Create_MultiPage_Entry() { + TestOutputLogger.LogContext("TestScenario", "CreateMultiPageEntry"); try { // First ensure the content type exists by trying to fetch it @@ -157,6 +162,7 @@ public async System.Threading.Tasks.Task Test002_Should_Create_MultiPage_Entry() } } + TestOutputLogger.LogContext("ContentType", "multi_page"); // Create entry for multi_page content type var multiPageEntry = new MultiPageEntry { @@ -166,27 +172,28 @@ public async System.Threading.Tasks.Task Test002_Should_Create_MultiPage_Entry() }; ContentstackResponse response = await _stack.ContentType("multi_page").Entry().CreateAsync(multiPageEntry); - + if (response.IsSuccessStatusCode) { var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["entry"], "Response should contain entry object"); - + AssertLogger.IsNotNull(responseObject["entry"], "responseObject_entry"); + var entryData = responseObject["entry"] as Newtonsoft.Json.Linq.JObject; - Assert.IsNotNull(entryData["uid"], "Entry should have UID"); - Assert.AreEqual(multiPageEntry.Title, entryData["title"]?.ToString(), "Entry title should match"); - Assert.AreEqual(multiPageEntry.Url, entryData["url"]?.ToString(), "Entry URL should match"); - + AssertLogger.IsNotNull(entryData["uid"], "entry_uid"); + AssertLogger.AreEqual(multiPageEntry.Title, entryData["title"]?.ToString(), "Entry title should match", "entry_title"); + AssertLogger.AreEqual(multiPageEntry.Url, entryData["url"]?.ToString(), "Entry URL should match", "entry_url"); + + TestOutputLogger.LogContext("Entry", entryData["uid"]?.ToString()); Console.WriteLine($"Successfully created multi page entry: {entryData["uid"]}"); } else { - Assert.Fail("Entry Crreation Failed"); + AssertLogger.Fail("Entry Crreation Failed"); } } catch (Exception ex) { - Assert.Fail("Entry Creation Failed ", ex.Message); + AssertLogger.Fail("Entry Creation Failed ", ex.Message); } } @@ -194,8 +201,10 @@ public async System.Threading.Tasks.Task Test002_Should_Create_MultiPage_Entry() [DoNotParallelize] public async System.Threading.Tasks.Task Test003_Should_Fetch_Entry() { + TestOutputLogger.LogContext("TestScenario", "FetchEntry"); try { + TestOutputLogger.LogContext("ContentType", "single_page"); var singlePageEntry = new SinglePageEntry { Title = "Test Entry for Fetch", @@ -204,39 +213,40 @@ public async System.Threading.Tasks.Task Test003_Should_Fetch_Entry() }; ContentstackResponse createResponse = await _stack.ContentType("single_page").Entry().CreateAsync(singlePageEntry); - + if (createResponse.IsSuccessStatusCode) { var createObject = createResponse.OpenJObjectResponse(); var entryUid = createObject["entry"]["uid"]?.ToString(); - Assert.IsNotNull(entryUid, "Created entry should have UID"); + AssertLogger.IsNotNull(entryUid, "created_entry_uid"); + TestOutputLogger.LogContext("Entry", entryUid); ContentstackResponse fetchResponse = await _stack.ContentType("single_page").Entry(entryUid).FetchAsync(); - + if (fetchResponse.IsSuccessStatusCode) { var fetchObject = fetchResponse.OpenJObjectResponse(); - Assert.IsNotNull(fetchObject["entry"], "Response should contain entry object"); - + AssertLogger.IsNotNull(fetchObject["entry"], "fetchObject_entry"); + var entryData = fetchObject["entry"] as Newtonsoft.Json.Linq.JObject; - Assert.AreEqual(entryUid, entryData["uid"]?.ToString(), "Fetched entry UID should match"); - Assert.AreEqual(singlePageEntry.Title, entryData["title"]?.ToString(), "Fetched entry title should match"); - + AssertLogger.AreEqual(entryUid, entryData["uid"]?.ToString(), "Fetched entry UID should match", "fetched_entry_uid"); + AssertLogger.AreEqual(singlePageEntry.Title, entryData["title"]?.ToString(), "Fetched entry title should match", "fetched_entry_title"); + Console.WriteLine($"Successfully fetched entry: {entryUid}"); } else { - Assert.Fail("Entry Fetch Failed"); + AssertLogger.Fail("Entry Fetch Failed"); } } else { - Assert.Fail("Entry Creation for Fetch Failed"); + AssertLogger.Fail("Entry Creation for Fetch Failed"); } } catch (Exception ex) { - Assert.Fail("Entry Fetch Failed", ex.Message); + AssertLogger.Fail("Entry Fetch Failed", ex.Message); } } @@ -244,8 +254,10 @@ public async System.Threading.Tasks.Task Test003_Should_Fetch_Entry() [DoNotParallelize] public async System.Threading.Tasks.Task Test004_Should_Update_Entry() { + TestOutputLogger.LogContext("TestScenario", "UpdateEntry"); try { + TestOutputLogger.LogContext("ContentType", "single_page"); // First create an entry to update var singlePageEntry = new SinglePageEntry { @@ -255,12 +267,13 @@ public async System.Threading.Tasks.Task Test004_Should_Update_Entry() }; ContentstackResponse createResponse = await _stack.ContentType("single_page").Entry().CreateAsync(singlePageEntry); - + if (createResponse.IsSuccessStatusCode) { var createObject = createResponse.OpenJObjectResponse(); var entryUid = createObject["entry"]["uid"]?.ToString(); - Assert.IsNotNull(entryUid, "Created entry should have UID"); + AssertLogger.IsNotNull(entryUid, "created_entry_uid"); + TestOutputLogger.LogContext("Entry", entryUid); // Update the entry var updatedEntry = new SinglePageEntry @@ -271,32 +284,32 @@ public async System.Threading.Tasks.Task Test004_Should_Update_Entry() }; ContentstackResponse updateResponse = await _stack.ContentType("single_page").Entry(entryUid).UpdateAsync(updatedEntry); - + if (updateResponse.IsSuccessStatusCode) { var updateObject = updateResponse.OpenJObjectResponse(); - Assert.IsNotNull(updateObject["entry"], "Response should contain entry object"); - + AssertLogger.IsNotNull(updateObject["entry"], "updateObject_entry"); + var entryData = updateObject["entry"] as Newtonsoft.Json.Linq.JObject; - Assert.AreEqual(entryUid, entryData["uid"]?.ToString(), "Updated entry UID should match"); - Assert.AreEqual(updatedEntry.Title, entryData["title"]?.ToString(), "Updated entry title should match"); - Assert.AreEqual(updatedEntry.Url, entryData["url"]?.ToString(), "Updated entry URL should match"); - + AssertLogger.AreEqual(entryUid, entryData["uid"]?.ToString(), "Updated entry UID should match", "updated_entry_uid"); + AssertLogger.AreEqual(updatedEntry.Title, entryData["title"]?.ToString(), "Updated entry title should match", "updated_entry_title"); + AssertLogger.AreEqual(updatedEntry.Url, entryData["url"]?.ToString(), "Updated entry URL should match", "updated_entry_url"); + Console.WriteLine($"Successfully updated entry: {entryUid}"); } else { - Assert.Fail("Entry Update Failed"); + AssertLogger.Fail("Entry Update Failed"); } } else { - Assert.Fail("Entry Creation for Update Failed"); + AssertLogger.Fail("Entry Creation for Update Failed"); } } catch (Exception ex) { - Assert.Fail("Entry Update Failed",ex.Message); + AssertLogger.Fail("Entry Update Failed",ex.Message); } } @@ -304,28 +317,30 @@ public async System.Threading.Tasks.Task Test004_Should_Update_Entry() [DoNotParallelize] public async System.Threading.Tasks.Task Test005_Should_Query_Entries() { + TestOutputLogger.LogContext("TestScenario", "QueryEntries"); try { + TestOutputLogger.LogContext("ContentType", "single_page"); ContentstackResponse response = await _stack.ContentType("single_page").Entry().Query().FindAsync(); - + if (response.IsSuccessStatusCode) { var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["entries"], "Response should contain entries array"); - + AssertLogger.IsNotNull(responseObject["entries"], "responseObject_entries"); + var entries = responseObject["entries"] as Newtonsoft.Json.Linq.JArray; - Assert.IsNotNull(entries, "Entries should be an array"); - + AssertLogger.IsNotNull(entries, "entries_array"); + Console.WriteLine($"Successfully queried {entries.Count} entries for single_page content type"); } else { - Assert.Fail("Entry Query Failed"); + AssertLogger.Fail("Entry Query Failed"); } } catch (Exception ex) { - Assert.Fail("Entry Query Failed ", ex.Message); + AssertLogger.Fail("Entry Query Failed ", ex.Message); } } @@ -333,8 +348,10 @@ public async System.Threading.Tasks.Task Test005_Should_Query_Entries() [DoNotParallelize] public async System.Threading.Tasks.Task Test006_Should_Delete_Entry() { + TestOutputLogger.LogContext("TestScenario", "DeleteEntry"); try { + TestOutputLogger.LogContext("ContentType", "single_page"); var singlePageEntry = new SinglePageEntry { Title = "Entry to Delete", @@ -343,15 +360,16 @@ public async System.Threading.Tasks.Task Test006_Should_Delete_Entry() }; ContentstackResponse createResponse = await _stack.ContentType("single_page").Entry().CreateAsync(singlePageEntry); - + if (createResponse.IsSuccessStatusCode) { var createObject = createResponse.OpenJObjectResponse(); var entryUid = createObject["entry"]["uid"]?.ToString(); - Assert.IsNotNull(entryUid, "Created entry should have UID"); + AssertLogger.IsNotNull(entryUid, "created_entry_uid"); + TestOutputLogger.LogContext("Entry", entryUid); ContentstackResponse deleteResponse = await _stack.ContentType("single_page").Entry(entryUid).DeleteAsync(); - + if (deleteResponse.IsSuccessStatusCode) { Console.WriteLine($"Successfully deleted entry: {entryUid}"); @@ -363,12 +381,12 @@ public async System.Threading.Tasks.Task Test006_Should_Delete_Entry() } else { - Assert.Fail("Entry Delete Async Failed"); + AssertLogger.Fail("Entry Delete Async Failed"); } } catch (Exception ex) { - Assert.Fail("Entry Delete Async Failed ", ex.Message); + AssertLogger.Fail("Entry Delete Async Failed ", ex.Message); } } diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack015_BulkOperationTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack015_BulkOperationTest.cs index 562239d..6d9e573 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack015_BulkOperationTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack015_BulkOperationTest.cs @@ -5,6 +5,7 @@ using System.Threading.Tasks; using Contentstack.Management.Core.Exceptions; using Contentstack.Management.Core.Models; +using Contentstack.Management.Core.Tests.Helpers; using Contentstack.Management.Core.Models.Fields; using Contentstack.Management.Core.Tests.Model; using Contentstack.Management.Core.Abstractions; @@ -43,9 +44,9 @@ public class Contentstack015_BulkOperationTest private static void FailWithError(string operation, Exception ex) { if (ex is ContentstackErrorException cex) - Assert.Fail($"{operation} failed. HTTP {(int)cex.StatusCode} ({cex.StatusCode}). ErrorCode: {cex.ErrorCode}. Message: {cex.ErrorMessage ?? cex.Message}"); + AssertLogger.Fail($"{operation} failed. HTTP {(int)cex.StatusCode} ({cex.StatusCode}). ErrorCode: {cex.ErrorCode}. Message: {cex.ErrorMessage ?? cex.Message}"); else - Assert.Fail($"{operation} failed: {ex.Message}"); + AssertLogger.Fail($"{operation} failed: {ex.Message}"); } /// @@ -54,9 +55,9 @@ private static void FailWithError(string operation, Exception ex) private static void AssertWorkflowCreated() { string reason = string.IsNullOrEmpty(_bulkTestWorkflowSetupError) ? "Check auth and stack permissions for workflow create." : _bulkTestWorkflowSetupError; - Assert.IsFalse(string.IsNullOrEmpty(_bulkTestWorkflowUid), "Workflow was not created in ClassInitialize. " + reason); - Assert.IsFalse(string.IsNullOrEmpty(_bulkTestWorkflowStage1Uid), "Workflow Stage 1 (New stage 1) was not set. " + reason); - Assert.IsFalse(string.IsNullOrEmpty(_bulkTestWorkflowStage2Uid), "Workflow Stage 2 (New stage 2) was not set. " + reason); + AssertLogger.IsFalse(string.IsNullOrEmpty(_bulkTestWorkflowUid), "Workflow was not created in ClassInitialize. " + reason, "WorkflowUid"); + AssertLogger.IsFalse(string.IsNullOrEmpty(_bulkTestWorkflowStage1Uid), "Workflow Stage 1 (New stage 1) was not set. " + reason, "WorkflowStage1Uid"); + AssertLogger.IsFalse(string.IsNullOrEmpty(_bulkTestWorkflowStage2Uid), "Workflow Stage 2 (New stage 2) was not set. " + reason, "WorkflowStage2Uid"); } /// @@ -137,6 +138,7 @@ public async Task Initialize() [DoNotParallelize] public void Test000a_Should_Create_Workflow_With_Two_Stages() { + TestOutputLogger.LogContext("TestScenario", "CreateWorkflowWithTwoStages"); try { const string workflowName = "workflow_test"; @@ -162,8 +164,8 @@ public void Test000a_Should_Create_Workflow_With_Two_Stages() _bulkTestWorkflowStage1Uid = existingStages[0]["uid"]?.ToString(); _bulkTestWorkflowStage2Uid = existingStages[1]["uid"]?.ToString(); _bulkTestWorkflowStageUid = _bulkTestWorkflowStage2Uid; - Assert.IsNotNull(_bulkTestWorkflowStage1Uid, "Stage 1 UID null in existing workflow."); - Assert.IsNotNull(_bulkTestWorkflowStage2Uid, "Stage 2 UID null in existing workflow."); + AssertLogger.IsNotNull(_bulkTestWorkflowStage1Uid, "Stage1Uid"); + AssertLogger.IsNotNull(_bulkTestWorkflowStage2Uid, "Stage2Uid"); return; // Already exists with stages – nothing more to do } } @@ -228,19 +230,20 @@ public void Test000a_Should_Create_Workflow_With_Two_Stages() string responseBody = null; try { responseBody = response.OpenResponse(); } catch { } - Assert.IsNotNull(response); - Assert.IsTrue(response.IsSuccessStatusCode, - $"Workflow create failed: HTTP {(int)response.StatusCode}.\n--- REQUEST BODY ---\n{sentJson}\n--- RESPONSE BODY ---\n{responseBody}"); + AssertLogger.IsNotNull(response, "workflowCreateResponse"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, + $"Workflow create failed: HTTP {(int)response.StatusCode}.\n--- REQUEST BODY ---\n{sentJson}\n--- RESPONSE BODY ---\n{responseBody}", "workflowCreateSuccess"); var responseJson = JObject.Parse(responseBody ?? "{}"); var workflowObj = responseJson["workflow"]; - Assert.IsNotNull(workflowObj, "Response missing 'workflow' key."); - Assert.IsFalse(string.IsNullOrEmpty(workflowObj["uid"]?.ToString()), "Workflow UID is empty."); + AssertLogger.IsNotNull(workflowObj, "workflowObj"); + AssertLogger.IsFalse(string.IsNullOrEmpty(workflowObj["uid"]?.ToString()), "Workflow UID is empty.", "workflowUid"); _bulkTestWorkflowUid = workflowObj["uid"].ToString(); + TestOutputLogger.LogContext("WorkflowUid", _bulkTestWorkflowUid); var stages = workflowObj["workflow_stages"] as JArray; - Assert.IsNotNull(stages, "workflow_stages missing from response."); - Assert.IsTrue(stages.Count >= 2, $"Expected at least 2 stages, got {stages.Count}."); + AssertLogger.IsNotNull(stages, "workflow_stages"); + AssertLogger.IsTrue(stages.Count >= 2, $"Expected at least 2 stages, got {stages.Count}.", "stagesCount"); _bulkTestWorkflowStage1Uid = stages[0]["uid"].ToString(); // New stage 1 _bulkTestWorkflowStage2Uid = stages[1]["uid"].ToString(); // New stage 2 _bulkTestWorkflowStageUid = _bulkTestWorkflowStage2Uid; @@ -255,14 +258,17 @@ public void Test000a_Should_Create_Workflow_With_Two_Stages() [DoNotParallelize] public void Test000b_Should_Create_Publishing_Rule_For_Workflow_Stage2() { + TestOutputLogger.LogContext("TestScenario", "CreatePublishingRuleForWorkflowStage2"); try { - Assert.IsFalse(string.IsNullOrEmpty(_bulkTestWorkflowUid), "Workflow UID not set. Run Test000a first."); - Assert.IsFalse(string.IsNullOrEmpty(_bulkTestWorkflowStage2Uid), "Workflow Stage 2 UID not set. Run Test000a first."); + AssertLogger.IsFalse(string.IsNullOrEmpty(_bulkTestWorkflowUid), "Workflow UID not set. Run Test000a first.", "WorkflowUid"); + AssertLogger.IsFalse(string.IsNullOrEmpty(_bulkTestWorkflowStage2Uid), "Workflow Stage 2 UID not set. Run Test000a first.", "WorkflowStage2Uid"); if (string.IsNullOrEmpty(_bulkTestEnvironmentUid)) EnsureBulkTestEnvironment(_stack); - Assert.IsFalse(string.IsNullOrEmpty(_bulkTestEnvironmentUid), "No environment. Run Test000c or ensure ClassInitialize ran (ensure environment failed)."); + AssertLogger.IsFalse(string.IsNullOrEmpty(_bulkTestEnvironmentUid), "No environment. Run Test000c or ensure ClassInitialize ran (ensure environment failed).", "EnvironmentUid"); + TestOutputLogger.LogContext("WorkflowUid", _bulkTestWorkflowUid ?? ""); + TestOutputLogger.LogContext("EnvironmentUid", _bulkTestEnvironmentUid ?? ""); // Find existing publish rule for this workflow + stage + environment (e.g. from a previous run) try @@ -309,14 +315,14 @@ public void Test000b_Should_Create_Publishing_Rule_For_Workflow_Stage2() string responseBody = null; try { responseBody = response.OpenResponse(); } catch { } - Assert.IsNotNull(response); - Assert.IsTrue(response.IsSuccessStatusCode, - $"Publish rule create failed: HTTP {(int)response.StatusCode}.\n--- REQUEST BODY ---\n{sentJson}\n--- RESPONSE BODY ---\n{responseBody}"); + AssertLogger.IsNotNull(response, "publishRuleResponse"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, + $"Publish rule create failed: HTTP {(int)response.StatusCode}.\n--- REQUEST BODY ---\n{sentJson}\n--- RESPONSE BODY ---\n{responseBody}", "publishRuleCreateSuccess"); var responseJson = JObject.Parse(responseBody ?? "{}"); var ruleObj = responseJson["publishing_rule"]; - Assert.IsNotNull(ruleObj, "Response missing 'publishing_rule' key."); - Assert.IsFalse(string.IsNullOrEmpty(ruleObj["uid"]?.ToString()), "Publishing rule UID is empty."); + AssertLogger.IsNotNull(ruleObj, "publishing_rule"); + AssertLogger.IsFalse(string.IsNullOrEmpty(ruleObj["uid"]?.ToString()), "Publishing rule UID is empty.", "publishRuleUid"); _bulkTestPublishRuleUid = ruleObj["uid"].ToString(); } @@ -331,6 +337,8 @@ public void Test000b_Should_Create_Publishing_Rule_For_Workflow_Stage2() [DoNotParallelize] public async Task Test001_Should_Create_Content_Type_With_Title_Field() { + TestOutputLogger.LogContext("TestScenario", "CreateContentTypeWithTitleField"); + TestOutputLogger.LogContext("ContentType", _contentTypeUid); try { try { await CreateTestEnvironment(); } catch (ContentstackErrorException) { /* optional */ } @@ -358,10 +366,10 @@ public async Task Test001_Should_Create_Content_Type_With_Title_Field() ContentstackResponse response = _stack.ContentType().Create(contentModelling); var responseJson = response.OpenJObjectResponse(); - Assert.IsNotNull(response); - Assert.IsTrue(response.IsSuccessStatusCode); - Assert.IsNotNull(responseJson["content_type"]); - Assert.AreEqual(_contentTypeUid, responseJson["content_type"]["uid"].ToString()); + AssertLogger.IsNotNull(response, "createContentTypeResponse"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, "contentTypeCreateSuccess"); + AssertLogger.IsNotNull(responseJson["content_type"], "content_type"); + AssertLogger.AreEqual(_contentTypeUid, responseJson["content_type"]["uid"].ToString(), "contentTypeUid"); } catch (Exception ex) { @@ -373,6 +381,8 @@ public async Task Test001_Should_Create_Content_Type_With_Title_Field() [DoNotParallelize] public async Task Test002_Should_Create_Five_Entries() { + TestOutputLogger.LogContext("TestScenario", "CreateFiveEntries"); + TestOutputLogger.LogContext("ContentType", _contentTypeUid); try { AssertWorkflowCreated(); @@ -416,10 +426,10 @@ public async Task Test002_Should_Create_Five_Entries() ContentstackResponse response = _stack.ContentType(_contentTypeUid).Entry().Create(entry); var responseJson = response.OpenJObjectResponse(); - Assert.IsNotNull(response); - Assert.IsTrue(response.IsSuccessStatusCode); - Assert.IsNotNull(responseJson["entry"]); - Assert.IsNotNull(responseJson["entry"]["uid"]); + AssertLogger.IsNotNull(response, "createEntryResponse"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, "entryCreateSuccess"); + AssertLogger.IsNotNull(responseJson["entry"], "entry"); + AssertLogger.IsNotNull(responseJson["entry"]["uid"], "entryUid"); int version = responseJson["entry"]["_version"] != null ? (int)responseJson["entry"]["_version"] : 1; _createdEntries.Add(new EntryInfo @@ -430,7 +440,7 @@ public async Task Test002_Should_Create_Five_Entries() }); } - Assert.AreEqual(5, _createdEntries.Count, "Should have created exactly 5 entries"); + AssertLogger.AreEqual(5, _createdEntries.Count, "Should have created exactly 5 entries", "createdEntriesCount"); await AssignEntriesToWorkflowStagesAsync(_createdEntries); } @@ -444,11 +454,13 @@ public async Task Test002_Should_Create_Five_Entries() [DoNotParallelize] public async Task Test003_Should_Perform_Bulk_Publish_Operation() { + TestOutputLogger.LogContext("TestScenario", "BulkPublishOperation"); + TestOutputLogger.LogContext("ContentType", _contentTypeUid); try { // Fetch existing entries from the content type List availableEntries = await FetchExistingEntries(); - Assert.IsTrue(availableEntries.Count > 0, "No entries available for bulk operation"); + AssertLogger.IsTrue(availableEntries.Count > 0, "No entries available for bulk operation", "availableEntriesCount"); // Get available environments or use empty list if none available List availableEnvironments = await GetAvailableEnvironments(); @@ -471,8 +483,8 @@ public async Task Test003_Should_Perform_Bulk_Publish_Operation() ContentstackResponse response = _stack.BulkOperation().Publish(publishDetails, skipWorkflowStage: true, approvals: true); var responseJson = response.OpenJObjectResponse(); - Assert.IsNotNull(response); - Assert.IsTrue(response.IsSuccessStatusCode); + AssertLogger.IsNotNull(response, "bulkPublishResponse"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, "bulkPublishSuccess"); } catch (ContentstackErrorException cex) when ((int)cex.StatusCode == 422) { @@ -489,11 +501,13 @@ public async Task Test003_Should_Perform_Bulk_Publish_Operation() [DoNotParallelize] public async Task Test004_Should_Perform_Bulk_Unpublish_Operation() { + TestOutputLogger.LogContext("TestScenario", "BulkUnpublishOperation"); + TestOutputLogger.LogContext("ContentType", _contentTypeUid); try { // Fetch existing entries from the content type List availableEntries = await FetchExistingEntries(); - Assert.IsTrue(availableEntries.Count > 0, "No entries available for bulk operation"); + AssertLogger.IsTrue(availableEntries.Count > 0, "No entries available for bulk operation", "availableEntriesCount"); // Get available environments List availableEnvironments = await GetAvailableEnvironments(); @@ -516,8 +530,8 @@ public async Task Test004_Should_Perform_Bulk_Unpublish_Operation() ContentstackResponse response = _stack.BulkOperation().Unpublish(unpublishDetails, skipWorkflowStage: true, approvals: true); var responseJson = response.OpenJObjectResponse(); - Assert.IsNotNull(response); - Assert.IsTrue(response.IsSuccessStatusCode); + AssertLogger.IsNotNull(response, "bulkUnpublishResponse"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, "bulkUnpublishSuccess"); } catch (ContentstackErrorException cex) when ((int)cex.StatusCode == 422) { @@ -534,14 +548,17 @@ public async Task Test004_Should_Perform_Bulk_Unpublish_Operation() [DoNotParallelize] public async Task Test003a_Should_Perform_Bulk_Publish_With_SkipWorkflowStage_And_Approvals() { + TestOutputLogger.LogContext("TestScenario", "BulkPublishWithSkipWorkflowStageAndApprovals"); + TestOutputLogger.LogContext("ContentType", _contentTypeUid); try { if (string.IsNullOrEmpty(_bulkTestEnvironmentUid)) await EnsureBulkTestEnvironmentAsync(_stack); - Assert.IsFalse(string.IsNullOrEmpty(_bulkTestEnvironmentUid), "No environment. Ensure Test000c or ClassInitialize ran."); + AssertLogger.IsFalse(string.IsNullOrEmpty(_bulkTestEnvironmentUid), "No environment. Ensure Test000c or ClassInitialize ran.", "EnvironmentUid"); + TestOutputLogger.LogContext("EnvironmentUid", _bulkTestEnvironmentUid ?? ""); List availableEntries = await FetchExistingEntries(); - Assert.IsTrue(availableEntries.Count > 0, "No entries available for bulk operation. Run Test002 first."); + AssertLogger.IsTrue(availableEntries.Count > 0, "No entries available for bulk operation. Run Test002 first.", "availableEntriesCount"); var publishDetails = new BulkPublishDetails { @@ -559,12 +576,12 @@ public async Task Test003a_Should_Perform_Bulk_Publish_With_SkipWorkflowStage_An ContentstackResponse response = _stack.BulkOperation().Publish(publishDetails, skipWorkflowStage: true, approvals: true); - Assert.IsNotNull(response); - Assert.IsTrue(response.IsSuccessStatusCode, $"Bulk publish failed with status {(int)response.StatusCode} ({response.StatusCode})."); - Assert.AreEqual(HttpStatusCode.OK, response.StatusCode, $"Expected 200 OK, got {(int)response.StatusCode}."); + AssertLogger.IsNotNull(response, "bulkPublishResponse"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Bulk publish failed with status {(int)response.StatusCode} ({response.StatusCode}).", "bulkPublishSuccess"); + AssertLogger.AreEqual(HttpStatusCode.OK, response.StatusCode, $"Expected 200 OK, got {(int)response.StatusCode}.", "statusCode"); var responseJson = response.OpenJObjectResponse(); - Assert.IsNotNull(responseJson); + AssertLogger.IsNotNull(responseJson, "responseJson"); } catch (Exception ex) { @@ -574,16 +591,16 @@ public async Task Test003a_Should_Perform_Bulk_Publish_With_SkipWorkflowStage_An ? JsonConvert.SerializeObject(cex.Errors, Formatting.Indented) : "(none)"; string failMessage = string.Format( - "Assert.Fail failed. Bulk publish with skipWorkflowStage and approvals failed. HTTP {0} ({1}). ErrorCode: {2}. Message: {3}. Errors: {4}", + "Bulk publish with skipWorkflowStage and approvals failed. HTTP {0} ({1}). ErrorCode: {2}. Message: {3}. Errors: {4}", (int)cex.StatusCode, cex.StatusCode, cex.ErrorCode, cex.ErrorMessage ?? cex.Message, errorsJson); if ((int)cex.StatusCode == 422 && cex.ErrorCode == 141) { Console.WriteLine(failMessage); - Assert.AreEqual(422, (int)cex.StatusCode, "Expected 422 Unprocessable Entity."); - Assert.AreEqual(141, cex.ErrorCode, "Expected ErrorCode 141 (entries do not satisfy publish rules)."); + AssertLogger.AreEqual(422, (int)cex.StatusCode, "Expected 422 Unprocessable Entity.", "statusCode"); + AssertLogger.AreEqual(141, cex.ErrorCode, "Expected ErrorCode 141 (entries do not satisfy publish rules).", "errorCode"); return; } - Assert.Fail(failMessage); + AssertLogger.Fail(failMessage); } else { @@ -596,14 +613,17 @@ public async Task Test003a_Should_Perform_Bulk_Publish_With_SkipWorkflowStage_An [DoNotParallelize] public async Task Test004a_Should_Perform_Bulk_UnPublish_With_SkipWorkflowStage_And_Approvals() { + TestOutputLogger.LogContext("TestScenario", "BulkUnpublishWithSkipWorkflowStageAndApprovals"); + TestOutputLogger.LogContext("ContentType", _contentTypeUid); try { if (string.IsNullOrEmpty(_bulkTestEnvironmentUid)) await EnsureBulkTestEnvironmentAsync(_stack); - Assert.IsFalse(string.IsNullOrEmpty(_bulkTestEnvironmentUid), "No environment. Ensure Test000c or ClassInitialize ran."); + AssertLogger.IsFalse(string.IsNullOrEmpty(_bulkTestEnvironmentUid), "No environment. Ensure Test000c or ClassInitialize ran.", "EnvironmentUid"); + TestOutputLogger.LogContext("EnvironmentUid", _bulkTestEnvironmentUid ?? ""); List availableEntries = await FetchExistingEntries(); - Assert.IsTrue(availableEntries.Count > 0, "No entries available for bulk operation. Run Test002 first."); + AssertLogger.IsTrue(availableEntries.Count > 0, "No entries available for bulk operation. Run Test002 first.", "availableEntriesCount"); var publishDetails = new BulkPublishDetails { @@ -621,12 +641,12 @@ public async Task Test004a_Should_Perform_Bulk_UnPublish_With_SkipWorkflowStage_ ContentstackResponse response = _stack.BulkOperation().Unpublish(publishDetails, skipWorkflowStage: false, approvals: true); - Assert.IsNotNull(response); - Assert.IsTrue(response.IsSuccessStatusCode, $"Bulk publish failed with status {(int)response.StatusCode} ({response.StatusCode})."); - Assert.AreEqual(HttpStatusCode.OK, response.StatusCode, $"Expected 200 OK, got {(int)response.StatusCode}."); + AssertLogger.IsNotNull(response, "bulkUnpublishResponse"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Bulk publish failed with status {(int)response.StatusCode} ({response.StatusCode}).", "bulkUnpublishSuccess"); + AssertLogger.AreEqual(HttpStatusCode.OK, response.StatusCode, $"Expected 200 OK, got {(int)response.StatusCode}.", "statusCode"); var responseJson = response.OpenJObjectResponse(); - Assert.IsNotNull(responseJson); + AssertLogger.IsNotNull(responseJson, "responseJson"); } catch (Exception ex) { @@ -636,16 +656,16 @@ public async Task Test004a_Should_Perform_Bulk_UnPublish_With_SkipWorkflowStage_ ? JsonConvert.SerializeObject(cex.Errors, Formatting.Indented) : "(none)"; string failMessage = string.Format( - "Assert.Fail failed. Bulk unpublish with skipWorkflowStage and approvals failed. HTTP {0} ({1}). ErrorCode: {2}. Message: {3}. Errors: {4}", + "Bulk unpublish with skipWorkflowStage and approvals failed. HTTP {0} ({1}). ErrorCode: {2}. Message: {3}. Errors: {4}", (int)cex.StatusCode, cex.StatusCode, cex.ErrorCode, cex.ErrorMessage ?? cex.Message, errorsJson); if ((int)cex.StatusCode == 422 && (cex.ErrorCode == 141 || cex.ErrorCode == 0)) { Console.WriteLine(failMessage); - Assert.AreEqual(422, (int)cex.StatusCode, "Expected 422 Unprocessable Entity."); - Assert.IsTrue(cex.ErrorCode == 141 || cex.ErrorCode == 0, "Expected ErrorCode 141 or 0 (entries do not satisfy publish rules)."); + AssertLogger.AreEqual(422, (int)cex.StatusCode, "Expected 422 Unprocessable Entity.", "statusCode"); + AssertLogger.IsTrue(cex.ErrorCode == 141 || cex.ErrorCode == 0, "Expected ErrorCode 141 or 0 (entries do not satisfy publish rules).", "errorCode"); return; } - Assert.Fail(failMessage); + AssertLogger.Fail(failMessage); } else { @@ -658,14 +678,16 @@ public async Task Test004a_Should_Perform_Bulk_UnPublish_With_SkipWorkflowStage_ [DoNotParallelize] public async Task Test003b_Should_Perform_Bulk_Publish_With_ApiVersion_3_2_With_SkipWorkflowStage_And_Approvals() { + TestOutputLogger.LogContext("TestScenario", "BulkPublishApiVersion32WithSkipWorkflowStageAndApprovals"); + TestOutputLogger.LogContext("ContentType", _contentTypeUid); try { if (string.IsNullOrEmpty(_bulkTestEnvironmentUid)) await EnsureBulkTestEnvironmentAsync(_stack); - Assert.IsFalse(string.IsNullOrEmpty(_bulkTestEnvironmentUid), "No environment. Ensure Test000c or ClassInitialize ran."); + AssertLogger.IsFalse(string.IsNullOrEmpty(_bulkTestEnvironmentUid), "No environment. Ensure Test000c or ClassInitialize ran.", "EnvironmentUid"); List availableEntries = await FetchExistingEntries(); - Assert.IsTrue(availableEntries.Count > 0, "No entries available for bulk operation. Run Test002 first."); + AssertLogger.IsTrue(availableEntries.Count > 0, "No entries available for bulk operation. Run Test002 first.", "availableEntriesCount"); var publishDetails = new BulkPublishDetails { @@ -683,12 +705,12 @@ public async Task Test003b_Should_Perform_Bulk_Publish_With_ApiVersion_3_2_With_ ContentstackResponse response = _stack.BulkOperation().Publish(publishDetails, skipWorkflowStage: true, approvals: true, apiVersion: "3.2"); - Assert.IsNotNull(response); - Assert.IsTrue(response.IsSuccessStatusCode, $"Bulk publish with api_version 3.2 failed with status {(int)response.StatusCode} ({response.StatusCode})."); - Assert.AreEqual(HttpStatusCode.OK, response.StatusCode, $"Expected 200 OK, got {(int)response.StatusCode}."); + AssertLogger.IsNotNull(response, "bulkPublishResponse"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Bulk publish with api_version 3.2 failed with status {(int)response.StatusCode} ({response.StatusCode}).", "bulkPublishSuccess"); + AssertLogger.AreEqual(HttpStatusCode.OK, response.StatusCode, $"Expected 200 OK, got {(int)response.StatusCode}.", "statusCode"); var responseJson = response.OpenJObjectResponse(); - Assert.IsNotNull(responseJson); + AssertLogger.IsNotNull(responseJson, "responseJson"); } catch (Exception ex) { @@ -700,14 +722,16 @@ public async Task Test003b_Should_Perform_Bulk_Publish_With_ApiVersion_3_2_With_ [DoNotParallelize] public async Task Test004b_Should_Perform_Bulk_UnPublish_With_ApiVersion_3_2_With_SkipWorkflowStage_And_Approvals() { + TestOutputLogger.LogContext("TestScenario", "BulkUnpublishApiVersion32WithSkipWorkflowStageAndApprovals"); + TestOutputLogger.LogContext("ContentType", _contentTypeUid); try { if (string.IsNullOrEmpty(_bulkTestEnvironmentUid)) await EnsureBulkTestEnvironmentAsync(_stack); - Assert.IsFalse(string.IsNullOrEmpty(_bulkTestEnvironmentUid), "No environment. Ensure Test000c or ClassInitialize ran."); + AssertLogger.IsFalse(string.IsNullOrEmpty(_bulkTestEnvironmentUid), "No environment. Ensure Test000c or ClassInitialize ran.", "EnvironmentUid"); List availableEntries = await FetchExistingEntries(); - Assert.IsTrue(availableEntries.Count > 0, "No entries available for bulk operation. Run Test002 first."); + AssertLogger.IsTrue(availableEntries.Count > 0, "No entries available for bulk operation. Run Test002 first.", "availableEntriesCount"); var publishDetails = new BulkPublishDetails { @@ -725,12 +749,12 @@ public async Task Test004b_Should_Perform_Bulk_UnPublish_With_ApiVersion_3_2_Wit ContentstackResponse response = _stack.BulkOperation().Unpublish(publishDetails, skipWorkflowStage: true, approvals: true, apiVersion: "3.2"); - Assert.IsNotNull(response); - Assert.IsTrue(response.IsSuccessStatusCode, $"Bulk unpublish with api_version 3.2 failed with status {(int)response.StatusCode} ({response.StatusCode})."); - Assert.AreEqual(HttpStatusCode.OK, response.StatusCode, $"Expected 200 OK, got {(int)response.StatusCode}."); + AssertLogger.IsNotNull(response, "bulkUnpublishResponse"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Bulk unpublish with api_version 3.2 failed with status {(int)response.StatusCode} ({response.StatusCode}).", "bulkUnpublishSuccess"); + AssertLogger.AreEqual(HttpStatusCode.OK, response.StatusCode, $"Expected 200 OK, got {(int)response.StatusCode}.", "statusCode"); var responseJson = response.OpenJObjectResponse(); - Assert.IsNotNull(responseJson); + AssertLogger.IsNotNull(responseJson, "responseJson"); } catch (Exception ex) { @@ -743,15 +767,19 @@ public async Task Test004b_Should_Perform_Bulk_UnPublish_With_ApiVersion_3_2_Wit [DoNotParallelize] public async Task Test005_Should_Perform_Bulk_Release_Operations() { + TestOutputLogger.LogContext("TestScenario", "BulkReleaseOperations"); + TestOutputLogger.LogContext("ContentType", _contentTypeUid); try { // Fetch existing entries from the content type List availableEntries = await FetchExistingEntries(); - Assert.IsTrue(availableEntries.Count > 0, "No entries available for bulk operation"); + AssertLogger.IsTrue(availableEntries.Count > 0, "No entries available for bulk operation", "availableEntriesCount"); // Fetch an available release string availableReleaseUid = await FetchAvailableRelease(); - Assert.IsFalse(string.IsNullOrEmpty(availableReleaseUid), "No release available for bulk operations"); + AssertLogger.IsFalse(string.IsNullOrEmpty(availableReleaseUid), "No release available for bulk operations", "availableReleaseUid"); + if (!string.IsNullOrEmpty(availableReleaseUid)) + TestOutputLogger.LogContext("ReleaseUid", availableReleaseUid); // First, add items to the release var addItemsData = new BulkAddItemsData @@ -785,11 +813,11 @@ public async Task Test005_Should_Perform_Bulk_Release_Operations() ContentstackResponse releaseResponse = _stack.BulkOperation().AddItems(releaseData, "2.0"); var releaseResponseJson = releaseResponse.OpenJObjectResponse(); - Assert.IsNotNull(releaseResponse); - Assert.IsTrue(releaseResponse.IsSuccessStatusCode); + AssertLogger.IsNotNull(releaseResponse, "releaseResponse"); + AssertLogger.IsTrue(releaseResponse.IsSuccessStatusCode, "releaseAddItemsSuccess"); // Check if job was created - Assert.IsNotNull(releaseResponseJson["job_id"]); + AssertLogger.IsNotNull(releaseResponseJson["job_id"], "job_id"); string jobId = releaseResponseJson["job_id"].ToString(); // Wait a bit and check job status @@ -806,15 +834,19 @@ public async Task Test005_Should_Perform_Bulk_Release_Operations() [DoNotParallelize] public async Task Test006_Should_Update_Items_In_Release() { + TestOutputLogger.LogContext("TestScenario", "UpdateItemsInRelease"); + TestOutputLogger.LogContext("ContentType", _contentTypeUid); try { // Fetch existing entries from the content type List availableEntries = await FetchExistingEntries(); - Assert.IsTrue(availableEntries.Count > 0, "No entries available for bulk operation"); + AssertLogger.IsTrue(availableEntries.Count > 0, "No entries available for bulk operation", "availableEntriesCount"); // Fetch an available release string availableReleaseUid = await FetchAvailableRelease(); - Assert.IsFalse(string.IsNullOrEmpty(availableReleaseUid), "No release available for bulk operations"); + AssertLogger.IsFalse(string.IsNullOrEmpty(availableReleaseUid), "No release available for bulk operations", "availableReleaseUid"); + if (!string.IsNullOrEmpty(availableReleaseUid)) + TestOutputLogger.LogContext("ReleaseUid", availableReleaseUid); // Alternative: Test bulk update items with version 2.0 for release items var releaseData = new BulkAddItemsData @@ -837,8 +869,8 @@ public async Task Test006_Should_Update_Items_In_Release() ContentstackResponse bulkUpdateResponse = _stack.BulkOperation().UpdateItems(releaseData, "2.0"); var bulkUpdateResponseJson = bulkUpdateResponse.OpenJObjectResponse(); - Assert.IsNotNull(bulkUpdateResponse); - Assert.IsTrue(bulkUpdateResponse.IsSuccessStatusCode); + AssertLogger.IsNotNull(bulkUpdateResponse, "bulkUpdateResponse"); + AssertLogger.IsTrue(bulkUpdateResponse.IsSuccessStatusCode, "bulkUpdateSuccess"); if (bulkUpdateResponseJson["job_id"] != null) { @@ -859,10 +891,12 @@ public async Task Test006_Should_Update_Items_In_Release() [DoNotParallelize] public async Task Test007_Should_Perform_Bulk_Delete_Operation() { + TestOutputLogger.LogContext("TestScenario", "BulkDeleteOperation"); + TestOutputLogger.LogContext("ContentType", _contentTypeUid); try { List availableEntries = await FetchExistingEntries(); - Assert.IsTrue(availableEntries.Count > 0, "No entries available for bulk operation"); + AssertLogger.IsTrue(availableEntries.Count > 0, "No entries available for bulk operation", "availableEntriesCount"); var deleteDetails = new BulkDeleteDetails { @@ -875,8 +909,8 @@ public async Task Test007_Should_Perform_Bulk_Delete_Operation() }; // Skip actual delete so entries remain for UI verification. SDK usage is validated by building the payload. - Assert.IsNotNull(deleteDetails); - Assert.IsTrue(deleteDetails.Entries.Count > 0); + AssertLogger.IsNotNull(deleteDetails, "deleteDetails"); + AssertLogger.IsTrue(deleteDetails.Entries.Count > 0, "deleteDetailsEntriesCount"); } catch (Exception ex) { @@ -889,11 +923,13 @@ public async Task Test007_Should_Perform_Bulk_Delete_Operation() [DoNotParallelize] public async Task Test008_Should_Perform_Bulk_Workflow_Operations() { + TestOutputLogger.LogContext("TestScenario", "BulkWorkflowOperations"); + TestOutputLogger.LogContext("ContentType", _contentTypeUid); try { // Fetch existing entries from the content type List availableEntries = await FetchExistingEntries(); - Assert.IsTrue(availableEntries.Count > 0, "No entries available for bulk operation"); + AssertLogger.IsTrue(availableEntries.Count > 0, "No entries available for bulk operation", "availableEntriesCount"); // Test bulk workflow update operations (use real stage UID from EnsureBulkTestWorkflowAndPublishingRuleAsync when available) string workflowStageUid = !string.IsNullOrEmpty(_bulkTestWorkflowStageUid) ? _bulkTestWorkflowStageUid : "workflow_stage_uid"; @@ -917,9 +953,9 @@ public async Task Test008_Should_Perform_Bulk_Workflow_Operations() ContentstackResponse response = _stack.BulkOperation().Update(workflowUpdateBody); var responseJson = response.OpenJObjectResponse(); - Assert.IsNotNull(response); - Assert.IsTrue(response.IsSuccessStatusCode); - Assert.IsNotNull(responseJson["job_id"]); + AssertLogger.IsNotNull(response, "bulkWorkflowResponse"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, "bulkWorkflowSuccess"); + AssertLogger.IsNotNull(responseJson["job_id"], "job_id"); string jobId = responseJson["job_id"].ToString(); await CheckBulkJobStatus(jobId); } @@ -937,6 +973,8 @@ public async Task Test008_Should_Perform_Bulk_Workflow_Operations() [DoNotParallelize] public void Test009_Should_Cleanup_Test_Resources() { + TestOutputLogger.LogContext("TestScenario", "CleanupTestResources"); + TestOutputLogger.LogContext("ContentType", _contentTypeUid); try { // 1. Delete all entries created during the test run @@ -1018,8 +1056,8 @@ private async Task CheckBulkJobStatus(string jobId, string bulkVersion = null) ContentstackResponse statusResponse = await _stack.BulkOperation().JobStatusAsync(jobId, bulkVersion); var statusJson = statusResponse.OpenJObjectResponse(); - Assert.IsNotNull(statusResponse); - Assert.IsTrue(statusResponse.IsSuccessStatusCode); + AssertLogger.IsNotNull(statusResponse, "jobStatusResponse"); + AssertLogger.IsTrue(statusResponse.IsSuccessStatusCode, "jobStatusSuccess"); } catch (Exception e) { diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack016_DeliveryTokenTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack016_DeliveryTokenTest.cs index ca4e6d4..9af15ba 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack016_DeliveryTokenTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack016_DeliveryTokenTest.cs @@ -3,6 +3,7 @@ using System.Threading.Tasks; using Contentstack.Management.Core.Models; using Contentstack.Management.Core.Models.Token; +using Contentstack.Management.Core.Tests.Helpers; using Contentstack.Management.Core.Tests.Model; using Contentstack.Management.Core.Queryable; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -30,7 +31,7 @@ public async Task Initialize() ContentstackResponse loginResponse = Contentstack.Client.Login(Contentstack.Credential); if (!loginResponse.IsSuccessStatusCode) { - Assert.Fail($"Login failed: {loginResponse.OpenResponse()}"); + AssertLogger.Fail($"Login failed: {loginResponse.OpenResponse()}"); } } catch (Exception loginEx) @@ -80,7 +81,7 @@ public async Task Initialize() } catch (Exception ex) { - Assert.Fail($"Initialize failed: {ex.Message}"); + AssertLogger.Fail($"Initialize failed: {ex.Message}"); } } @@ -88,28 +89,30 @@ public async Task Initialize() [DoNotParallelize] public async Task Test001_Should_Create_Delivery_Token() { + TestOutputLogger.LogContext("TestScenario", "Test001_Should_Create_Delivery_Token"); try { ContentstackResponse response = _stack.DeliveryToken().Create(_testTokenModel); - Assert.IsTrue(response.IsSuccessStatusCode, $"Create delivery token failed"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, "Create delivery token failed", "CreateDeliveryTokenSuccess"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["token"], "Response should contain token object"); + AssertLogger.IsNotNull(responseObject["token"], "Response should contain token object"); var tokenData = responseObject["token"] as JObject; - Assert.IsNotNull(tokenData["uid"], "Token should have UID"); - Assert.AreEqual(_testTokenModel.Name, tokenData["name"]?.ToString(), "Token name should match"); - Assert.AreEqual(_testTokenModel.Description, tokenData["description"]?.ToString(), "Token description should match"); + AssertLogger.IsNotNull(tokenData["uid"], "Token should have UID"); + AssertLogger.AreEqual(_testTokenModel.Name, tokenData["name"]?.ToString(), "Token name should match", "TokenName"); + AssertLogger.AreEqual(_testTokenModel.Description, tokenData["description"]?.ToString(), "Token description should match", "TokenDescription"); _deliveryTokenUid = tokenData["uid"]?.ToString(); - Assert.IsNotNull(_deliveryTokenUid, "Delivery token UID should not be null"); + AssertLogger.IsNotNull(_deliveryTokenUid, "Delivery token UID should not be null"); + TestOutputLogger.LogContext("DeliveryTokenUid", _deliveryTokenUid ?? ""); Console.WriteLine($"Created delivery token with UID: {_deliveryTokenUid}"); } catch (Exception ex) { - Assert.Fail("Create delivery token test failed", ex.Message); + AssertLogger.Fail("Create delivery token test failed", ex.Message); } } @@ -117,6 +120,7 @@ public async Task Test001_Should_Create_Delivery_Token() [DoNotParallelize] public async Task Test002_Should_Create_Delivery_Token_Async() { + TestOutputLogger.LogContext("TestScenario", "Test002_Should_Create_Delivery_Token_Async"); try { var asyncTokenModel = new DeliveryTokenModel @@ -148,16 +152,17 @@ public async Task Test002_Should_Create_Delivery_Token_Async() ContentstackResponse response = await _stack.DeliveryToken().CreateAsync(asyncTokenModel); - Assert.IsTrue(response.IsSuccessStatusCode, $"Async create delivery token failed"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, "Async create delivery token failed", "AsyncCreateSuccess"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["token"], "Response should contain token object"); + AssertLogger.IsNotNull(responseObject["token"], "Response should contain token object"); var tokenData = responseObject["token"] as JObject; - Assert.IsNotNull(tokenData["uid"], "Token should have UID"); - Assert.AreEqual(asyncTokenModel.Name, tokenData["name"]?.ToString(), "Token name should match"); + AssertLogger.IsNotNull(tokenData["uid"], "Token should have UID"); + AssertLogger.AreEqual(asyncTokenModel.Name, tokenData["name"]?.ToString(), "Token name should match", "AsyncTokenName"); string asyncTokenUid = tokenData["uid"]?.ToString(); + TestOutputLogger.LogContext("AsyncCreatedTokenUid", asyncTokenUid ?? ""); if (!string.IsNullOrEmpty(asyncTokenUid)) { @@ -167,7 +172,7 @@ public async Task Test002_Should_Create_Delivery_Token_Async() } catch (Exception ex) { - Assert.Fail("Async create delivery token test failed", ex.Message); + AssertLogger.Fail("Async create delivery token test failed", ex.Message); } } @@ -175,6 +180,7 @@ public async Task Test002_Should_Create_Delivery_Token_Async() [DoNotParallelize] public async Task Test003_Should_Fetch_Delivery_Token() { + TestOutputLogger.LogContext("TestScenario", "Test003_Should_Fetch_Delivery_Token"); try { if (string.IsNullOrEmpty(_deliveryTokenUid)) @@ -182,22 +188,23 @@ public async Task Test003_Should_Fetch_Delivery_Token() await Test001_Should_Create_Delivery_Token(); } + TestOutputLogger.LogContext("DeliveryTokenUid", _deliveryTokenUid ?? ""); ContentstackResponse response = _stack.DeliveryToken(_deliveryTokenUid).Fetch(); - Assert.IsTrue(response.IsSuccessStatusCode, $"Fetch delivery token failed"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, "Fetch delivery token failed", "FetchSuccess"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["token"], "Response should contain token object"); + AssertLogger.IsNotNull(responseObject["token"], "Response should contain token object"); var tokenData = responseObject["token"] as JObject; - Assert.AreEqual(_deliveryTokenUid, tokenData["uid"]?.ToString(), "Token UID should match"); - Assert.AreEqual(_testTokenModel.Name, tokenData["name"]?.ToString(), "Token name should match"); - Assert.IsNotNull(tokenData["token"], "Token should have access token"); + AssertLogger.AreEqual(_deliveryTokenUid, tokenData["uid"]?.ToString(), "Token UID should match", "TokenUid"); + AssertLogger.AreEqual(_testTokenModel.Name, tokenData["name"]?.ToString(), "Token name should match", "TokenName"); + AssertLogger.IsNotNull(tokenData["token"], "Token should have access token"); } catch (Exception ex) { - Assert.Fail($"Fetch delivery token test failed: {ex.Message}"); + AssertLogger.Fail($"Fetch delivery token test failed: {ex.Message}"); } } @@ -205,6 +212,7 @@ public async Task Test003_Should_Fetch_Delivery_Token() [DoNotParallelize] public async Task Test004_Should_Fetch_Delivery_Token_Async() { + TestOutputLogger.LogContext("TestScenario", "Test004_Should_Fetch_Delivery_Token_Async"); try { if (string.IsNullOrEmpty(_deliveryTokenUid)) @@ -212,20 +220,21 @@ public async Task Test004_Should_Fetch_Delivery_Token_Async() await Test001_Should_Create_Delivery_Token(); } + TestOutputLogger.LogContext("DeliveryTokenUid", _deliveryTokenUid ?? ""); ContentstackResponse response = await _stack.DeliveryToken(_deliveryTokenUid).FetchAsync(); - Assert.IsTrue(response.IsSuccessStatusCode, $"Async fetch delivery token failed"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, "Async fetch delivery token failed", "AsyncFetchSuccess"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["token"], "Response should contain token object"); + AssertLogger.IsNotNull(responseObject["token"], "Response should contain token object"); var tokenData = responseObject["token"] as JObject; - Assert.AreEqual(_deliveryTokenUid, tokenData["uid"]?.ToString(), "Token UID should match"); - Assert.IsNotNull(tokenData["token"], "Token should have access token"); + AssertLogger.AreEqual(_deliveryTokenUid, tokenData["uid"]?.ToString(), "Token UID should match", "TokenUid"); + AssertLogger.IsNotNull(tokenData["token"], "Token should have access token"); } catch (Exception ex) { - Assert.Fail($"Async fetch delivery token test failed: {ex.Message}"); + AssertLogger.Fail($"Async fetch delivery token test failed: {ex.Message}"); } } @@ -233,6 +242,7 @@ public async Task Test004_Should_Fetch_Delivery_Token_Async() [DoNotParallelize] public async Task Test005_Should_Update_Delivery_Token() { + TestOutputLogger.LogContext("TestScenario", "Test005_Should_Update_Delivery_Token"); try { if (string.IsNullOrEmpty(_deliveryTokenUid)) @@ -240,6 +250,7 @@ public async Task Test005_Should_Update_Delivery_Token() await Test001_Should_Create_Delivery_Token(); } + TestOutputLogger.LogContext("DeliveryTokenUid", _deliveryTokenUid ?? ""); var updateModel = new DeliveryTokenModel { Name = "Updated Test Delivery Token", @@ -269,19 +280,19 @@ public async Task Test005_Should_Update_Delivery_Token() ContentstackResponse response = _stack.DeliveryToken(_deliveryTokenUid).Update(updateModel); - Assert.IsTrue(response.IsSuccessStatusCode, $"Update delivery token failed"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, "Update delivery token failed", "UpdateSuccess"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["token"], "Response should contain token object"); + AssertLogger.IsNotNull(responseObject["token"], "Response should contain token object"); var tokenData = responseObject["token"] as JObject; - Assert.AreEqual(_deliveryTokenUid, tokenData["uid"]?.ToString(), "Token UID should match"); - Assert.AreEqual(updateModel.Name, tokenData["name"]?.ToString(), "Updated token name should match"); - Assert.AreEqual(updateModel.Description, tokenData["description"]?.ToString(), "Updated token description should match"); + AssertLogger.AreEqual(_deliveryTokenUid, tokenData["uid"]?.ToString(), "Token UID should match", "TokenUid"); + AssertLogger.AreEqual(updateModel.Name, tokenData["name"]?.ToString(), "Updated token name should match", "UpdatedTokenName"); + AssertLogger.AreEqual(updateModel.Description, tokenData["description"]?.ToString(), "Updated token description should match", "UpdatedTokenDescription"); } catch (Exception ex) { - Assert.Fail($"Update delivery token test failed: {ex.Message}"); + AssertLogger.Fail($"Update delivery token test failed: {ex.Message}"); } } @@ -289,6 +300,7 @@ public async Task Test005_Should_Update_Delivery_Token() [DoNotParallelize] public async Task Test006_Should_Update_Delivery_Token_Async() { + TestOutputLogger.LogContext("TestScenario", "Test006_Should_Update_Delivery_Token_Async"); try { if (string.IsNullOrEmpty(_deliveryTokenUid)) @@ -296,6 +308,7 @@ public async Task Test006_Should_Update_Delivery_Token_Async() await Test001_Should_Create_Delivery_Token(); } + TestOutputLogger.LogContext("DeliveryTokenUid", _deliveryTokenUid ?? ""); var updateModel = new DeliveryTokenModel { Name = "Async Updated Test Delivery Token", @@ -325,19 +338,19 @@ public async Task Test006_Should_Update_Delivery_Token_Async() ContentstackResponse response = await _stack.DeliveryToken(_deliveryTokenUid).UpdateAsync(updateModel); - Assert.IsTrue(response.IsSuccessStatusCode, $"Async update delivery token failed"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, "Async update delivery token failed", "AsyncUpdateSuccess"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["token"], "Response should contain token object"); + AssertLogger.IsNotNull(responseObject["token"], "Response should contain token object"); var tokenData = responseObject["token"] as JObject; - Assert.AreEqual(_deliveryTokenUid, tokenData["uid"]?.ToString(), "Token UID should match"); - Assert.AreEqual(updateModel.Name, tokenData["name"]?.ToString(), "Updated token name should match"); + AssertLogger.AreEqual(_deliveryTokenUid, tokenData["uid"]?.ToString(), "Token UID should match", "TokenUid"); + AssertLogger.AreEqual(updateModel.Name, tokenData["name"]?.ToString(), "Updated token name should match", "UpdatedTokenName"); } catch (Exception ex) { - Assert.Fail($"Async update delivery token test failed: {ex.Message}"); + AssertLogger.Fail($"Async update delivery token test failed: {ex.Message}"); } } @@ -345,6 +358,7 @@ public async Task Test006_Should_Update_Delivery_Token_Async() [DoNotParallelize] public async Task Test007_Should_Query_All_Delivery_Tokens() { + TestOutputLogger.LogContext("TestScenario", "Test007_Should_Query_All_Delivery_Tokens"); try { if (string.IsNullOrEmpty(_deliveryTokenUid)) @@ -352,15 +366,16 @@ public async Task Test007_Should_Query_All_Delivery_Tokens() await Test001_Should_Create_Delivery_Token(); } + TestOutputLogger.LogContext("DeliveryTokenUid", _deliveryTokenUid ?? ""); ContentstackResponse response = _stack.DeliveryToken().Query().Find(); - Assert.IsTrue(response.IsSuccessStatusCode, $"Query delivery tokens failed"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, "Query delivery tokens failed", "QuerySuccess"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["tokens"], "Response should contain tokens array"); + AssertLogger.IsNotNull(responseObject["tokens"], "Response should contain tokens array"); var tokens = responseObject["tokens"] as JArray; - Assert.IsTrue(tokens.Count > 0, "Should have at least one delivery token"); + AssertLogger.IsTrue(tokens.Count > 0, "Should have at least one delivery token", "TokensCountGreaterThanZero"); bool foundTestToken = false; foreach (var token in tokens) @@ -372,12 +387,12 @@ public async Task Test007_Should_Query_All_Delivery_Tokens() } } - Assert.IsTrue(foundTestToken, "Test token should be found in query results"); + AssertLogger.IsTrue(foundTestToken, "Test token should be found in query results", "TestTokenFoundInQuery"); } catch (Exception ex) { - Assert.Fail($"Query delivery tokens test failed: {ex.Message}"); + AssertLogger.Fail($"Query delivery tokens test failed: {ex.Message}"); } } @@ -385,6 +400,7 @@ public async Task Test007_Should_Query_All_Delivery_Tokens() [DoNotParallelize] public async Task Test008_Should_Query_Delivery_Tokens_With_Parameters() { + TestOutputLogger.LogContext("TestScenario", "Test008_Should_Query_Delivery_Tokens_With_Parameters"); try { if (string.IsNullOrEmpty(_deliveryTokenUid)) @@ -392,24 +408,25 @@ public async Task Test008_Should_Query_Delivery_Tokens_With_Parameters() await Test001_Should_Create_Delivery_Token(); } + TestOutputLogger.LogContext("DeliveryTokenUid", _deliveryTokenUid ?? ""); var parameters = new ParameterCollection(); parameters.Add("limit", "5"); parameters.Add("skip", "0"); ContentstackResponse response = _stack.DeliveryToken().Query().Limit(5).Skip(0).Find(); - Assert.IsTrue(response.IsSuccessStatusCode, $"Query delivery tokens with parameters failed"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, "Query delivery tokens with parameters failed", "QueryWithParamsSuccess"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["tokens"], "Response should contain tokens array"); + AssertLogger.IsNotNull(responseObject["tokens"], "Response should contain tokens array"); var tokens = responseObject["tokens"] as JArray; - Assert.IsTrue(tokens.Count <= 5, "Should respect limit parameter"); + AssertLogger.IsTrue(tokens.Count <= 5, "Should respect limit parameter", "RespectLimitParam"); } catch (Exception ex) { - Assert.Fail($"Query delivery tokens with parameters test failed: {ex.Message}"); + AssertLogger.Fail($"Query delivery tokens with parameters test failed: {ex.Message}"); } } @@ -417,10 +434,12 @@ public async Task Test008_Should_Query_Delivery_Tokens_With_Parameters() [DoNotParallelize] public async Task Test009_Should_Create_Token_With_Multiple_Environments() { + TestOutputLogger.LogContext("TestScenario", "Test009_Should_Create_Token_With_Multiple_Environments"); try { string secondEnvironmentUid = "test_delivery_environment_2"; await CreateTestEnvironment(secondEnvironmentUid); + TestOutputLogger.LogContext("SecondEnvironmentUid", secondEnvironmentUid); var multiEnvTokenModel = new DeliveryTokenModel { @@ -451,17 +470,18 @@ public async Task Test009_Should_Create_Token_With_Multiple_Environments() ContentstackResponse response = _stack.DeliveryToken().Create(multiEnvTokenModel); - Assert.IsTrue(response.IsSuccessStatusCode, $"Create multi-environment delivery token failed"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, "Create multi-environment delivery token failed", "MultiEnvCreateSuccess"); var responseObject = response.OpenJObjectResponse(); var tokenData = responseObject["token"] as JObject; - Assert.IsNotNull(tokenData["uid"], "Token should have UID"); + AssertLogger.IsNotNull(tokenData["uid"], "Token should have UID"); string multiEnvTokenUid = tokenData["uid"]?.ToString(); + TestOutputLogger.LogContext("MultiEnvTokenUid", multiEnvTokenUid ?? ""); var scope = tokenData["scope"] as JArray; - Assert.IsNotNull(scope, "Token should have scope"); - Assert.IsTrue(scope.Count > 0, "Token should have at least one scope"); + AssertLogger.IsNotNull(scope, "Token should have scope"); + AssertLogger.IsTrue(scope.Count > 0, "Token should have at least one scope", "ScopeCount"); if (!string.IsNullOrEmpty(multiEnvTokenUid)) { @@ -473,7 +493,7 @@ public async Task Test009_Should_Create_Token_With_Multiple_Environments() } catch (Exception ex) { - Assert.Fail($"Multi-environment delivery token test failed: {ex.Message}"); + AssertLogger.Fail($"Multi-environment delivery token test failed: {ex.Message}"); } } @@ -481,6 +501,7 @@ public async Task Test009_Should_Create_Token_With_Multiple_Environments() [DoNotParallelize] public async Task Test011_Should_Create_Token_With_Complex_Scope() { + TestOutputLogger.LogContext("TestScenario", "Test011_Should_Create_Token_With_Complex_Scope"); try { var complexScopeTokenModel = new DeliveryTokenModel @@ -512,18 +533,19 @@ public async Task Test011_Should_Create_Token_With_Complex_Scope() ContentstackResponse response = _stack.DeliveryToken().Create(complexScopeTokenModel); - Assert.IsTrue(response.IsSuccessStatusCode, $"Create complex scope delivery token failed"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, "Create complex scope delivery token failed", "ComplexScopeCreateSuccess"); var responseObject = response.OpenJObjectResponse(); var tokenData = responseObject["token"] as JObject; - Assert.IsNotNull(tokenData["uid"], "Token should have UID"); + AssertLogger.IsNotNull(tokenData["uid"], "Token should have UID"); string complexScopeTokenUid = tokenData["uid"]?.ToString(); + TestOutputLogger.LogContext("ComplexScopeTokenUid", complexScopeTokenUid ?? ""); // Verify multiple scopes var scope = tokenData["scope"] as JArray; - Assert.IsNotNull(scope, "Token should have scope"); - Assert.IsTrue(scope.Count >= 2, "Token should have multiple scopes"); + AssertLogger.IsNotNull(scope, "Token should have scope"); + AssertLogger.IsTrue(scope.Count >= 2, "Token should have multiple scopes", "ScopeCountMultiple"); // Clean up the complex scope token if (!string.IsNullOrEmpty(complexScopeTokenUid)) @@ -534,7 +556,7 @@ public async Task Test011_Should_Create_Token_With_Complex_Scope() } catch (Exception ex) { - Assert.Fail($"Complex scope delivery token test failed: {ex.Message}"); + AssertLogger.Fail($"Complex scope delivery token test failed: {ex.Message}"); } } @@ -542,6 +564,7 @@ public async Task Test011_Should_Create_Token_With_Complex_Scope() [DoNotParallelize] public async Task Test012_Should_Create_Token_With_UI_Structure() { + TestOutputLogger.LogContext("TestScenario", "Test012_Should_Create_Token_With_UI_Structure"); try { // Test with the exact structure from UI as provided by user @@ -574,19 +597,20 @@ public async Task Test012_Should_Create_Token_With_UI_Structure() ContentstackResponse response = _stack.DeliveryToken().Create(uiStructureTokenModel); - Assert.IsTrue(response.IsSuccessStatusCode, $"Create UI structure delivery token failed"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, "Create UI structure delivery token failed", "UIStructureCreateSuccess"); var responseObject = response.OpenJObjectResponse(); var tokenData = responseObject["token"] as JObject; - Assert.IsNotNull(tokenData["uid"], "Token should have UID"); - Assert.AreEqual(uiStructureTokenModel.Name, tokenData["name"]?.ToString(), "Token name should match"); + AssertLogger.IsNotNull(tokenData["uid"], "Token should have UID"); + AssertLogger.AreEqual(uiStructureTokenModel.Name, tokenData["name"]?.ToString(), "Token name should match", "UITokenName"); // Verify the scope structure matches UI format var scope = tokenData["scope"] as JArray; - Assert.IsNotNull(scope, "Token should have scope"); - Assert.IsTrue(scope.Count == 2, "Token should have 2 scope modules (environment and branch)"); + AssertLogger.IsNotNull(scope, "Token should have scope"); + AssertLogger.IsTrue(scope.Count == 2, "Token should have 2 scope modules (environment and branch)", "UIScopeCount"); string uiTokenUid = tokenData["uid"]?.ToString(); + TestOutputLogger.LogContext("UITokenUid", uiTokenUid ?? ""); // Clean up the UI structure token if (!string.IsNullOrEmpty(uiTokenUid)) @@ -597,7 +621,7 @@ public async Task Test012_Should_Create_Token_With_UI_Structure() } catch (Exception ex) { - Assert.Fail($"UI structure delivery token test failed: {ex.Message}"); + AssertLogger.Fail($"UI structure delivery token test failed: {ex.Message}"); } } @@ -605,6 +629,7 @@ public async Task Test012_Should_Create_Token_With_UI_Structure() [DoNotParallelize] public async Task Test015_Should_Query_Delivery_Tokens_Async() { + TestOutputLogger.LogContext("TestScenario", "Test015_Should_Query_Delivery_Tokens_Async"); try { // Ensure we have at least one token @@ -613,15 +638,16 @@ public async Task Test015_Should_Query_Delivery_Tokens_Async() await Test001_Should_Create_Delivery_Token(); } + TestOutputLogger.LogContext("DeliveryTokenUid", _deliveryTokenUid ?? ""); ContentstackResponse response = await _stack.DeliveryToken().Query().FindAsync(); - Assert.IsTrue(response.IsSuccessStatusCode, $"Async query delivery tokens failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Async query delivery tokens failed: {response.OpenResponse()}", "AsyncQuerySuccess"); var responseObject = response.OpenJObjectResponse(); - Assert.IsNotNull(responseObject["tokens"], "Response should contain tokens array"); + AssertLogger.IsNotNull(responseObject["tokens"], "Response should contain tokens array"); var tokens = responseObject["tokens"] as JArray; - Assert.IsTrue(tokens.Count > 0, "Should have at least one delivery token"); + AssertLogger.IsTrue(tokens.Count > 0, "Should have at least one delivery token", "AsyncTokensCount"); bool foundTestToken = false; foreach (var token in tokens) @@ -633,12 +659,12 @@ public async Task Test015_Should_Query_Delivery_Tokens_Async() } } - Assert.IsTrue(foundTestToken, "Test token should be found in async query results"); + AssertLogger.IsTrue(foundTestToken, "Test token should be found in async query results", "TestTokenFoundInAsyncQuery"); } catch (Exception ex) { - Assert.Fail($"Async query delivery tokens test failed: {ex.Message}"); + AssertLogger.Fail($"Async query delivery tokens test failed: {ex.Message}"); } } @@ -646,6 +672,7 @@ public async Task Test015_Should_Query_Delivery_Tokens_Async() [DoNotParallelize] public async Task Test016_Should_Create_Token_With_Empty_Description() { + TestOutputLogger.LogContext("TestScenario", "Test016_Should_Create_Token_With_Empty_Description"); try { var emptyDescTokenModel = new DeliveryTokenModel @@ -677,14 +704,15 @@ public async Task Test016_Should_Create_Token_With_Empty_Description() ContentstackResponse response = _stack.DeliveryToken().Create(emptyDescTokenModel); - Assert.IsTrue(response.IsSuccessStatusCode, $"Create token with empty description failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Create token with empty description failed: {response.OpenResponse()}", "EmptyDescCreateSuccess"); var responseObject = response.OpenJObjectResponse(); var tokenData = responseObject["token"] as JObject; - Assert.IsNotNull(tokenData["uid"], "Token should have UID"); - Assert.AreEqual(emptyDescTokenModel.Name, tokenData["name"]?.ToString(), "Token name should match"); + AssertLogger.IsNotNull(tokenData["uid"], "Token should have UID"); + AssertLogger.AreEqual(emptyDescTokenModel.Name, tokenData["name"]?.ToString(), "Token name should match", "EmptyDescTokenName"); string emptyDescTokenUid = tokenData["uid"]?.ToString(); + TestOutputLogger.LogContext("EmptyDescTokenUid", emptyDescTokenUid ?? ""); // Clean up the empty description token if (!string.IsNullOrEmpty(emptyDescTokenUid)) @@ -695,7 +723,7 @@ public async Task Test016_Should_Create_Token_With_Empty_Description() } catch (Exception ex) { - Assert.Fail($"Empty description token test failed: {ex.Message}"); + AssertLogger.Fail($"Empty description token test failed: {ex.Message}"); } } @@ -703,6 +731,7 @@ public async Task Test016_Should_Create_Token_With_Empty_Description() [DoNotParallelize] public async Task Test017_Should_Validate_Environment_Scope_Requirement() { + TestOutputLogger.LogContext("TestScenario", "Test017_Should_Validate_Environment_Scope_Requirement"); try { // Test that environment-only scope is rejected by API @@ -737,15 +766,15 @@ public async Task Test017_Should_Validate_Environment_Scope_Requirement() } // If no exception was thrown, check the response status - Assert.IsFalse(response.IsSuccessStatusCode, "Environment-only token should be rejected by API"); - Assert.IsTrue(response.StatusCode == System.Net.HttpStatusCode.BadRequest || + AssertLogger.IsFalse(response.IsSuccessStatusCode, "Environment-only token should be rejected by API", "EnvOnlyRejected"); + AssertLogger.IsTrue(response.StatusCode == System.Net.HttpStatusCode.BadRequest || response.StatusCode == System.Net.HttpStatusCode.UnprocessableEntity, - $"Expected 400 or 422 for environment-only token, got {response.StatusCode}"); + $"Expected 400 or 422 for environment-only token, got {response.StatusCode}", "Expected400Or422"); } catch (Exception ex) { - Assert.Fail($"Environment scope validation test failed: {ex.Message}"); + AssertLogger.Fail($"Environment scope validation test failed: {ex.Message}"); } } @@ -753,6 +782,7 @@ public async Task Test017_Should_Validate_Environment_Scope_Requirement() [DoNotParallelize] public async Task Test018_Should_Validate_Branch_Scope_Requirement() { + TestOutputLogger.LogContext("TestScenario", "Test018_Should_Validate_Branch_Scope_Requirement"); try { // Test that branch-only scope is rejected by API @@ -787,15 +817,15 @@ public async Task Test018_Should_Validate_Branch_Scope_Requirement() } // If no exception was thrown, check the response status - Assert.IsFalse(response.IsSuccessStatusCode, "Branch-only token should be rejected by API"); - Assert.IsTrue(response.StatusCode == System.Net.HttpStatusCode.BadRequest || + AssertLogger.IsFalse(response.IsSuccessStatusCode, "Branch-only token should be rejected by API", "BranchOnlyRejected"); + AssertLogger.IsTrue(response.StatusCode == System.Net.HttpStatusCode.BadRequest || response.StatusCode == System.Net.HttpStatusCode.UnprocessableEntity, - $"Expected 400 or 422 for branch-only token, got {response.StatusCode}"); + $"Expected 400 or 422 for branch-only token, got {response.StatusCode}", "Expected400Or422"); } catch (Exception ex) { - Assert.Fail($"Branch scope validation test failed: {ex.Message}"); + AssertLogger.Fail($"Branch scope validation test failed: {ex.Message}"); } } @@ -803,6 +833,7 @@ public async Task Test018_Should_Validate_Branch_Scope_Requirement() [DoNotParallelize] public async Task Test019_Should_Delete_Delivery_Token() { + TestOutputLogger.LogContext("TestScenario", "Test019_Should_Delete_Delivery_Token"); try { // Ensure we have a token to delete @@ -812,24 +843,25 @@ public async Task Test019_Should_Delete_Delivery_Token() } string tokenUidToDelete = _deliveryTokenUid; - Assert.IsNotNull(tokenUidToDelete, "Should have a valid token UID to delete"); + AssertLogger.IsNotNull(tokenUidToDelete, "Should have a valid token UID to delete"); + TestOutputLogger.LogContext("TokenUidToDelete", tokenUidToDelete ?? ""); // Test synchronous delete ContentstackResponse response = _stack.DeliveryToken(tokenUidToDelete).Delete(); - Assert.IsTrue(response.IsSuccessStatusCode, $"Delete delivery token failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Delete delivery token failed: {response.OpenResponse()}", "DeleteSuccess"); // Verify token is deleted by trying to fetch it try { ContentstackResponse fetchResponse = _stack.DeliveryToken(tokenUidToDelete).Fetch(); - Assert.IsFalse(fetchResponse.IsSuccessStatusCode, "Deleted token should not be fetchable"); + AssertLogger.IsFalse(fetchResponse.IsSuccessStatusCode, "Deleted token should not be fetchable", "DeletedTokenNotFetchable"); // Verify the response indicates the token was not found - Assert.IsTrue(fetchResponse.StatusCode == System.Net.HttpStatusCode.NotFound || + AssertLogger.IsTrue(fetchResponse.StatusCode == System.Net.HttpStatusCode.NotFound || fetchResponse.StatusCode == System.Net.HttpStatusCode.UnprocessableEntity || fetchResponse.StatusCode == System.Net.HttpStatusCode.BadRequest, - $"Expected 404, 422, or 400 for deleted token fetch, got {fetchResponse.StatusCode}"); + $"Expected 404, 422, or 400 for deleted token fetch, got {fetchResponse.StatusCode}", "Expected404Or422Or400"); } catch (Exception ex) { @@ -842,7 +874,7 @@ public async Task Test019_Should_Delete_Delivery_Token() } catch (Exception ex) { - Assert.Fail("Delete delivery token test failed", ex.Message); + AssertLogger.Fail("Delete delivery token test failed", ex.Message); } } @@ -869,7 +901,7 @@ public async Task Cleanup() } catch (Exception ex) { - Assert.Fail("Cleanup failed", ex.Message); + AssertLogger.Fail("Cleanup failed", ex.Message); } } @@ -980,4 +1012,4 @@ private async Task CleanupTestEnvironment(string environmentUid = null) #endregion } -} \ No newline at end of file +} diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs index e57c031..6e8b265 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs @@ -7,6 +7,7 @@ using Contentstack.Management.Core.Exceptions; using Contentstack.Management.Core.Models; using Contentstack.Management.Core.Queryable; +using Contentstack.Management.Core.Tests.Helpers; using Contentstack.Management.Core.Tests.Model; using Microsoft.VisualStudio.TestTools.UnitTesting; using Newtonsoft.Json.Linq; @@ -47,76 +48,87 @@ public void Initialize() [DoNotParallelize] public void Test001_Should_Create_Taxonomy() { + TestOutputLogger.LogContext("TestScenario", "Test001_Should_Create_Taxonomy"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); ContentstackResponse response = _stack.Taxonomy().Create(_createModel); - Assert.IsTrue(response.IsSuccessStatusCode, $"Create failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Create failed: {response.OpenResponse()}", "CreateSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Taxonomy); - Assert.AreEqual(_createModel.Uid, wrapper.Taxonomy.Uid); - Assert.AreEqual(_createModel.Name, wrapper.Taxonomy.Name); - Assert.AreEqual(_createModel.Description, wrapper.Taxonomy.Description); + AssertLogger.IsNotNull(wrapper?.Taxonomy, "Wrapper taxonomy"); + AssertLogger.AreEqual(_createModel.Uid, wrapper.Taxonomy.Uid, "TaxonomyUid"); + AssertLogger.AreEqual(_createModel.Name, wrapper.Taxonomy.Name, "TaxonomyName"); + AssertLogger.AreEqual(_createModel.Description, wrapper.Taxonomy.Description, "TaxonomyDescription"); } [TestMethod] [DoNotParallelize] public void Test002_Should_Fetch_Taxonomy() { + TestOutputLogger.LogContext("TestScenario", "Test002_Should_Fetch_Taxonomy"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); ContentstackResponse response = _stack.Taxonomy(_taxonomyUid).Fetch(); - Assert.IsTrue(response.IsSuccessStatusCode, $"Fetch failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Fetch failed: {response.OpenResponse()}", "FetchSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Taxonomy); - Assert.AreEqual(_taxonomyUid, wrapper.Taxonomy.Uid); - Assert.IsNotNull(wrapper.Taxonomy.Name); + AssertLogger.IsNotNull(wrapper?.Taxonomy, "Wrapper taxonomy"); + AssertLogger.AreEqual(_taxonomyUid, wrapper.Taxonomy.Uid, "TaxonomyUid"); + AssertLogger.IsNotNull(wrapper.Taxonomy.Name, "Taxonomy name"); } [TestMethod] [DoNotParallelize] public void Test003_Should_Query_Taxonomies() { + TestOutputLogger.LogContext("TestScenario", "Test003_Should_Query_Taxonomies"); ContentstackResponse response = _stack.Taxonomy().Query().Find(); - Assert.IsTrue(response.IsSuccessStatusCode, $"Query failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Query failed: {response.OpenResponse()}", "QuerySuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Taxonomies); - Assert.IsTrue(wrapper.Taxonomies.Count >= 0); + AssertLogger.IsNotNull(wrapper?.Taxonomies, "Wrapper taxonomies"); + AssertLogger.IsTrue(wrapper.Taxonomies.Count >= 0, "Taxonomies count", "TaxonomiesCount"); } [TestMethod] [DoNotParallelize] public void Test004_Should_Update_Taxonomy() { + TestOutputLogger.LogContext("TestScenario", "Test004_Should_Update_Taxonomy"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); var updateModel = new TaxonomyModel { Name = "Taxonomy Integration Test Updated", Description = "Updated description" }; ContentstackResponse response = _stack.Taxonomy(_taxonomyUid).Update(updateModel); - Assert.IsTrue(response.IsSuccessStatusCode, $"Update failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Update failed: {response.OpenResponse()}", "UpdateSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Taxonomy); - Assert.AreEqual("Taxonomy Integration Test Updated", wrapper.Taxonomy.Name); - Assert.AreEqual("Updated description", wrapper.Taxonomy.Description); + AssertLogger.IsNotNull(wrapper?.Taxonomy, "Wrapper taxonomy"); + AssertLogger.AreEqual("Taxonomy Integration Test Updated", wrapper.Taxonomy.Name, "UpdatedName"); + AssertLogger.AreEqual("Updated description", wrapper.Taxonomy.Description, "UpdatedDescription"); } [TestMethod] [DoNotParallelize] public async Task Test005_Should_Fetch_Taxonomy_Async() { + TestOutputLogger.LogContext("TestScenario", "Test005_Should_Fetch_Taxonomy_Async"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); ContentstackResponse response = await _stack.Taxonomy(_taxonomyUid).FetchAsync(); - Assert.IsTrue(response.IsSuccessStatusCode, $"FetchAsync failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"FetchAsync failed: {response.OpenResponse()}", "FetchAsyncSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Taxonomy); - Assert.AreEqual(_taxonomyUid, wrapper.Taxonomy.Uid); + AssertLogger.IsNotNull(wrapper?.Taxonomy, "Wrapper taxonomy"); + AssertLogger.AreEqual(_taxonomyUid, wrapper.Taxonomy.Uid, "TaxonomyUid"); } [TestMethod] [DoNotParallelize] public async Task Test006_Should_Create_Taxonomy_Async() { + TestOutputLogger.LogContext("TestScenario", "Test006_Should_Create_Taxonomy_Async"); _asyncCreatedTaxonomyUid = "taxonomy_async_" + Guid.NewGuid().ToString("N").Substring(0, 8); + TestOutputLogger.LogContext("AsyncCreatedTaxonomyUid", _asyncCreatedTaxonomyUid); var model = new TaxonomyModel { Uid = _asyncCreatedTaxonomyUid, @@ -124,71 +136,79 @@ public async Task Test006_Should_Create_Taxonomy_Async() Description = "Created via CreateAsync" }; ContentstackResponse response = await _stack.Taxonomy().CreateAsync(model); - Assert.IsTrue(response.IsSuccessStatusCode, $"CreateAsync failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"CreateAsync failed: {response.OpenResponse()}", "CreateAsyncSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Taxonomy); - Assert.AreEqual(_asyncCreatedTaxonomyUid, wrapper.Taxonomy.Uid); + AssertLogger.IsNotNull(wrapper?.Taxonomy, "Wrapper taxonomy"); + AssertLogger.AreEqual(_asyncCreatedTaxonomyUid, wrapper.Taxonomy.Uid, "AsyncTaxonomyUid"); } [TestMethod] [DoNotParallelize] public async Task Test007_Should_Update_Taxonomy_Async() { + TestOutputLogger.LogContext("TestScenario", "Test007_Should_Update_Taxonomy_Async"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); var updateModel = new TaxonomyModel { Name = "Taxonomy Integration Test Updated Async", Description = "Updated via UpdateAsync" }; ContentstackResponse response = await _stack.Taxonomy(_taxonomyUid).UpdateAsync(updateModel); - Assert.IsTrue(response.IsSuccessStatusCode, $"UpdateAsync failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"UpdateAsync failed: {response.OpenResponse()}", "UpdateAsyncSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Taxonomy); - Assert.AreEqual("Taxonomy Integration Test Updated Async", wrapper.Taxonomy.Name); + AssertLogger.IsNotNull(wrapper?.Taxonomy, "Wrapper taxonomy"); + AssertLogger.AreEqual("Taxonomy Integration Test Updated Async", wrapper.Taxonomy.Name, "UpdatedAsyncName"); } [TestMethod] [DoNotParallelize] public async Task Test008_Should_Query_Taxonomies_Async() { + TestOutputLogger.LogContext("TestScenario", "Test008_Should_Query_Taxonomies_Async"); ContentstackResponse response = await _stack.Taxonomy().Query().FindAsync(); - Assert.IsTrue(response.IsSuccessStatusCode, $"Query FindAsync failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Query FindAsync failed: {response.OpenResponse()}", "QueryFindAsyncSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Taxonomies); - Assert.IsTrue(wrapper.Taxonomies.Count >= 0); + AssertLogger.IsNotNull(wrapper?.Taxonomies, "Wrapper taxonomies"); + AssertLogger.IsTrue(wrapper.Taxonomies.Count >= 0, "Taxonomies count", "TaxonomiesCount"); } [TestMethod] [DoNotParallelize] public void Test009_Should_Get_Taxonomy_Locales() { + TestOutputLogger.LogContext("TestScenario", "Test009_Should_Get_Taxonomy_Locales"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); ContentstackResponse response = _stack.Taxonomy(_taxonomyUid).Locales(); - Assert.IsTrue(response.IsSuccessStatusCode, $"Locales failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Locales failed: {response.OpenResponse()}", "LocalesSuccess"); var jobj = response.OpenJObjectResponse(); - Assert.IsNotNull(jobj["taxonomies"]); + AssertLogger.IsNotNull(jobj["taxonomies"], "Taxonomies in locales response"); } [TestMethod] [DoNotParallelize] public async Task Test010_Should_Get_Taxonomy_Locales_Async() { + TestOutputLogger.LogContext("TestScenario", "Test010_Should_Get_Taxonomy_Locales_Async"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); ContentstackResponse response = await _stack.Taxonomy(_taxonomyUid).LocalesAsync(); - Assert.IsTrue(response.IsSuccessStatusCode, $"LocalesAsync failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"LocalesAsync failed: {response.OpenResponse()}", "LocalesAsyncSuccess"); var jobj = response.OpenJObjectResponse(); - Assert.IsNotNull(jobj["taxonomies"]); + AssertLogger.IsNotNull(jobj["taxonomies"], "Taxonomies in locales response"); } [TestMethod] [DoNotParallelize] public void Test011_Should_Localize_Taxonomy() { + TestOutputLogger.LogContext("TestScenario", "Test011_Should_Localize_Taxonomy"); _weCreatedTestLocale = false; ContentstackResponse localesResponse = _stack.Locale().Query().Find(); - Assert.IsTrue(localesResponse.IsSuccessStatusCode, $"Query locales failed: {localesResponse.OpenResponse()}"); + AssertLogger.IsTrue(localesResponse.IsSuccessStatusCode, $"Query locales failed: {localesResponse.OpenResponse()}", "QueryLocalesSuccess"); var jobj = localesResponse.OpenJObjectResponse(); var localesArray = jobj["locales"] as JArray ?? jobj["items"] as JArray; if (localesArray == null || localesArray.Count == 0) { - Assert.Inconclusive("Stack has no locales; skipping taxonomy localize tests."); + AssertLogger.Inconclusive("Stack has no locales; skipping taxonomy localize tests."); return; } string masterLocale = "en-us"; @@ -226,10 +246,12 @@ public void Test011_Should_Localize_Taxonomy() } if (string.IsNullOrEmpty(_testLocaleCode)) { - Assert.Inconclusive("Stack has no non-master locale and could not create one; skipping taxonomy localize tests."); + AssertLogger.Inconclusive("Stack has no non-master locale and could not create one; skipping taxonomy localize tests."); return; } + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("TestLocaleCode", _testLocaleCode ?? ""); var localizeModel = new TaxonomyModel { Uid = _taxonomyUid, @@ -239,17 +261,19 @@ public void Test011_Should_Localize_Taxonomy() var coll = new ParameterCollection(); coll.Add("locale", _testLocaleCode); ContentstackResponse response = _stack.Taxonomy(_taxonomyUid).Localize(localizeModel, coll); - Assert.IsTrue(response.IsSuccessStatusCode, $"Localize failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Localize failed: {response.OpenResponse()}", "LocalizeSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Taxonomy); + AssertLogger.IsNotNull(wrapper?.Taxonomy, "Wrapper taxonomy"); if (!string.IsNullOrEmpty(wrapper.Taxonomy.Locale)) - Assert.AreEqual(_testLocaleCode, wrapper.Taxonomy.Locale); + AssertLogger.AreEqual(_testLocaleCode, wrapper.Taxonomy.Locale, "LocalizedLocale"); } [TestMethod] [DoNotParallelize] public void Test013_Should_Throw_When_Localize_With_Invalid_Locale() { + TestOutputLogger.LogContext("TestScenario", "Test013_Should_Throw_When_Localize_With_Invalid_Locale"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); var localizeModel = new TaxonomyModel { Uid = _taxonomyUid, @@ -258,23 +282,25 @@ public void Test013_Should_Throw_When_Localize_With_Invalid_Locale() }; var coll = new ParameterCollection(); coll.Add("locale", "invalid_locale_code_xyz"); - Assert.ThrowsException(() => - _stack.Taxonomy(_taxonomyUid).Localize(localizeModel, coll)); + AssertLogger.ThrowsException(() => + _stack.Taxonomy(_taxonomyUid).Localize(localizeModel, coll), "LocalizeInvalidLocale"); } [TestMethod] [DoNotParallelize] public void Test014_Should_Import_Taxonomy() { + TestOutputLogger.LogContext("TestScenario", "Test014_Should_Import_Taxonomy"); string importUid = "taxonomy_import_" + Guid.NewGuid().ToString("N").Substring(0, 8); + TestOutputLogger.LogContext("ImportUid", importUid); string json = $"{{\"taxonomy\":{{\"uid\":\"{importUid}\",\"name\":\"Imported Taxonomy\",\"description\":\"Imported\"}}}}"; using (var stream = new MemoryStream(Encoding.UTF8.GetBytes(json))) { var importModel = new TaxonomyImportModel(stream, "taxonomy.json"); ContentstackResponse response = _stack.Taxonomy().Import(importModel); - Assert.IsTrue(response.IsSuccessStatusCode, $"Import failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Import failed: {response.OpenResponse()}", "ImportSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Taxonomy); + AssertLogger.IsNotNull(wrapper?.Taxonomy, "Imported taxonomy"); _importedTaxonomyUid = wrapper.Taxonomy.Uid ?? importUid; } } @@ -283,15 +309,17 @@ public void Test014_Should_Import_Taxonomy() [DoNotParallelize] public async Task Test015_Should_Import_Taxonomy_Async() { + TestOutputLogger.LogContext("TestScenario", "Test015_Should_Import_Taxonomy_Async"); string importUid = "taxonomy_import_async_" + Guid.NewGuid().ToString("N").Substring(0, 8); + TestOutputLogger.LogContext("ImportUid", importUid); string json = $"{{\"taxonomy\":{{\"uid\":\"{importUid}\",\"name\":\"Imported Async\",\"description\":\"Imported via Async\"}}}}"; using (var stream = new MemoryStream(Encoding.UTF8.GetBytes(json))) { var importModel = new TaxonomyImportModel(stream, "taxonomy.json"); ContentstackResponse response = await _stack.Taxonomy().ImportAsync(importModel); - Assert.IsTrue(response.IsSuccessStatusCode, $"ImportAsync failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"ImportAsync failed: {response.OpenResponse()}", "ImportAsyncSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Taxonomy); + AssertLogger.IsNotNull(wrapper?.Taxonomy, "Imported taxonomy"); } } @@ -299,7 +327,10 @@ public async Task Test015_Should_Import_Taxonomy_Async() [DoNotParallelize] public void Test016_Should_Create_Root_Term() { + TestOutputLogger.LogContext("TestScenario", "Test016_Should_Create_Root_Term"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); _rootTermUid = "term_root_" + Guid.NewGuid().ToString("N").Substring(0, 8); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid); var termModel = new TermModel { Uid = _rootTermUid, @@ -307,10 +338,10 @@ public void Test016_Should_Create_Root_Term() ParentUid = null }; ContentstackResponse response = _stack.Taxonomy(_taxonomyUid).Terms().Create(termModel); - Assert.IsTrue(response.IsSuccessStatusCode, $"Create term failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Create term failed: {response.OpenResponse()}", "CreateTermSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Term); - Assert.AreEqual(_rootTermUid, wrapper.Term.Uid); + AssertLogger.IsNotNull(wrapper?.Term, "Term in response"); + AssertLogger.AreEqual(_rootTermUid, wrapper.Term.Uid, "RootTermUid"); _createdTermUids.Add(_rootTermUid); } @@ -318,7 +349,11 @@ public void Test016_Should_Create_Root_Term() [DoNotParallelize] public void Test017_Should_Create_Child_Term() { + TestOutputLogger.LogContext("TestScenario", "Test017_Should_Create_Child_Term"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); _childTermUid = "term_child_" + Guid.NewGuid().ToString("N").Substring(0, 8); + TestOutputLogger.LogContext("ChildTermUid", _childTermUid); var termModel = new TermModel { Uid = _childTermUid, @@ -326,10 +361,10 @@ public void Test017_Should_Create_Child_Term() ParentUid = _rootTermUid }; ContentstackResponse response = _stack.Taxonomy(_taxonomyUid).Terms().Create(termModel); - Assert.IsTrue(response.IsSuccessStatusCode, $"Create child term failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Create child term failed: {response.OpenResponse()}", "CreateChildTermSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Term); - Assert.AreEqual(_childTermUid, wrapper.Term.Uid); + AssertLogger.IsNotNull(wrapper?.Term, "Term in response"); + AssertLogger.AreEqual(_childTermUid, wrapper.Term.Uid, "ChildTermUid"); _createdTermUids.Add(_childTermUid); } @@ -337,147 +372,185 @@ public void Test017_Should_Create_Child_Term() [DoNotParallelize] public void Test018_Should_Fetch_Term() { + TestOutputLogger.LogContext("TestScenario", "Test018_Should_Fetch_Term"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); ContentstackResponse response = _stack.Taxonomy(_taxonomyUid).Terms(_rootTermUid).Fetch(); - Assert.IsTrue(response.IsSuccessStatusCode, $"Fetch term failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Fetch term failed: {response.OpenResponse()}", "FetchTermSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Term); - Assert.AreEqual(_rootTermUid, wrapper.Term.Uid); + AssertLogger.IsNotNull(wrapper?.Term, "Term in response"); + AssertLogger.AreEqual(_rootTermUid, wrapper.Term.Uid, "RootTermUid"); } [TestMethod] [DoNotParallelize] public async Task Test019_Should_Fetch_Term_Async() { + TestOutputLogger.LogContext("TestScenario", "Test019_Should_Fetch_Term_Async"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); ContentstackResponse response = await _stack.Taxonomy(_taxonomyUid).Terms(_rootTermUid).FetchAsync(); - Assert.IsTrue(response.IsSuccessStatusCode, $"FetchAsync term failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"FetchAsync term failed: {response.OpenResponse()}", "FetchAsyncTermSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Term); - Assert.AreEqual(_rootTermUid, wrapper.Term.Uid); + AssertLogger.IsNotNull(wrapper?.Term, "Term in response"); + AssertLogger.AreEqual(_rootTermUid, wrapper.Term.Uid, "RootTermUid"); } [TestMethod] [DoNotParallelize] public void Test020_Should_Query_Terms() { + TestOutputLogger.LogContext("TestScenario", "Test020_Should_Query_Terms"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); ContentstackResponse response = _stack.Taxonomy(_taxonomyUid).Terms().Query().Find(); - Assert.IsTrue(response.IsSuccessStatusCode, $"Query terms failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Query terms failed: {response.OpenResponse()}", "QueryTermsSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Terms); - Assert.IsTrue(wrapper.Terms.Count >= 0); + AssertLogger.IsNotNull(wrapper?.Terms, "Terms in response"); + AssertLogger.IsTrue(wrapper.Terms.Count >= 0, "Terms count", "TermsCount"); } [TestMethod] [DoNotParallelize] public async Task Test021_Should_Query_Terms_Async() { + TestOutputLogger.LogContext("TestScenario", "Test021_Should_Query_Terms_Async"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); ContentstackResponse response = await _stack.Taxonomy(_taxonomyUid).Terms().Query().FindAsync(); - Assert.IsTrue(response.IsSuccessStatusCode, $"Query terms Async failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Query terms Async failed: {response.OpenResponse()}", "QueryTermsAsyncSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Terms); - Assert.IsTrue(wrapper.Terms.Count >= 0); + AssertLogger.IsNotNull(wrapper?.Terms, "Terms in response"); + AssertLogger.IsTrue(wrapper.Terms.Count >= 0, "Terms count", "TermsCount"); } [TestMethod] [DoNotParallelize] public void Test022_Should_Update_Term() { + TestOutputLogger.LogContext("TestScenario", "Test022_Should_Update_Term"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); var updateModel = new TermModel { Name = "Root Term Updated", ParentUid = null }; ContentstackResponse response = _stack.Taxonomy(_taxonomyUid).Terms(_rootTermUid).Update(updateModel); - Assert.IsTrue(response.IsSuccessStatusCode, $"Update term failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Update term failed: {response.OpenResponse()}", "UpdateTermSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Term); - Assert.AreEqual("Root Term Updated", wrapper.Term.Name); + AssertLogger.IsNotNull(wrapper?.Term, "Term in response"); + AssertLogger.AreEqual("Root Term Updated", wrapper.Term.Name, "UpdatedTermName"); } [TestMethod] [DoNotParallelize] public async Task Test023_Should_Update_Term_Async() { + TestOutputLogger.LogContext("TestScenario", "Test023_Should_Update_Term_Async"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); var updateModel = new TermModel { Name = "Root Term Updated Async", ParentUid = null }; ContentstackResponse response = await _stack.Taxonomy(_taxonomyUid).Terms(_rootTermUid).UpdateAsync(updateModel); - Assert.IsTrue(response.IsSuccessStatusCode, $"UpdateAsync term failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"UpdateAsync term failed: {response.OpenResponse()}", "UpdateAsyncTermSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Term); - Assert.AreEqual("Root Term Updated Async", wrapper.Term.Name); + AssertLogger.IsNotNull(wrapper?.Term, "Term in response"); + AssertLogger.AreEqual("Root Term Updated Async", wrapper.Term.Name, "UpdatedAsyncTermName"); } [TestMethod] [DoNotParallelize] public void Test024_Should_Get_Term_Ancestors() { + TestOutputLogger.LogContext("TestScenario", "Test024_Should_Get_Term_Ancestors"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("ChildTermUid", _childTermUid ?? ""); ContentstackResponse response = _stack.Taxonomy(_taxonomyUid).Terms(_childTermUid).Ancestors(); - Assert.IsTrue(response.IsSuccessStatusCode, $"Ancestors failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Ancestors failed: {response.OpenResponse()}", "AncestorsSuccess"); var jobj = response.OpenJObjectResponse(); - Assert.IsNotNull(jobj); + AssertLogger.IsNotNull(jobj, "Ancestors response"); } [TestMethod] [DoNotParallelize] public async Task Test025_Should_Get_Term_Ancestors_Async() { + TestOutputLogger.LogContext("TestScenario", "Test025_Should_Get_Term_Ancestors_Async"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("ChildTermUid", _childTermUid ?? ""); ContentstackResponse response = await _stack.Taxonomy(_taxonomyUid).Terms(_childTermUid).AncestorsAsync(); - Assert.IsTrue(response.IsSuccessStatusCode, $"AncestorsAsync failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"AncestorsAsync failed: {response.OpenResponse()}", "AncestorsAsyncSuccess"); var jobj = response.OpenJObjectResponse(); - Assert.IsNotNull(jobj); + AssertLogger.IsNotNull(jobj, "Ancestors async response"); } [TestMethod] [DoNotParallelize] public void Test026_Should_Get_Term_Descendants() { + TestOutputLogger.LogContext("TestScenario", "Test026_Should_Get_Term_Descendants"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); ContentstackResponse response = _stack.Taxonomy(_taxonomyUid).Terms(_rootTermUid).Descendants(); - Assert.IsTrue(response.IsSuccessStatusCode, $"Descendants failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Descendants failed: {response.OpenResponse()}", "DescendantsSuccess"); var jobj = response.OpenJObjectResponse(); - Assert.IsNotNull(jobj); + AssertLogger.IsNotNull(jobj, "Descendants response"); } [TestMethod] [DoNotParallelize] public async Task Test027_Should_Get_Term_Descendants_Async() { + TestOutputLogger.LogContext("TestScenario", "Test027_Should_Get_Term_Descendants_Async"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); ContentstackResponse response = await _stack.Taxonomy(_taxonomyUid).Terms(_rootTermUid).DescendantsAsync(); - Assert.IsTrue(response.IsSuccessStatusCode, $"DescendantsAsync failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"DescendantsAsync failed: {response.OpenResponse()}", "DescendantsAsyncSuccess"); var jobj = response.OpenJObjectResponse(); - Assert.IsNotNull(jobj); + AssertLogger.IsNotNull(jobj, "Descendants async response"); } [TestMethod] [DoNotParallelize] public void Test028_Should_Get_Term_Locales() { + TestOutputLogger.LogContext("TestScenario", "Test028_Should_Get_Term_Locales"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); ContentstackResponse response = _stack.Taxonomy(_taxonomyUid).Terms(_rootTermUid).Locales(); - Assert.IsTrue(response.IsSuccessStatusCode, $"Term Locales failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Term Locales failed: {response.OpenResponse()}", "TermLocalesSuccess"); var jobj = response.OpenJObjectResponse(); - Assert.IsNotNull(jobj["terms"]); + AssertLogger.IsNotNull(jobj["terms"], "Terms in locales response"); } [TestMethod] [DoNotParallelize] public async Task Test029_Should_Get_Term_Locales_Async() { + TestOutputLogger.LogContext("TestScenario", "Test029_Should_Get_Term_Locales_Async"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); ContentstackResponse response = await _stack.Taxonomy(_taxonomyUid).Terms(_rootTermUid).LocalesAsync(); - Assert.IsTrue(response.IsSuccessStatusCode, $"Term LocalesAsync failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Term LocalesAsync failed: {response.OpenResponse()}", "TermLocalesAsyncSuccess"); var jobj = response.OpenJObjectResponse(); - Assert.IsNotNull(jobj["terms"]); + AssertLogger.IsNotNull(jobj["terms"], "Terms in locales async response"); } [TestMethod] [DoNotParallelize] public void Test030_Should_Localize_Term() { + TestOutputLogger.LogContext("TestScenario", "Test030_Should_Localize_Term"); if (string.IsNullOrEmpty(_testLocaleCode)) { - Assert.Inconclusive("No non-master locale available."); + AssertLogger.Inconclusive("No non-master locale available."); return; } + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); + TestOutputLogger.LogContext("TestLocaleCode", _testLocaleCode ?? ""); var localizeModel = new TermModel { Uid = _rootTermUid, @@ -487,15 +560,19 @@ public void Test030_Should_Localize_Term() var coll = new ParameterCollection(); coll.Add("locale", _testLocaleCode); ContentstackResponse response = _stack.Taxonomy(_taxonomyUid).Terms(_rootTermUid).Localize(localizeModel, coll); - Assert.IsTrue(response.IsSuccessStatusCode, $"Term Localize failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Term Localize failed: {response.OpenResponse()}", "TermLocalizeSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Term); + AssertLogger.IsNotNull(wrapper?.Term, "Term in response"); } [TestMethod] [DoNotParallelize] public void Test032_Should_Move_Term() { + TestOutputLogger.LogContext("TestScenario", "Test032_Should_Move_Term"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("ChildTermUid", _childTermUid ?? ""); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); var moveModel = new TermMoveModel { ParentUid = _rootTermUid, @@ -516,19 +593,23 @@ public void Test032_Should_Move_Term() } catch (ContentstackErrorException ex) { - Assert.Inconclusive("Move term failed: {0}", ex.Message); + AssertLogger.Inconclusive(string.Format("Move term failed: {0}", ex.Message)); return; } } - Assert.IsTrue(response.IsSuccessStatusCode, $"Move term failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Move term failed: {response.OpenResponse()}", "MoveTermSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Term); + AssertLogger.IsNotNull(wrapper?.Term, "Term in response"); } [TestMethod] [DoNotParallelize] public async Task Test033_Should_Move_Term_Async() { + TestOutputLogger.LogContext("TestScenario", "Test033_Should_Move_Term_Async"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("ChildTermUid", _childTermUid ?? ""); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); var moveModel = new TermMoveModel { ParentUid = _rootTermUid, @@ -549,40 +630,48 @@ public async Task Test033_Should_Move_Term_Async() } catch (ContentstackErrorException ex) { - Assert.Inconclusive("Move term failed: {0}", ex.Message); + AssertLogger.Inconclusive(string.Format("Move term failed: {0}", ex.Message)); return; } } - Assert.IsTrue(response.IsSuccessStatusCode, $"MoveAsync term failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"MoveAsync term failed: {response.OpenResponse()}", "MoveAsyncTermSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Term); + AssertLogger.IsNotNull(wrapper?.Term, "Term in response"); } [TestMethod] [DoNotParallelize] public void Test034_Should_Search_Terms() { + TestOutputLogger.LogContext("TestScenario", "Test034_Should_Search_Terms"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); ContentstackResponse response = _stack.Taxonomy(_taxonomyUid).Terms().Search("Root"); - Assert.IsTrue(response.IsSuccessStatusCode, $"Search terms failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Search terms failed: {response.OpenResponse()}", "SearchTermsSuccess"); var jobj = response.OpenJObjectResponse(); - Assert.IsNotNull(jobj["terms"] ?? jobj["items"]); + AssertLogger.IsNotNull(jobj["terms"] ?? jobj["items"], "Terms or items in search response"); } [TestMethod] [DoNotParallelize] public async Task Test035_Should_Search_Terms_Async() { + TestOutputLogger.LogContext("TestScenario", "Test035_Should_Search_Terms_Async"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); ContentstackResponse response = await _stack.Taxonomy(_taxonomyUid).Terms().SearchAsync("Root"); - Assert.IsTrue(response.IsSuccessStatusCode, $"SearchAsync terms failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"SearchAsync terms failed: {response.OpenResponse()}", "SearchAsyncTermsSuccess"); var jobj = response.OpenJObjectResponse(); - Assert.IsNotNull(jobj["terms"] ?? jobj["items"]); + AssertLogger.IsNotNull(jobj["terms"] ?? jobj["items"], "Terms or items in search async response"); } [TestMethod] [DoNotParallelize] public void Test036_Should_Create_Term_Async() { + TestOutputLogger.LogContext("TestScenario", "Test036_Should_Create_Term_Async"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); string termUid = "term_async_" + Guid.NewGuid().ToString("N").Substring(0, 8); + TestOutputLogger.LogContext("AsyncTermUid", termUid); var termModel = new TermModel { Uid = termUid, @@ -590,9 +679,9 @@ public void Test036_Should_Create_Term_Async() ParentUid = _rootTermUid }; ContentstackResponse response = _stack.Taxonomy(_taxonomyUid).Terms().CreateAsync(termModel).GetAwaiter().GetResult(); - Assert.IsTrue(response.IsSuccessStatusCode, $"CreateAsync term failed: {response.OpenResponse()}"); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"CreateAsync term failed: {response.OpenResponse()}", "CreateAsyncTermSuccess"); var wrapper = response.OpenTResponse(); - Assert.IsNotNull(wrapper?.Term); + AssertLogger.IsNotNull(wrapper?.Term, "Term in response"); _createdTermUids.Add(termUid); } @@ -600,50 +689,59 @@ public void Test036_Should_Create_Term_Async() [DoNotParallelize] public void Test037_Should_Throw_When_Update_NonExistent_Taxonomy() { + TestOutputLogger.LogContext("TestScenario", "Test037_Should_Throw_When_Update_NonExistent_Taxonomy"); var updateModel = new TaxonomyModel { Name = "No", Description = "No" }; - Assert.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Update(updateModel)); + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Update(updateModel), "UpdateNonExistentTaxonomy"); } [TestMethod] [DoNotParallelize] public void Test038_Should_Throw_When_Fetch_NonExistent_Taxonomy() { - Assert.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Fetch()); + TestOutputLogger.LogContext("TestScenario", "Test038_Should_Throw_When_Fetch_NonExistent_Taxonomy"); + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Fetch(), "FetchNonExistentTaxonomy"); } [TestMethod] [DoNotParallelize] public void Test039_Should_Throw_When_Delete_NonExistent_Taxonomy() { - Assert.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Delete()); + TestOutputLogger.LogContext("TestScenario", "Test039_Should_Throw_When_Delete_NonExistent_Taxonomy"); + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Delete(), "DeleteNonExistentTaxonomy"); } [TestMethod] [DoNotParallelize] public void Test040_Should_Throw_When_Fetch_NonExistent_Term() { - Assert.ThrowsException(() => - _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Fetch()); + TestOutputLogger.LogContext("TestScenario", "Test040_Should_Throw_When_Fetch_NonExistent_Term"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + AssertLogger.ThrowsException(() => + _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Fetch(), "FetchNonExistentTerm"); } [TestMethod] [DoNotParallelize] public void Test041_Should_Throw_When_Update_NonExistent_Term() { + TestOutputLogger.LogContext("TestScenario", "Test041_Should_Throw_When_Update_NonExistent_Term"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); var updateModel = new TermModel { Name = "No", ParentUid = null }; - Assert.ThrowsException(() => - _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Update(updateModel)); + AssertLogger.ThrowsException(() => + _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Update(updateModel), "UpdateNonExistentTerm"); } [TestMethod] [DoNotParallelize] public void Test042_Should_Throw_When_Delete_NonExistent_Term() { - Assert.ThrowsException(() => - _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Delete()); + TestOutputLogger.LogContext("TestScenario", "Test042_Should_Throw_When_Delete_NonExistent_Term"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + AssertLogger.ThrowsException(() => + _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Delete(), "DeleteNonExistentTerm"); } private static Stack GetStack() diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack999_LogoutTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack999_LogoutTest.cs index 8411323..cf8a4ca 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack999_LogoutTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack999_LogoutTest.cs @@ -1,4 +1,5 @@ -using System; +using System; +using Contentstack.Management.Core.Tests.Helpers; using Microsoft.VisualStudio.TestTools.UnitTesting; namespace Contentstack.Management.Core.Tests.IntegrationTest @@ -10,18 +11,19 @@ public class Contentstack999_LogoutTest [DoNotParallelize] public void Test001_Should_Return_Success_On_Logout() { + TestOutputLogger.LogContext("TestScenario", "Logout"); try { ContentstackClient client = Contentstack.Client; ContentstackResponse contentstackResponse = client.Logout(); string loginResponse = contentstackResponse.OpenResponse(); - Assert.IsNull(client.contentstackOptions.Authtoken); - Assert.IsNotNull(loginResponse); + AssertLogger.IsNull(client.contentstackOptions.Authtoken, "Authtoken"); + AssertLogger.IsNotNull(loginResponse, "loginResponse"); } catch (Exception e) { - Assert.Fail(e.Message); + AssertLogger.Fail(e.Message); } } } diff --git a/Scripts/generate_integration_test_report.py b/Scripts/generate_integration_test_report.py new file mode 100644 index 0000000..23dd69a --- /dev/null +++ b/Scripts/generate_integration_test_report.py @@ -0,0 +1,757 @@ +#!/usr/bin/env python3 +""" +Integration Test Report Generator for .NET CMA SDK +Parses TRX (results) + Cobertura (coverage) + Structured StdOut (HTTP, assertions, context) +into a single interactive HTML report. +No external dependencies — uses only Python standard library. +""" + +import xml.etree.ElementTree as ET +import os +import sys +import re +import json +import argparse +from datetime import datetime + + +class IntegrationTestReportGenerator: + def __init__(self, trx_path, coverage_path=None): + self.trx_path = trx_path + self.coverage_path = coverage_path + self.results = { + 'total': 0, + 'passed': 0, + 'failed': 0, + 'skipped': 0, + 'duration_seconds': 0, + 'tests': [] + } + self.coverage = { + 'lines_pct': 0, + 'branches_pct': 0, + 'statements_pct': 0, + 'functions_pct': 0 + } + + # ──────────────────── TRX PARSING ──────────────────── + + def parse_trx(self): + tree = ET.parse(self.trx_path) + root = tree.getroot() + ns = {'t': 'http://microsoft.com/schemas/VisualStudio/TeamTest/2010'} + + counters = root.find('.//t:ResultSummary/t:Counters', ns) + if counters is not None: + self.results['total'] = int(counters.get('total', 0)) + self.results['passed'] = int(counters.get('passed', 0)) + self.results['failed'] = int(counters.get('failed', 0)) + self.results['skipped'] = int(counters.get('notExecuted', 0)) + + times = root.find('.//t:Times', ns) + if times is not None: + try: + start = times.get('start', '') + finish = times.get('finish', '') + if start and finish: + fmt = '%Y-%m-%dT%H:%M:%S.%f' + s = start.split('+')[0].split('-')[0:3] + start_clean = re.sub(r'[+-]\d{2}:\d{2}$', '', start) + finish_clean = re.sub(r'[+-]\d{2}:\d{2}$', '', finish) + for fmt_try in ['%Y-%m-%dT%H:%M:%S.%f', '%Y-%m-%dT%H:%M:%S']: + try: + dt_start = datetime.strptime(start_clean, fmt_try) + dt_finish = datetime.strptime(finish_clean, fmt_try) + self.results['duration_seconds'] = (dt_finish - dt_start).total_seconds() + break + except ValueError: + continue + except Exception: + pass + + integration_total = 0 + integration_passed = 0 + integration_failed = 0 + integration_skipped = 0 + + for result in root.findall('.//t:UnitTestResult', ns): + test_id = result.get('testId', '') + test_name = result.get('testName', '') + outcome = result.get('outcome', 'Unknown') + duration_str = result.get('duration', '0') + duration = self._parse_duration(duration_str) + + test_def = root.find(f".//t:UnitTest[@id='{test_id}']/t:TestMethod", ns) + class_name = test_def.get('className', '') if test_def is not None else '' + + if 'IntegrationTest' not in class_name: + continue + + parts = class_name.split(',')[0].rsplit('.', 1) + file_name = parts[-1] if len(parts) > 1 else class_name + + error_msg = error_trace = None + error_info = result.find('.//t:ErrorInfo', ns) + if error_info is not None: + msg_el = error_info.find('t:Message', ns) + stk_el = error_info.find('t:StackTrace', ns) + if msg_el is not None: + error_msg = msg_el.text + if stk_el is not None: + error_trace = stk_el.text + + structured = None + stdout_el = result.find('.//t:StdOut', ns) + if stdout_el is not None and stdout_el.text: + structured = self._parse_structured_output(stdout_el.text) + + integration_total += 1 + if outcome == 'Passed': + integration_passed += 1 + elif outcome == 'Failed': + integration_failed += 1 + elif outcome in ('NotExecuted', 'Inconclusive'): + integration_skipped += 1 + + self.results['tests'].append({ + 'name': test_name, + 'outcome': outcome, + 'duration': duration, + 'file': file_name, + 'error_message': error_msg, + 'error_stacktrace': error_trace, + 'structured': structured + }) + + self.results['total'] = integration_total + self.results['passed'] = integration_passed + self.results['failed'] = integration_failed + self.results['skipped'] = integration_skipped + + def _parse_duration(self, duration_str): + try: + parts = duration_str.split(':') + if len(parts) == 3: + h, m = int(parts[0]), int(parts[1]) + s = float(parts[2]) + total = h * 3600 + m * 60 + s + return f"{total:.2f}s" + except Exception: + pass + return duration_str + + # ──────────────────── COBERTURA PARSING ──────────────────── + + def parse_coverage(self): + if not self.coverage_path or not os.path.exists(self.coverage_path): + return + try: + tree = ET.parse(self.coverage_path) + root = tree.getroot() + self.coverage['lines_pct'] = float(root.get('line-rate', 0)) * 100 + self.coverage['branches_pct'] = float(root.get('branch-rate', 0)) * 100 + self.coverage['statements_pct'] = self.coverage['lines_pct'] + + total_methods = 0 + covered_methods = 0 + for method in root.iter('method'): + total_methods += 1 + lr = float(method.get('line-rate', 0)) + if lr > 0: + covered_methods += 1 + if total_methods > 0: + self.coverage['functions_pct'] = (covered_methods / total_methods) * 100 + except Exception as e: + print(f"Warning: Could not parse coverage file: {e}") + + # ──────────────────── STRUCTURED OUTPUT ──────────────────── + + def _parse_structured_output(self, text): + data = { + 'assertions': [], + 'requests': [], + 'responses': [], + 'context': [] + } + pattern = r'###TEST_OUTPUT_START###(.+?)###TEST_OUTPUT_END###' + for match in re.findall(pattern, text, re.DOTALL): + try: + obj = json.loads(match) + t = obj.get('type', '').upper() + if t == 'ASSERTION': + data['assertions'].append({ + 'name': obj.get('assertionName', ''), + 'expected': obj.get('expected', ''), + 'actual': obj.get('actual', ''), + 'passed': obj.get('passed', True) + }) + elif t == 'HTTP_REQUEST': + data['requests'].append({ + 'method': obj.get('method', ''), + 'url': obj.get('url', ''), + 'headers': obj.get('headers', {}), + 'body': obj.get('body', ''), + 'curl': obj.get('curlCommand', ''), + 'sdkMethod': obj.get('sdkMethod', '') + }) + elif t == 'HTTP_RESPONSE': + data['responses'].append({ + 'statusCode': obj.get('statusCode', 0), + 'statusText': obj.get('statusText', ''), + 'headers': obj.get('headers', {}), + 'body': obj.get('body', '') + }) + elif t == 'CONTEXT': + data['context'].append({ + 'key': obj.get('key', ''), + 'value': obj.get('value', '') + }) + except json.JSONDecodeError: + continue + return data + + # ──────────────────── HTML HELPERS ──────────────────── + + @staticmethod + def _esc(text): + if text is None: + return "" + text = str(text) + return (text + .replace('&', '&') + .replace('<', '<') + .replace('>', '>') + .replace('"', '"') + .replace("'", ''')) + + def _format_duration_display(self, seconds): + if seconds < 60: + return f"{seconds:.1f}s" + elif seconds < 3600: + m = int(seconds // 60) + s = seconds % 60 + return f"{m}m {s:.0f}s" + else: + h = int(seconds // 3600) + m = int((seconds % 3600) // 60) + return f"{h}h {m}m" + + # ──────────────────── HTML GENERATION ──────────────────── + + def generate_html(self, output_path): + pass_rate = (self.results['passed'] / self.results['total'] * 100) if self.results['total'] > 0 else 0 + duration_display = self._format_duration_display(self.results['duration_seconds']) + + by_file = {} + for test in self.results['tests']: + by_file.setdefault(test['file'], []).append(test) + + html = self._html_head() + html += self._html_header(pass_rate) + html += self._html_kpi_bar(duration_display) + html += self._html_pass_rate(pass_rate) + html += self._html_coverage_table() + html += self._html_test_navigation(by_file) + html += self._html_footer() + html += self._html_scripts() + html += "" + + with open(output_path, 'w', encoding='utf-8') as f: + f.write(html) + return output_path + + def _html_head(self): + return f""" + + + + + .NET CMA SDK - Integration Test Report + + + +
+""" + + def _html_header(self, pass_rate): + now = datetime.now().strftime('%B %d, %Y at %I:%M %p') + return f""" +
+

Integration Test Results

+

.NET CMA SDK — {now}

+
+""" + + def _html_kpi_bar(self, duration_display): + r = self.results + return f""" +
+
{r['total']}
Total Tests
+
{r['passed']}
Passed
+
{r['failed']}
Failed
+
{r['skipped']}
Skipped
+
{duration_display}
Duration
+
+""" + + def _html_pass_rate(self, pass_rate): + return f""" +
+

Pass Rate

+
+
{pass_rate:.1f}%
+
+
+""" + + def _html_coverage_table(self): + c = self.coverage + if c['lines_pct'] == 0 and c['branches_pct'] == 0: + return "" + + def cov_class(pct): + if pct >= 80: return 'cov-good' + if pct >= 50: return 'cov-warn' + return 'cov-bad' + + return f""" +
+

Global Code Coverage

+ + + + + + + + + + +
StatementsBranchesFunctionsLines
{c['statements_pct']:.1f}%{c['branches_pct']:.1f}%{c['functions_pct']:.1f}%{c['lines_pct']:.1f}%
+
+""" + + def _html_test_navigation(self, by_file): + html = '

Test Results by Integration File

' + + for file_name in sorted(by_file.keys()): + tests = by_file[file_name] + passed = sum(1 for t in tests if t['outcome'] == 'Passed') + failed = sum(1 for t in tests if t['outcome'] == 'Failed') + skipped = sum(1 for t in tests if t['outcome'] in ('NotExecuted', 'Inconclusive')) + safe_id = re.sub(r'[^a-zA-Z0-9]', '_', file_name) + + html += f""" +
+
+
+ + {self._esc(file_name)} +
+
+ {passed} passed · + {failed} failed · + {skipped} skipped · + {len(tests)} total +
+
+
+ + + + + + + +""" + for idx, test in enumerate(tests): + status_cls = 'status-passed' if test['outcome'] == 'Passed' else 'status-failed' if test['outcome'] == 'Failed' else 'status-skipped' + icon = '✅' if test['outcome'] == 'Passed' else '❌' if test['outcome'] == 'Failed' else '⏭' + test_id = f"test-{safe_id}-{idx}" + + html += f""" + + + + + +""" + html += """ + +
Test NameStatusDuration
+
{icon} {self._esc(test['name'])}
+""" + detail = self._html_test_detail(test, test_id) + html += detail + html += f""" +
{test['outcome']}{test['duration']}
+
+
+""" + html += "
" + return html + + def _html_test_detail(self, test, test_id): + s = test.get('structured') + has_error = test['outcome'] == 'Failed' and (test.get('error_message') or test.get('error_stacktrace')) + has_structured = s and (s.get('assertions') or s.get('requests') or s.get('responses') or s.get('context')) + + if not has_error and not has_structured: + return "" + + html = f'
' + + if has_error: + html += '
' + if test.get('error_message'): + html += f'
Error:
{self._esc(test["error_message"])}
' + if test.get('error_stacktrace'): + html += f"""
Stack Trace +
{self._esc(test["error_stacktrace"])}
""" + html += '
' + + if not s: + html += '
' + return html + + if s.get('assertions'): + html += '

Assertions

' + for a in s['assertions']: + icon = '✅' if a.get('passed', True) else '❌' + row_cls = '' if a.get('passed', True) else 'a-failed' + html += f""" +
+
{icon}{self._esc(a['name'])}
+
+
Expected:
{self._esc(str(a['expected']))}
+
Actual:
{self._esc(str(a['actual']))}
+
+
""" + html += '
' + + requests = s.get('requests', []) + responses = s.get('responses', []) + pairs = max(len(requests), len(responses)) + if pairs > 0: + html += '

HTTP Transactions

' + for i in range(pairs): + req = requests[i] if i < len(requests) else None + res = responses[i] if i < len(responses) else None + + if req: + sdk_badge = '' + if req.get('sdkMethod'): + sdk_badge = f'
SDK Method: {self._esc(req["sdkMethod"])}
' + html += f""" +
+ {sdk_badge} +
{self._esc(req['method'])}{self._esc(req['url'])}
""" + if req.get('headers'): + hdr_text = '\n'.join(f"{k}: {v}" for k, v in req['headers'].items()) + html += f""" +
Request Headers
{self._esc(hdr_text)}
""" + if req.get('body'): + html += f""" +
Request Body
{self._esc(req['body'][:5000])}
""" + if req.get('curl'): + curl_id = f"curl-{test_id}-{i}" + html += f""" +
cURL Command +
{self._esc(req['curl'])}
+ +
""" + html += '
' + + if res: + sc = res.get('statusCode', 0) + status_cls = 'rs-success' if 200 <= sc < 300 else 'rs-error' + html += f""" +
+
{sc} {self._esc(res.get('statusText', ''))}
""" + if res.get('headers'): + hdr_text = '\n'.join(f"{k}: {v}" for k, v in res['headers'].items()) + html += f""" +
Response Headers
{self._esc(hdr_text)}
""" + if res.get('body'): + body_text = res['body'] + truncated = len(body_text) > 3000 + display_body = body_text[:3000] if truncated else body_text + try: + parsed = json.loads(display_body) + display_body = json.dumps(parsed, indent=2)[:3000] + except (json.JSONDecodeError, ValueError): + pass + body_id = f"resbody-{test_id}-{i}" + html += f""" +
Response Body +
{self._esc(display_body)}
""" + if truncated: + html += f'' + html += f'' + html += '
' + html += '
' + html += '
' + + if s.get('context'): + html += """ +
+ Test Context + """ + for ctx in s['context']: + html += f""" + + + + """ + html += '
{self._esc(ctx['key'])}{self._esc(str(ctx['value']))}
' + + html += '
' + return html + + def _html_footer(self): + now = datetime.now().strftime('%Y-%m-%d at %H:%M:%S') + return f""" + +""" + + def _html_scripts(self): + return """ + +""" + + +def main(): + parser = argparse.ArgumentParser(description='Integration Test Report Generator for .NET CMA SDK') + parser.add_argument('trx_file', help='Path to the .trx test results file') + parser.add_argument('--coverage', help='Path to coverage.cobertura.xml file', default=None) + parser.add_argument('--output', help='Output HTML file path', default=None) + args = parser.parse_args() + + if not os.path.exists(args.trx_file): + print(f"Error: TRX file not found: {args.trx_file}") + sys.exit(1) + + print("=" * 70) + print(" .NET CMA SDK - Integration Test Report Generator") + print("=" * 70) + + generator = IntegrationTestReportGenerator(args.trx_file, args.coverage) + + print(f"\nParsing TRX: {args.trx_file}") + generator.parse_trx() + print(f" Found {generator.results['total']} integration tests") + print(f" Passed: {generator.results['passed']}") + print(f" Failed: {generator.results['failed']}") + print(f" Skipped: {generator.results['skipped']}") + + if args.coverage: + print(f"\nParsing Coverage: {args.coverage}") + generator.parse_coverage() + c = generator.coverage + print(f" Lines: {c['lines_pct']:.1f}%") + print(f" Branches: {c['branches_pct']:.1f}%") + print(f" Functions: {c['functions_pct']:.1f}%") + + timestamp = datetime.now().strftime('%Y%m%d_%H%M%S') + output_file = args.output or f'integration-test-report_{timestamp}.html' + + print(f"\nGenerating HTML report...") + generator.generate_html(output_file) + + print(f"\n{'=' * 70}") + print(f" Report generated: {os.path.abspath(output_file)}") + print(f"{'=' * 70}") + print(f"\n open {os.path.abspath(output_file)}") + + +if __name__ == "__main__": + main() diff --git a/Scripts/run-integration-tests-with-report.sh b/Scripts/run-integration-tests-with-report.sh new file mode 100755 index 0000000..662e10f --- /dev/null +++ b/Scripts/run-integration-tests-with-report.sh @@ -0,0 +1,71 @@ +#!/bin/bash +set -e + +SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" +PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)" +TIMESTAMP=$(date +"%Y%m%d_%H%M%S") +TEST_PROJECT="Contentstack.Management.Core.Tests" + +echo "======================================================" +echo " CMA SDK — Integration Test Report Generator" +echo "======================================================" +echo "" +echo "Project: $PROJECT_ROOT" +echo "Run ID: $TIMESTAMP" +echo "" + +# Step 1: Run ONLY integration tests, collect TRX + coverage +TRX_FILE="IntegrationTest-Report-${TIMESTAMP}.trx" +echo "Step 1: Running integration tests..." +dotnet test "$PROJECT_ROOT/$TEST_PROJECT/$TEST_PROJECT.csproj" \ + --filter "FullyQualifiedName~IntegrationTest" \ + --logger "trx;LogFileName=$TRX_FILE" \ + --results-directory "$PROJECT_ROOT/$TEST_PROJECT/TestResults" \ + --collect:"XPlat code coverage" \ + --verbosity quiet || true + +echo "" +echo "Tests completed." +echo "" + +# Step 2: Locate the cobertura coverage file (most recent) +COBERTURA="" +if [ -d "$PROJECT_ROOT/$TEST_PROJECT/TestResults" ]; then + COBERTURA=$(find "$PROJECT_ROOT/$TEST_PROJECT/TestResults" \ + -name "coverage.cobertura.xml" 2>/dev/null | sort -r | head -1) +fi + +TRX_PATH="$PROJECT_ROOT/$TEST_PROJECT/TestResults/$TRX_FILE" +echo "TRX: $TRX_PATH" +echo "Coverage: ${COBERTURA:-Not found}" +echo "" + +# Step 3: Generate the HTML report +echo "Step 2: Generating HTML report..." +cd "$PROJECT_ROOT" + +COVERAGE_ARG="" +if [ -n "$COBERTURA" ]; then + COVERAGE_ARG="--coverage $COBERTURA" +fi + +OUTPUT_FILE="$PROJECT_ROOT/integration-test-report_${TIMESTAMP}.html" + +python3 "$PROJECT_ROOT/Scripts/generate_integration_test_report.py" \ + "$TRX_PATH" \ + $COVERAGE_ARG \ + --output "$OUTPUT_FILE" + +echo "" +echo "======================================================" +echo " All Done!" +echo "======================================================" +echo "" +if [ -f "$OUTPUT_FILE" ]; then + echo "Report: $OUTPUT_FILE" + echo "" + echo "To open: open $OUTPUT_FILE" +else + echo "Warning: Report file not found. Check output above for errors." +fi +echo "" diff --git a/integration-test-report_20260313_080307.html b/integration-test-report_20260313_080307.html new file mode 100644 index 0000000..51141eb --- /dev/null +++ b/integration-test-report_20260313_080307.html @@ -0,0 +1,47577 @@ + + + + + + .NET CMA SDK - Integration Test Report + + + +
+ +
+

Integration Test Results

+

.NET CMA SDK — March 13, 2026 at 08:06 AM

+
+ +
+
193
Total Tests
+
192
Passed
+
0
Failed
+
1
Skipped
+
0.0s
Duration
+
+ +
+

Pass Rate

+
+
99.5%
+
+
+ +
+

Global Code Coverage

+ + + + + + + + + + +
StatementsBranchesFunctionsLines
43.3%33.9%52.8%43.3%
+
+

Test Results by Integration File

+
+
+
+ + Contentstack001_LoginTest +
+
+ 11 passed · + 0 failed · + 0 skipped · + 11 total +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Test NameStatusDuration
+
✅ Test009_Should_Generate_TOTP_Token_With_Valid_MfaSecret
+

Assertions

+
+
AreEqual(StatusCode)
+
+
Expected:
UnprocessableEntity
+
Actual:
UnprocessableEntity
+
+
+
+
IsTrue(MFA error message check)
+
+
Expected:
True
+
Actual:
True
+
+
+
+ Test Context + + + + +
TestScenarioValidMfaSecret
+
Passed1.18s
+
✅ Test005_Should_Return_Loggedin_User
+

Assertions

+
+
IsNotNull(user)
+
+
Expected:
NotNull
+
Actual:
{
+  "user": {
+    "uid": "blt1930fc55e5669df9",
+    "created_at": "2026-01-08T05:36:36.548Z",
+    "updated_at": "2026-03-13T02:33:18.172Z",
+    "email": "om.pawar@contentstack.com",
+    "username": "om_bltd30a4c66",
+    "first_name": "OM",
+    "last_name": "PAWAR",
+    "org_uid": [],
+    "shared_org_uid": [
+      "bltc27b596a90cf8edc",
+      "blt8d282118e2094bb8"
+    ],
+    "active": true,
+    "failed_attempts": 0,
+    "last_login_at": "2026-03-13T02:33:18.172Z",
+    "password_updated_at": "2026-01-08T06:08:52.139Z",
+    "password_reset_required": false,
+    "roles": [
+      {
+        "uid": "bltac311a6c848e575e",
+        "name": "Admin",
+        "description": "Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.",
+        "roles": [],
+        "created_at": "2023-12-19T09:09:51.744Z",
+        "updated_at": "2026-02-11T11:15:32.423Z",
+        "api_key": "bltf16a9d5b53d522d7"
+      },
+      {
+        "uid": "blt3e4a83f62c3ed726",
+        "name": "Developer",
+        "description": "Developer can perform all Content Manager's actions, view audit logs, create roles, invite users, manage content types, languages, and environments.",
+        "roles": [],
+        "created_at": "2026-01-08T05:35:15.205Z",
+        "updated_at": "2026-01-08T05:36:36.776Z",
+        "api_key": "blt2fe3288bcebfa8ae",
+        "rules": [
+          {
+            "module": "taxonomy",
+            "taxonomies": [
+              "$all"
+            ],
+            "terms": [
+              "$all.$all"
+            ],
+            "content_types": [
+              {
+                "uid": "$all",
+                "acl": {
+                  "read": true,
+                  "sub_acl": {
+                    "read": true,
+                    "create": true,
+                    "update": true,
+                    "delete": true,
+                    "publish": true
+                  }
+                }
+              }
+            ],
+            "acl": {
+              "read": true,
+              "sub_acl": {
+                "read": true,
+                "create": true,
+                "update": true,
+                "delete": true,
+                "publish": true
+              }
+            }
+          },
+          {
+            "module": "locale",
+            "locales": [
+              "$all"
+            ]
+          },
+          {
+            "module": "environment",
+            "environments": [
+              "$all"
+            ]
+          },
+          {
+            "module": "asset",
+            "assets": [
+              "$all"
+            ],
+            "acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true,
+              "publish": true
+            }
+          }
+        ]
+      },
+      {
+        "uid": "blte050fa9e897278d5",
+        "name": "Admin",
+        "description": "Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.",
+        "roles": [],
+        "created_at": "2026-01-08T05:35:15.205Z",
+        "updated_at": "2026-01-08T05:36:36.776Z",
+        "api_key": "blt2fe3288bcebfa8ae"
+      },
+      {
+        "uid": "blt167f15fb55232230",
+        "name": "Admin",
+        "description": "Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.",
+        "created_at": "2026-03-06T15:18:49.942Z",
+        "updated_at": "2026-03-06T15:18:49.942Z",
+        "api_key": "blta23060d14351eb10"
+      }
+    ],
+    "organizations": [
+      {
+        "uid": "bltc27b596a90cf8edc",
+        "name": "Devfest sept 2022",
+        "plan_id": "copy_of_cs_qa_test",
+        "expires_on": "2031-12-30T00:00:00Z",
+        "enabled": true,
+        "is_over_usage_allowed": true,
+        "created_at": "2022-09-08T09:39:29.233Z",
+        "updated_at": "2025-07-15T09:46:32.058Z",
+        "tags": [
+          "employee"
+        ]
+      },
+      {
+        "uid": "blt8d282118e2094bb8",
+        "name": "SDK org",
+        "plan_id": "sdk_branch_plan",
+        "expires_on": "2029-12-21T00:00:00Z",
+        "enabled": true,
+        "is_over_usage_allowed": true,
+        "created_at": "2023-05-15T05:46:26.262Z",
+        "updated_at": "2025-03-17T06:07:47.263Z",
+        "tags": [
+          "testing"
+        ]
+      }
+    ]
+  }
+}
+
+
+
+ Test Context + + + + +
TestScenarioGetUser
+
Passed1.48s
+
✅ Test003_Should_Return_Success_On_Async_Login
+

Assertions

+
+
IsNotNull(Authtoken)
+
+
Expected:
NotNull
+
Actual:
blte273a998f71b31a3
+
+
+
+
IsNotNull(loginResponse)
+
+
Expected:
NotNull
+
Actual:
{"notice":"Login Successful.","user":{"uid":"blt1930fc55e5669df9","created_at":"2026-01-08T05:36:36.548Z","updated_at":"2026-03-13T02:33:15.558Z","email":"om.pawar@contentstack.com","username":"om_bltd30a4c66","first_name":"OM","last_name":"PAWAR","org_uid":[],"shared_org_uid":["bltc27b596a90cf8edc","blt8d282118e2094bb8"],"active":true,"failed_attempts":0,"settings":{"global":[{"key":"favorite_stacks","value":[{"org_uid":"blt8d282118e2094bb8","stacks":[{"api_key":"blteda07f97e97feb91"}]},{"org_uid":"bltbe479f273f7e8624","stacks":[]}]}]},"last_login_at":"2026-03-13T02:33:15.558Z","password_updated_at":"2026-01-08T06:08:52.139Z","password_reset_required":false,"authtoken":"blte273a998f71b31a3","roles":[{"uid":"bltac311a6c848e575e","name":"Admin","description":"Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.","roles":[],"created_at":"2023-12-19T09:09:51.744Z","updated_at":"2026-02-11T11:15:32.423Z","api_key":"bltf16a9d5b53d522d7"},{"uid":"blt3e4a83f62c3ed726","name":"Developer","description":"Developer can perform all Content Manager's actions, view audit logs, create roles, invite users, manage content types, languages, and environments.","roles":[],"created_at":"2026-01-08T05:35:15.205Z","updated_at":"2026-01-08T05:36:36.776Z","api_key":"blt2fe3288bcebfa8ae","rules":[{"module":"taxonomy","taxonomies":["$all"],"terms":["$all.$all"],"content_types":[{"uid":"$all","acl":{"read":true,"sub_acl":{"read":true,"create":true,"update":true,"delete":true,"publish":true}}}],"acl":{"read":true,"sub_acl":{"read":true,"create":true,"update":true,"delete":true,"publish":true}}},{"module":"locale","locales":["$all"]},{"module":"environment","environments":["$all"]},{"module":"asset","assets":["$all"],"acl":{"create":true,"read":true,"update":true,"delete":true,"publish":true}}]},{"uid":"blte050fa9e897278d5","name":"Admin","description":"Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.","roles":[],"created_at":"2026-01-08T05:35:15.205Z","updated_at":"2026-01-08T05:36:36.776Z","api_key":"blt2fe3288bcebfa8ae"},{"uid":"blt167f15fb55232230","name":"Admin","description":"Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.","created_at":"2026-03-06T15:18:49.942Z","updated_at":"2026-03-06T15:18:49.942Z","api_key":"blta23060d14351eb10"}],"organizations":[{"uid":"bltc27b596a90cf8edc","name":"Devfest sept 2022","plan_id":"copy_of_cs_qa_test","expires_on":"2031-12-30T00:00:00.000Z","enabled":true,"is_over_usage_allowed":true,"created_at":"2022-09-08T09:39:29.233Z","updated_at":"2025-07-15T09:46:32.058Z","tags":["employee"]},{"uid":"blt8d282118e2094bb8","name":"SDK org","plan_id":"sdk_branch_plan","expires_on":"2029-12-21T00:00:00.000Z","enabled":true,"is_over_usage_allowed":true,"created_at":"2023-05-15T05:46:26.262Z","updated_at":"2025-03-17T06:07:47.263Z","tags":["testing"]}],"has_pending_invites":false}}
+
+
+
+ Test Context + + + + +
TestScenarioAsyncLoginSuccess
+
Passed1.53s
+
✅ Test006_Should_Return_Loggedin_User_Async
+

Assertions

+
+
IsNotNull(user)
+
+
Expected:
NotNull
+
Actual:
{
+  "user": {
+    "uid": "blt1930fc55e5669df9",
+    "created_at": "2026-01-08T05:36:36.548Z",
+    "updated_at": "2026-03-13T02:33:21.137Z",
+    "email": "om.pawar@contentstack.com",
+    "username": "om_bltd30a4c66",
+    "first_name": "OM",
+    "last_name": "PAWAR",
+    "org_uid": [],
+    "shared_org_uid": [
+      "bltc27b596a90cf8edc",
+      "blt8d282118e2094bb8"
+    ],
+    "active": true,
+    "failed_attempts": 0,
+    "last_login_at": "2026-03-13T02:33:21.137Z",
+    "password_updated_at": "2026-01-08T06:08:52.139Z",
+    "password_reset_required": false,
+    "roles": [
+      {
+        "uid": "bltac311a6c848e575e",
+        "name": "Admin",
+        "description": "Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.",
+        "roles": [],
+        "created_at": "2023-12-19T09:09:51.744Z",
+        "updated_at": "2026-02-11T11:15:32.423Z",
+        "api_key": "bltf16a9d5b53d522d7"
+      },
+      {
+        "uid": "blt3e4a83f62c3ed726",
+        "name": "Developer",
+        "description": "Developer can perform all Content Manager's actions, view audit logs, create roles, invite users, manage content types, languages, and environments.",
+        "roles": [],
+        "created_at": "2026-01-08T05:35:15.205Z",
+        "updated_at": "2026-01-08T05:36:36.776Z",
+        "api_key": "blt2fe3288bcebfa8ae",
+        "rules": [
+          {
+            "module": "taxonomy",
+            "taxonomies": [
+              "$all"
+            ],
+            "terms": [
+              "$all.$all"
+            ],
+            "content_types": [
+              {
+                "uid": "$all",
+                "acl": {
+                  "read": true,
+                  "sub_acl": {
+                    "read": true,
+                    "create": true,
+                    "update": true,
+                    "delete": true,
+                    "publish": true
+                  }
+                }
+              }
+            ],
+            "acl": {
+              "read": true,
+              "sub_acl": {
+                "read": true,
+                "create": true,
+                "update": true,
+                "delete": true,
+                "publish": true
+              }
+            }
+          },
+          {
+            "module": "locale",
+            "locales": [
+              "$all"
+            ]
+          },
+          {
+            "module": "environment",
+            "environments": [
+              "$all"
+            ]
+          },
+          {
+            "module": "asset",
+            "assets": [
+              "$all"
+            ],
+            "acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true,
+              "publish": true
+            }
+          }
+        ]
+      },
+      {
+        "uid": "blte050fa9e897278d5",
+        "name": "Admin",
+        "description": "Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.",
+        "roles": [],
+        "created_at": "2026-01-08T05:35:15.205Z",
+        "updated_at": "2026-01-08T05:36:36.776Z",
+        "api_key": "blt2fe3288bcebfa8ae"
+      },
+      {
+        "uid": "blt167f15fb55232230",
+        "name": "Admin",
+        "description": "Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.",
+        "created_at": "2026-03-06T15:18:49.942Z",
+        "updated_at": "2026-03-06T15:18:49.942Z",
+        "api_key": "blta23060d14351eb10"
+      }
+    ],
+    "organizations": [
+      {
+        "uid": "bltc27b596a90cf8edc",
+        "name": "Devfest sept 2022",
+        "plan_id": "copy_of_cs_qa_test",
+        "expires_on": "2031-12-30T00:00:00Z",
+        "enabled": true,
+        "is_over_usage_allowed": true,
+        "created_at": "2022-09-08T09:39:29.233Z",
+        "updated_at": "2025-07-15T09:46:32.058Z",
+        "tags": [
+          "employee"
+        ]
+      },
+      {
+        "uid": "blt8d282118e2094bb8",
+        "name": "SDK org",
+        "plan_id": "sdk_branch_plan",
+        "expires_on": "2029-12-21T00:00:00Z",
+        "enabled": true,
+        "is_over_usage_allowed": true,
+        "created_at": "2023-05-15T05:46:26.262Z",
+        "updated_at": "2025-03-17T06:07:47.263Z",
+        "tags": [
+          "testing"
+        ]
+      }
+    ]
+  }
+}
+
+
+
+
IsNotNull(organizations)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "uid": "bltc27b596a90cf8edc",
+    "name": "Devfest sept 2022",
+    "plan_id": "copy_of_cs_qa_test",
+    "expires_on": "2031-12-30T00:00:00Z",
+    "enabled": true,
+    "is_over_usage_allowed": true,
+    "created_at": "2022-09-08T09:39:29.233Z",
+    "updated_at": "2025-07-15T09:46:32.058Z",
+    "tags": [
+      "employee"
+    ]
+  },
+  {
+    "uid": "blt8d282118e2094bb8",
+    "name": "SDK org",
+    "plan_id": "sdk_branch_plan",
+    "expires_on": "2029-12-21T00:00:00Z",
+    "enabled": true,
+    "is_over_usage_allowed": true,
+    "created_at": "2023-05-15T05:46:26.262Z",
+    "updated_at": "2025-03-17T06:07:47.263Z",
+    "tags": [
+      "testing"
+    ]
+  }
+]
+
+
+
+
IsInstanceOfType(organizations)
+
+
Expected:
JArray
+
Actual:
JArray
+
+
+
+
IsNull(org_roles)
+
+
Expected:
null
+
Actual:
null
+
+
+
+ Test Context + + + + +
TestScenarioGetUserAsync
+
Passed2.97s
+
✅ Test011_Should_Prefer_Explicit_Token_Over_MfaSecret
+

Assertions

+
+
AreEqual(StatusCode)
+
+
Expected:
UnprocessableEntity
+
Actual:
UnprocessableEntity
+
+
+
+ Test Context + + + + +
TestScenarioExplicitTokenOverMfa
+
Passed1.41s
+
✅ Test010_Should_Generate_TOTP_Token_With_Valid_MfaSecret_Async
+

Assertions

+
+
AreEqual(StatusCode)
+
+
Expected:
UnprocessableEntity
+
Actual:
UnprocessableEntity
+
+
+
+
IsTrue(MFA error message check)
+
+
Expected:
True
+
Actual:
True
+
+
+
+ Test Context + + + + +
TestScenarioValidMfaSecretAsync
+
Passed1.28s
+
✅ Test002_Should_Return_Failuer_On_Wrong_Async_Login_Credentials
+

Assertions

+
+
AreEqual(StatusCode)
+
+
Expected:
UnprocessableEntity
+
Actual:
UnprocessableEntity
+
+
+
+
AreEqual(Message)
+
+
Expected:
Looks like your email or password is invalid. Please try again or reset your password.
+
Actual:
Looks like your email or password is invalid. Please try again or reset your password.
+
+
+
+
AreEqual(ErrorMessage)
+
+
Expected:
Looks like your email or password is invalid. Please try again or reset your password.
+
Actual:
Looks like your email or password is invalid. Please try again or reset your password.
+
+
+
+
AreEqual(ErrorCode)
+
+
Expected:
104
+
Actual:
104
+
+
+
+ Test Context + + + + +
TestScenarioWrongCredentialsAsync
+
Passed3.00s
+
✅ Test004_Should_Return_Success_On_Login
+

Assertions

+
+
IsNotNull(Authtoken)
+
+
Expected:
NotNull
+
Actual:
bltfab616501a6f84c4
+
+
+
+
IsNotNull(loginResponse)
+
+
Expected:
NotNull
+
Actual:
{"notice":"Login Successful.","user":{"uid":"blt1930fc55e5669df9","created_at":"2026-01-08T05:36:36.548Z","updated_at":"2026-03-13T02:33:17.008Z","email":"om.pawar@contentstack.com","username":"om_bltd30a4c66","first_name":"OM","last_name":"PAWAR","org_uid":[],"shared_org_uid":["bltc27b596a90cf8edc","blt8d282118e2094bb8"],"active":true,"failed_attempts":0,"settings":{"global":[{"key":"favorite_stacks","value":[{"org_uid":"blt8d282118e2094bb8","stacks":[{"api_key":"blteda07f97e97feb91"}]},{"org_uid":"bltbe479f273f7e8624","stacks":[]}]}]},"last_login_at":"2026-03-13T02:33:17.008Z","password_updated_at":"2026-01-08T06:08:52.139Z","password_reset_required":false,"authtoken":"bltfab616501a6f84c4","roles":[{"uid":"bltac311a6c848e575e","name":"Admin","description":"Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.","roles":[],"created_at":"2023-12-19T09:09:51.744Z","updated_at":"2026-02-11T11:15:32.423Z","api_key":"bltf16a9d5b53d522d7"},{"uid":"blt3e4a83f62c3ed726","name":"Developer","description":"Developer can perform all Content Manager's actions, view audit logs, create roles, invite users, manage content types, languages, and environments.","roles":[],"created_at":"2026-01-08T05:35:15.205Z","updated_at":"2026-01-08T05:36:36.776Z","api_key":"blt2fe3288bcebfa8ae","rules":[{"module":"taxonomy","taxonomies":["$all"],"terms":["$all.$all"],"content_types":[{"uid":"$all","acl":{"read":true,"sub_acl":{"read":true,"create":true,"update":true,"delete":true,"publish":true}}}],"acl":{"read":true,"sub_acl":{"read":true,"create":true,"update":true,"delete":true,"publish":true}}},{"module":"locale","locales":["$all"]},{"module":"environment","environments":["$all"]},{"module":"asset","assets":["$all"],"acl":{"create":true,"read":true,"update":true,"delete":true,"publish":true}}]},{"uid":"blte050fa9e897278d5","name":"Admin","description":"Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.","roles":[],"created_at":"2026-01-08T05:35:15.205Z","updated_at":"2026-01-08T05:36:36.776Z","api_key":"blt2fe3288bcebfa8ae"},{"uid":"blt167f15fb55232230","name":"Admin","description":"Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.","created_at":"2026-03-06T15:18:49.942Z","updated_at":"2026-03-06T15:18:49.942Z","api_key":"blta23060d14351eb10"}],"organizations":[{"uid":"bltc27b596a90cf8edc","name":"Devfest sept 2022","plan_id":"copy_of_cs_qa_test","expires_on":"2031-12-30T00:00:00.000Z","enabled":true,"is_over_usage_allowed":true,"created_at":"2022-09-08T09:39:29.233Z","updated_at":"2025-07-15T09:46:32.058Z","tags":["employee"]},{"uid":"blt8d282118e2094bb8","name":"SDK org","plan_id":"sdk_branch_plan","expires_on":"2029-12-21T00:00:00.000Z","enabled":true,"is_over_usage_allowed":true,"created_at":"2023-05-15T05:46:26.262Z","updated_at":"2025-03-17T06:07:47.263Z","tags":["testing"]}],"has_pending_invites":false}}
+
+
+
+ Test Context + + + + +
TestScenarioSyncLoginSuccess
+
Passed1.12s
+
✅ Test007_Should_Return_Loggedin_User_With_Organizations_detail
+

Assertions

+
+
IsNotNull(user)
+
+
Expected:
NotNull
+
Actual:
{
+  "user": {
+    "uid": "blt1930fc55e5669df9",
+    "created_at": "2026-01-08T05:36:36.548Z",
+    "updated_at": "2026-03-13T02:33:22.659Z",
+    "email": "om.pawar@contentstack.com",
+    "username": "om_bltd30a4c66",
+    "first_name": "OM",
+    "last_name": "PAWAR",
+    "org_uid": [],
+    "shared_org_uid": [
+      "bltc27b596a90cf8edc",
+      "blt8d282118e2094bb8"
+    ],
+    "active": true,
+    "failed_attempts": 0,
+    "last_login_at": "2026-03-13T02:33:22.658Z",
+    "password_updated_at": "2026-01-08T06:08:52.139Z",
+    "password_reset_required": false,
+    "roles": [
+      {
+        "uid": "bltac311a6c848e575e",
+        "name": "Admin",
+        "description": "Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.",
+        "roles": [],
+        "created_at": "2023-12-19T09:09:51.744Z",
+        "updated_at": "2026-02-11T11:15:32.423Z",
+        "api_key": "bltf16a9d5b53d522d7"
+      },
+      {
+        "uid": "blt3e4a83f62c3ed726",
+        "name": "Developer",
+        "description": "Developer can perform all Content Manager's actions, view audit logs, create roles, invite users, manage content types, languages, and environments.",
+        "roles": [],
+        "created_at": "2026-01-08T05:35:15.205Z",
+        "updated_at": "2026-01-08T05:36:36.776Z",
+        "api_key": "blt2fe3288bcebfa8ae",
+        "rules": [
+          {
+            "module": "taxonomy",
+            "taxonomies": [
+              "$all"
+            ],
+            "terms": [
+              "$all.$all"
+            ],
+            "content_types": [
+              {
+                "uid": "$all",
+                "acl": {
+                  "read": true,
+                  "sub_acl": {
+                    "read": true,
+                    "create": true,
+                    "update": true,
+                    "delete": true,
+                    "publish": true
+                  }
+                }
+              }
+            ],
+            "acl": {
+              "read": true,
+              "sub_acl": {
+                "read": true,
+                "create": true,
+                "update": true,
+                "delete": true,
+                "publish": true
+              }
+            }
+          },
+          {
+            "module": "locale",
+            "locales": [
+              "$all"
+            ]
+          },
+          {
+            "module": "environment",
+            "environments": [
+              "$all"
+            ]
+          },
+          {
+            "module": "asset",
+            "assets": [
+              "$all"
+            ],
+            "acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true,
+              "publish": true
+            }
+          }
+        ]
+      },
+      {
+        "uid": "blte050fa9e897278d5",
+        "name": "Admin",
+        "description": "Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.",
+        "roles": [],
+        "created_at": "2026-01-08T05:35:15.205Z",
+        "updated_at": "2026-01-08T05:36:36.776Z",
+        "api_key": "blt2fe3288bcebfa8ae"
+      },
+      {
+        "uid": "blt167f15fb55232230",
+        "name": "Admin",
+        "description": "Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.",
+        "created_at": "2026-03-06T15:18:49.942Z",
+        "updated_at": "2026-03-06T15:18:49.942Z",
+        "api_key": "blta23060d14351eb10"
+      }
+    ],
+    "organizations": [
+      {
+        "uid": "bltc27b596a90cf8edc",
+        "name": "Devfest sept 2022",
+        "plan_id": "copy_of_cs_qa_test",
+        "expires_on": "2031-12-30T00:00:00Z",
+        "enabled": true,
+        "is_over_usage_allowed": true,
+        "created_at": "2022-09-08T09:39:29.233Z",
+        "updated_at": "2025-07-15T09:46:32.058Z",
+        "tags": [
+          "employee"
+        ],
+        "org_roles": [
+          {
+            "uid": "blt38770ac252ae1352",
+            "name": "admin",
+            "description": "Admin role has full access to org admin related features",
+            "org_uid": "bltc27b596a90cf8edc",
+            "owner_uid": "blte4e676b5c330f66c",
+            "admin": true,
+            "default": true,
+            "permissions": [
+              "org.info:read",
+              "org.analytics:read",
+              "org.stacks:read",
+              "org.users:read",
+              "org.users:write",
+              "org.users:delete",
+              "org.users:unlock",
+              "org.roles:read",
+              "org.roles:write",
+              "org.roles:delete",
+              "org.scim:read",
+              "org.scim:write",
+              "org.bulk_task_queue:read",
+              "org.bulk_task_queue:write",
+              "org.teams:read",
+              "org.teams:write",
+              "org.teams:delete",
+              "org.security_config:read",
+              "org.security_config:write",
+              "org.webhooks_config:read",
+              "org.webhooks_config:write",
+              "org.audit_logs:read",
+              "am.spaces:create",
+              "am.fields:read",
+              "am.fields:create",
+              "am.fields:edit",
+              "am.fields:delete",
+              "am.asset_types:read",
+              "am.asset_types:create",
+              "am.asset_types:edit",
+              "am.asset_types:delete",
+              "am.users:read",
+              "am.users:create",
+              "am.users:edit",
+              "am.users:delete",
+              "am.roles:read",
+              "am.roles:create",
+              "am.roles:edit",
+              "am.roles:delete",
+              "am.languages:create",
+              "am.languages:read",
+              "am.languages:edit",
+              "am.languages:delete"
+            ],
+            "domain": "organization"
+          }
+        ]
+      },
+      {
+        "uid": "blt8d282118e2094bb8",
+        "name": "SDK org",
+        "plan_id": "sdk_branch_plan",
+        "expires_on": "2029-12-21T00:00:00Z",
+        "enabled": true,
+        "is_over_usage_allowed": true,
+        "created_at": "2023-05-15T05:46:26.262Z",
+        "updated_at": "2025-03-17T06:07:47.263Z",
+        "tags": [
+          "testing"
+        ],
+        "org_roles": [
+          {
+            "uid": "bltb8a7ba0eb93838aa",
+            "name": "admin",
+            "description": "Admin role has full access to org admin related features",
+            "org_uid": "blt8d282118e2094bb8",
+            "owner_uid": "bltc11e668e0295477f",
+            "admin": true,
+            "default": true,
+            "permissions": [
+              "org.info:read",
+              "org.analytics:read",
+              "org.stacks:read",
+              "org.users:read",
+              "org.users:write",
+              "org.users:delete",
+              "org.users:unlock",
+              "org.roles:read",
+              "org.roles:write",
+              "org.roles:delete",
+              "org.scim:read",
+              "org.scim:write",
+              "org.bulk_task_queue:read",
+              "org.bulk_task_queue:write",
+              "org.teams:read",
+              "org.teams:write",
+              "org.teams:delete",
+              "org.security_config:read",
+              "org.security_config:write",
+              "org.webhooks_config:read",
+              "org.webhooks_config:write",
+              "org.audit_logs:read",
+              "am.spaces:create",
+              "am.fields:read",
+              "am.fields:create",
+              "am.fields:edit",
+              "am.fields:delete",
+              "am.asset_types:read",
+              "am.asset_types:create",
+              "am.asset_types:edit",
+              "am.asset_types:delete",
+              "am.users:read",
+              "am.users:create",
+              "am.users:edit",
+              "am.users:delete",
+              "am.roles:read",
+              "am.roles:create",
+              "am.roles:edit",
+              "am.roles:delete",
+              "am.languages:create",
+              "am.languages:read",
+              "am.languages:edit",
+              "am.languages:delete"
+            ],
+            "domain": "organization"
+          }
+        ]
+      }
+    ]
+  }
+}
+
+
+
+
IsNotNull(organizations)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "uid": "bltc27b596a90cf8edc",
+    "name": "Devfest sept 2022",
+    "plan_id": "copy_of_cs_qa_test",
+    "expires_on": "2031-12-30T00:00:00Z",
+    "enabled": true,
+    "is_over_usage_allowed": true,
+    "created_at": "2022-09-08T09:39:29.233Z",
+    "updated_at": "2025-07-15T09:46:32.058Z",
+    "tags": [
+      "employee"
+    ],
+    "org_roles": [
+      {
+        "uid": "blt38770ac252ae1352",
+        "name": "admin",
+        "description": "Admin role has full access to org admin related features",
+        "org_uid": "bltc27b596a90cf8edc",
+        "owner_uid": "blte4e676b5c330f66c",
+        "admin": true,
+        "default": true,
+        "permissions": [
+          "org.info:read",
+          "org.analytics:read",
+          "org.stacks:read",
+          "org.users:read",
+          "org.users:write",
+          "org.users:delete",
+          "org.users:unlock",
+          "org.roles:read",
+          "org.roles:write",
+          "org.roles:delete",
+          "org.scim:read",
+          "org.scim:write",
+          "org.bulk_task_queue:read",
+          "org.bulk_task_queue:write",
+          "org.teams:read",
+          "org.teams:write",
+          "org.teams:delete",
+          "org.security_config:read",
+          "org.security_config:write",
+          "org.webhooks_config:read",
+          "org.webhooks_config:write",
+          "org.audit_logs:read",
+          "am.spaces:create",
+          "am.fields:read",
+          "am.fields:create",
+          "am.fields:edit",
+          "am.fields:delete",
+          "am.asset_types:read",
+          "am.asset_types:create",
+          "am.asset_types:edit",
+          "am.asset_types:delete",
+          "am.users:read",
+          "am.users:create",
+          "am.users:edit",
+          "am.users:delete",
+          "am.roles:read",
+          "am.roles:create",
+          "am.roles:edit",
+          "am.roles:delete",
+          "am.languages:create",
+          "am.languages:read",
+          "am.languages:edit",
+          "am.languages:delete"
+        ],
+        "domain": "organization"
+      }
+    ]
+  },
+  {
+    "uid": "blt8d282118e2094bb8",
+    "name": "SDK org",
+    "plan_id": "sdk_branch_plan",
+    "expires_on": "2029-12-21T00:00:00Z",
+    "enabled": true,
+    "is_over_usage_allowed": true,
+    "created_at": "2023-05-15T05:46:26.262Z",
+    "updated_at": "2025-03-17T06:07:47.263Z",
+    "tags": [
+      "testing"
+    ],
+    "org_roles": [
+      {
+        "uid": "bltb8a7ba0eb93838aa",
+        "name": "admin",
+        "description": "Admin role has full access to org admin related features",
+        "org_uid": "blt8d282118e2094bb8",
+        "owner_uid": "bltc11e668e0295477f",
+        "admin": true,
+        "default": true,
+        "permissions": [
+          "org.info:read",
+          "org.analytics:read",
+          "org.stacks:read",
+          "org.users:read",
+          "org.users:write",
+          "org.users:delete",
+          "org.users:unlock",
+          "org.roles:read",
+          "org.roles:write",
+          "org.roles:delete",
+          "org.scim:read",
+          "org.scim:write",
+          "org.bulk_task_queue:read",
+          "org.bulk_task_queue:write",
+          "org.teams:read",
+          "org.teams:write",
+          "org.teams:delete",
+          "org.security_config:read",
+          "org.security_config:write",
+          "org.webhooks_config:read",
+          "org.webhooks_config:write",
+          "org.audit_logs:read",
+          "am.spaces:create",
+          "am.fields:read",
+          "am.fields:create",
+          "am.fields:edit",
+          "am.fields:delete",
+          "am.asset_types:read",
+          "am.asset_types:create",
+          "am.asset_types:edit",
+          "am.asset_types:delete",
+          "am.users:read",
+          "am.users:create",
+          "am.users:edit",
+          "am.users:delete",
+          "am.roles:read",
+          "am.roles:create",
+          "am.roles:edit",
+          "am.roles:delete",
+          "am.languages:create",
+          "am.languages:read",
+          "am.languages:edit",
+          "am.languages:delete"
+        ],
+        "domain": "organization"
+      }
+    ]
+  }
+]
+
+
+
+
IsInstanceOfType(organizations)
+
+
Expected:
JArray
+
Actual:
JArray
+
+
+
+
IsNotNull(org_roles)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "uid": "blt38770ac252ae1352",
+    "name": "admin",
+    "description": "Admin role has full access to org admin related features",
+    "org_uid": "bltc27b596a90cf8edc",
+    "owner_uid": "blte4e676b5c330f66c",
+    "admin": true,
+    "default": true,
+    "permissions": [
+      "org.info:read",
+      "org.analytics:read",
+      "org.stacks:read",
+      "org.users:read",
+      "org.users:write",
+      "org.users:delete",
+      "org.users:unlock",
+      "org.roles:read",
+      "org.roles:write",
+      "org.roles:delete",
+      "org.scim:read",
+      "org.scim:write",
+      "org.bulk_task_queue:read",
+      "org.bulk_task_queue:write",
+      "org.teams:read",
+      "org.teams:write",
+      "org.teams:delete",
+      "org.security_config:read",
+      "org.security_config:write",
+      "org.webhooks_config:read",
+      "org.webhooks_config:write",
+      "org.audit_logs:read",
+      "am.spaces:create",
+      "am.fields:read",
+      "am.fields:create",
+      "am.fields:edit",
+      "am.fields:delete",
+      "am.asset_types:read",
+      "am.asset_types:create",
+      "am.asset_types:edit",
+      "am.asset_types:delete",
+      "am.users:read",
+      "am.users:create",
+      "am.users:edit",
+      "am.users:delete",
+      "am.roles:read",
+      "am.roles:create",
+      "am.roles:edit",
+      "am.roles:delete",
+      "am.languages:create",
+      "am.languages:read",
+      "am.languages:edit",
+      "am.languages:delete"
+    ],
+    "domain": "organization"
+  }
+]
+
+
+
+ Test Context + + + + +
TestScenarioGetUserWithOrgRoles
+
Passed1.53s
+
✅ Test008_Should_Fail_Login_With_Invalid_MfaSecret
+

Assertions

+
+
IsTrue(ArgumentException thrown as expected)
+
+
Expected:
True
+
Actual:
True
+
+
+
+ Test Context + + + + +
TestScenarioInvalidMfaSecret
+
Passed0.00s
+
✅ Test001_Should_Return_Failuer_On_Wrong_Login_Credentials
+

Assertions

+
+
AreEqual(StatusCode)
+
+
Expected:
UnprocessableEntity
+
Actual:
UnprocessableEntity
+
+
+
+
AreEqual(Message)
+
+
Expected:
Looks like your email or password is invalid. Please try again or reset your password.
+
Actual:
Looks like your email or password is invalid. Please try again or reset your password.
+
+
+
+
AreEqual(ErrorMessage)
+
+
Expected:
Looks like your email or password is invalid. Please try again or reset your password.
+
Actual:
Looks like your email or password is invalid. Please try again or reset your password.
+
+
+
+
AreEqual(ErrorCode)
+
+
Expected:
104
+
Actual:
104
+
+
+
+ Test Context + + + + +
TestScenarioWrongCredentials
+
Passed1.21s
+
+
+ +
+
+
+ + Contentstack002_OrganisationTest +
+
+ 17 passed · + 0 failed · + 0 skipped · + 17 total +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Test NameStatusDuration
+
✅ Test002_Should_Return_All_OrganizationsAsync
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "organizations": [
+    {
+      "uid": "bltc27b596a90cf8edc",
+      "name": "Devfest sept 2022",
+      "plan_id": "copy_of_cs_qa_test",
+      "owner_uid": "blte4e676b5c330f66c",
+      "expires_on": "2031-12-30T00:00:00Z",
+      "enabled": true,
+      "is_over_usage_allowed": true,
+      "created_at": "2022-09-08T09:39:29.233Z",
+      "updated_at": "2025-07-15T09:46:32.058Z",
+      "settings": {
+        "blockAuthQueryParams": true,
+        "allowedCDNTokens": [
+          "access_token"
+        ]
+      },
+      "tags": [
+        "employee"
+      ]
+    },
+    {
+      "uid": "blt8d282118e2094bb8",
+      "name": "SDK org",
+      "plan_id": "sdk_branch_plan",
+      "owner_uid": "blt37ba39e03b130064",
+      "is_transfer_set": false,
+      "expires_on": "2029-12-21T00:00:00Z",
+      "enabled": true,
+      "is_over_usage_allowed": true,
+      "created_at": "2023-05-15T05:46:26.262Z",
+      "updated_at": "2025-03-17T06:07:47.263Z",
+      "settings": {
+        "blockAuthQueryParams": true,
+        "allowedCDNTokens": [
+          "access_token"
+        ]
+      },
+      "tags": [
+        "testing"
+      ]
+    }
+  ]
+}
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/organizations
+
Request Headers
authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/organizations' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:28 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-runtime: 9ms
+X-Request-ID: c543fd92-72cb-451e-ae3b-74bb2c0edc81
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "organizations": [
+    {
+      "uid": "bltc27b596a90cf8edc",
+      "name": "Devfest sept 2022",
+      "plan_id": "copy_of_cs_qa_test",
+      "owner_uid": "blte4e676b5c330f66c",
+      "expires_on": "2031-12-30T00:00:00.000Z",
+      "enabled": true,
+      "is_over_usage_allowed": true,
+      "created_at": "2022-09-08T09:39:29.233Z",
+      "updated_at": "2025-07-15T09:46:32.058Z",
+      "settings": {
+        "blockAuthQueryParams": true,
+        "allowedCDNTokens": [
+          "access_token"
+        ]
+      },
+      "tags": [
+        "employee"
+      ]
+    },
+    {
+      "uid": "blt8d282118e2094bb8",
+      "name": "SDK org",
+      "plan_id": "sdk_branch_plan",
+      "owner_uid": "blt37ba39e03b130064",
+      "is_transfer_set": false,
+      "expires_on": "2029-12-21T00:00:00.000Z",
+      "enabled": true,
+      "is_over_usage_allowed": true,
+      "created_at": "2023-05-15T05:46:26.262Z",
+      "updated_at": "2025-03-17T06:07:47.263Z",
+      "settings": {
+        "blockAuthQueryParams": true,
+        "allowedCDNTokens": [
+          "access_token"
+        ]
+      },
+      "tags": [
+        "testing"
+      ]
+    }
+  ]
+}
+
+ Test Context + + + + +
TestScenarioGetAllOrganizationsAsync
+
Passed0.29s
+
✅ Test008_Should_Add_User_To_Organization
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "notice": "The invitation has been sent successfully.",
+  "shares": [
+    {
+      "uid": "bltbd1e5e658d86592f",
+      "email": "testcs@contentstack.com",
+      "user_uid": "bltdfb5035a5e13faa8",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "blt802c2cf444969bc3"
+      ],
+      "invited_by": "blt1930fc55e5669df9",
+      "invited_at": "2026-03-13T02:33:30.662Z",
+      "status": "pending",
+      "created_at": "2026-03-13T02:33:30.66Z",
+      "updated_at": "2026-03-13T02:33:30.66Z"
+    }
+  ]
+}
+
+
+
+
AreEqual(sharesCount)
+
+
Expected:
1
+
Actual:
1
+
+
+
+
AreEqual(notice)
+
+
Expected:
The invitation has been sent successfully.
+
Actual:
The invitation has been sent successfully.
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share
+
Request Headers
authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 71
+Content-Type: application/json
+
Request Body
{"share":{"users":{"testcs@contentstack.com":["blt802c2cf444969bc3"]}}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 71' \
+  -H 'Content-Type: application/json' \
+  -d '{"share":{"users":{"testcs@contentstack.com":["blt802c2cf444969bc3"]}}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:30 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 57ms
+X-Request-ID: 4be76c02-7120-485a-bb1b-d2e223dd2b66
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "The invitation has been sent successfully.",
+  "shares": [
+    {
+      "uid": "bltbd1e5e658d86592f",
+      "email": "testcs@contentstack.com",
+      "user_uid": "bltdfb5035a5e13faa8",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "blt802c2cf444969bc3"
+      ],
+      "invited_by": "blt1930fc55e5669df9",
+      "invited_at": "2026-03-13T02:33:30.662Z",
+      "status": "pending",
+      "created_at": "2026-03-13T02:33:30.660Z",
+      "updated_at": "2026-03-13T02:33:30.660Z"
+    }
+  ]
+}
+
+ Test Context + + + + +
TestScenarioAddUserToOrg
+
Passed0.35s
+
✅ Test001_Should_Return_All_Organizations
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "organizations": [
+    {
+      "uid": "bltc27b596a90cf8edc",
+      "name": "Devfest sept 2022",
+      "plan_id": "copy_of_cs_qa_test",
+      "owner_uid": "blte4e676b5c330f66c",
+      "expires_on": "2031-12-30T00:00:00Z",
+      "enabled": true,
+      "is_over_usage_allowed": true,
+      "created_at": "2022-09-08T09:39:29.233Z",
+      "updated_at": "2025-07-15T09:46:32.058Z",
+      "settings": {
+        "blockAuthQueryParams": true,
+        "allowedCDNTokens": [
+          "access_token"
+        ]
+      },
+      "tags": [
+        "employee"
+      ]
+    },
+    {
+      "uid": "blt8d282118e2094bb8",
+      "name": "SDK org",
+      "plan_id": "sdk_branch_plan",
+      "owner_uid": "blt37ba39e03b130064",
+      "is_transfer_set": false,
+      "expires_on": "2029-12-21T00:00:00Z",
+      "enabled": true,
+      "is_over_usage_allowed": true,
+      "created_at": "2023-05-15T05:46:26.262Z",
+      "updated_at": "2025-03-17T06:07:47.263Z",
+      "settings": {
+        "blockAuthQueryParams": true,
+        "allowedCDNTokens": [
+          "access_token"
+        ]
+      },
+      "tags": [
+        "testing"
+      ]
+    }
+  ]
+}
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/organizations
+
Request Headers
authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/organizations' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:28 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-runtime: 13ms
+X-Request-ID: 35ce1746-1fa6-4e5a-beba-8f6f453a0c38
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "organizations": [
+    {
+      "uid": "bltc27b596a90cf8edc",
+      "name": "Devfest sept 2022",
+      "plan_id": "copy_of_cs_qa_test",
+      "owner_uid": "blte4e676b5c330f66c",
+      "expires_on": "2031-12-30T00:00:00.000Z",
+      "enabled": true,
+      "is_over_usage_allowed": true,
+      "created_at": "2022-09-08T09:39:29.233Z",
+      "updated_at": "2025-07-15T09:46:32.058Z",
+      "settings": {
+        "blockAuthQueryParams": true,
+        "allowedCDNTokens": [
+          "access_token"
+        ]
+      },
+      "tags": [
+        "employee"
+      ]
+    },
+    {
+      "uid": "blt8d282118e2094bb8",
+      "name": "SDK org",
+      "plan_id": "sdk_branch_plan",
+      "owner_uid": "blt37ba39e03b130064",
+      "is_transfer_set": false,
+      "expires_on": "2029-12-21T00:00:00.000Z",
+      "enabled": true,
+      "is_over_usage_allowed": true,
+      "created_at": "2023-05-15T05:46:26.262Z",
+      "updated_at": "2025-03-17T06:07:47.263Z",
+      "settings": {
+        "blockAuthQueryParams": true,
+        "allowedCDNTokens": [
+          "access_token"
+        ]
+      },
+      "tags": [
+        "testing"
+      ]
+    }
+  ]
+}
+
+ Test Context + + + + +
TestScenarioGetAllOrganizations
+
Passed1.50s
+
✅ Test007_Should_Return_Organization_RolesAsync
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "roles": [
+    {
+      "uid": "blt802c2cf444969bc3",
+      "name": "member",
+      "description": "Member role has read-only access to organization info",
+      "org_uid": "blt8d282118e2094bb8",
+      "owner_uid": "bltc11e668e0295477f",
+      "admin": false,
+      "default": true,
+      "users": [
+        "blt020de9168aaf378c",
+        "bltcd78b4313f5c14e9",
+        "blta4135beff83a5bd8",
+        "blt1fc241d9e7735ce5",
+        "blt18ff18daa1b288557ec8525d",
+        "blt9b9f5b60e4d0888f",
+        "bltcd145d6b20c55b33",
+        "blt8213bc6706786a3f",
+        "blt18d6a94bde0f8f1a",
+        "blt287ee2fb1289e5c5",
+        "blt286cb4a779238da5",
+        "blt8089bb1103a58c96",
+        "bltd05849bf58e89a89",
+        "bltdc6a4666c3bd956d",
+        "blt5343a15e88b3afab",
+        "bltcfdd4b7f0f6d14be",
+        "blt750e8fe2839714da"
+      ],
+      "permissions": [
+        "org.info:read"
+      ],
+      "domain": "organization",
+      "created_at": "2023-05-15T05:46:26.266Z",
+      "updated_at": "2026-03-12T12:35:36.623Z"
+    },
+    {
+      "uid": "bltb8a7ba0eb93838aa",
+      "name": "admin",
+      "description": "Admin role has full access to org admin related features",
+      "org_uid": "blt8d282118e2094bb8",
+      "owner_uid": "bltc11e668e0295477f",
+      "admin": true,
+      "default": true,
+      "users": [
+        "blt77cdb6f518e1940a",
+        "blt79e6de1c5230a991",
+        "blt484b7e4e3d1b7f76",
+        "blte9d0c9dd3a3677cd",
+        "blted7d8480391338f9",
+        "blt4c60a7a861d77460",
+        "blta03400731c5074a3",
+        "blt26d1b9acb52848e6",
+        "blt4dcb0345fae4731c",
+        "blt818cdd837f0ef17f",
+        "blta4bbe422a5a3be0c",
+        "blt5ffa2ada42ff6c6f",
+        "blt7308c3a62931255f",
+        "bltfd99a11f4cc6a299",
+        "blt8e9b3bbef2524228",
+        "blt1930fc55e5669df9"
+      ],
+      "permissions": [
+        "org.info:read",
+        "org.analytics:read",
+        "org.stacks:read",
+        "org.users:read",
+        "org.users:write",
+        "org.users:delete",
+        "org.users:unlock",
+        "org.roles:read",
+        "org.roles:write",
+        "org.roles:delete",
+        "org.scim:read",
+        "org.scim:write",
+        "org.bulk_task_queue:read",
+        "org.bulk_task_queue:write",
+        "org.teams:read",
+        "org.teams:write",
+        "org.teams:delete",
+        "org.security_config:read",
+        "org.security_config:write",
+        "org.webhooks_config:read",
+        "org.webhooks_config:write",
+        "org.audit_logs:read",
+        "am.spaces:create",
+        "am.fields:read",
+        "am.fields:create",
+        "am.fields:edit",
+        "am.fields:delete",
+        "am.asset_types:read",
+        "am.asset_types:create",
+        "am.asset_types:edit",
+        "am.asset_types:delete",
+        "am.users:read",
+        "am.users:create",
+        "am.users:edit",
+        "am.users:delete",
+        "am.roles:read",
+        "am.roles:create",
+        "am.roles:edit",
+        "am.roles:delete",
+        "am.languages:create",
+        "am.languages:read",
+        "am.languages:edit",
+        "am.languages:delete"
+      ],
+      "domain": "organization",
+      "created_at": "2023-05-15T05:46:26.266Z",
+      "updated_at": "2026-03-12T12:35:36.623Z"
+    }
+  ]
+}
+
+
+
+
IsNotNull(roles)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "uid": "blt802c2cf444969bc3",
+    "name": "member",
+    "description": "Member role has read-only access to organization info",
+    "org_uid": "blt8d282118e2094bb8",
+    "owner_uid": "bltc11e668e0295477f",
+    "admin": false,
+    "default": true,
+    "users": [
+      "blt020de9168aaf378c",
+      "bltcd78b4313f5c14e9",
+      "blta4135beff83a5bd8",
+      "blt1fc241d9e7735ce5",
+      "blt18ff18daa1b288557ec8525d",
+      "blt9b9f5b60e4d0888f",
+      "bltcd145d6b20c55b33",
+      "blt8213bc6706786a3f",
+      "blt18d6a94bde0f8f1a",
+      "blt287ee2fb1289e5c5",
+      "blt286cb4a779238da5",
+      "blt8089bb1103a58c96",
+      "bltd05849bf58e89a89",
+      "bltdc6a4666c3bd956d",
+      "blt5343a15e88b3afab",
+      "bltcfdd4b7f0f6d14be",
+      "blt750e8fe2839714da"
+    ],
+    "permissions": [
+      "org.info:read"
+    ],
+    "domain": "organization",
+    "created_at": "2023-05-15T05:46:26.266Z",
+    "updated_at": "2026-03-12T12:35:36.623Z"
+  },
+  {
+    "uid": "bltb8a7ba0eb93838aa",
+    "name": "admin",
+    "description": "Admin role has full access to org admin related features",
+    "org_uid": "blt8d282118e2094bb8",
+    "owner_uid": "bltc11e668e0295477f",
+    "admin": true,
+    "default": true,
+    "users": [
+      "blt77cdb6f518e1940a",
+      "blt79e6de1c5230a991",
+      "blt484b7e4e3d1b7f76",
+      "blte9d0c9dd3a3677cd",
+      "blted7d8480391338f9",
+      "blt4c60a7a861d77460",
+      "blta03400731c5074a3",
+      "blt26d1b9acb52848e6",
+      "blt4dcb0345fae4731c",
+      "blt818cdd837f0ef17f",
+      "blta4bbe422a5a3be0c",
+      "blt5ffa2ada42ff6c6f",
+      "blt7308c3a62931255f",
+      "bltfd99a11f4cc6a299",
+      "blt8e9b3bbef2524228",
+      "blt1930fc55e5669df9"
+    ],
+    "permissions": [
+      "org.info:read",
+      "org.analytics:read",
+      "org.stacks:read",
+      "org.users:read",
+      "org.users:write",
+      "org.users:delete",
+      "org.users:unlock",
+      "org.roles:read",
+      "org.roles:write",
+      "org.roles:delete",
+      "org.scim:read",
+      "org.scim:write",
+      "org.bulk_task_queue:read",
+      "org.bulk_task_queue:write",
+      "org.teams:read",
+      "org.teams:write",
+      "org.teams:delete",
+      "org.security_config:read",
+      "org.security_config:write",
+      "org.webhooks_config:read",
+      "org.webhooks_config:write",
+      "org.audit_logs:read",
+      "am.spaces:create",
+      "am.fields:read",
+      "am.fields:create",
+      "am.fields:edit",
+      "am.fields:delete",
+      "am.asset_types:read",
+      "am.asset_types:create",
+      "am.asset_types:edit",
+      "am.asset_types:delete",
+      "am.users:read",
+      "am.users:create",
+      "am.users:edit",
+      "am.users:delete",
+      "am.roles:read",
+      "am.roles:create",
+      "am.roles:edit",
+      "am.roles:delete",
+      "am.languages:create",
+      "am.languages:read",
+      "am.languages:edit",
+      "am.languages:delete"
+    ],
+    "domain": "organization",
+    "created_at": "2023-05-15T05:46:26.266Z",
+    "updated_at": "2026-03-12T12:35:36.623Z"
+  }
+]
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/roles
+
Request Headers
authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/roles' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:30 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 13ms
+X-Request-ID: 7ec63e15-2f75-4565-8f78-13bb1c90985c
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "roles": [
+    {
+      "uid": "blt802c2cf444969bc3",
+      "name": "member",
+      "description": "Member role has read-only access to organization info",
+      "org_uid": "blt8d282118e2094bb8",
+      "owner_uid": "bltc11e668e0295477f",
+      "admin": false,
+      "default": true,
+      "users": [
+        "blt020de9168aaf378c",
+        "bltcd78b4313f5c14e9",
+        "blta4135beff83a5bd8",
+        "blt1fc241d9e7735ce5",
+        "blt18ff18daa1b288557ec8525d",
+        "blt9b9f5b60e4d0888f",
+        "bltcd145d6b20c55b33",
+        "blt8213bc6706786a3f",
+        "blt18d6a94bde0f8f1a",
+        "blt287ee2fb1289e5c5",
+        "blt286cb4a779238da5",
+        "blt8089bb1103a58c96",
+        "bltd05849bf58e89a89",
+        "bltdc6a4666c3bd956d",
+        "blt5343a15e88b3afab",
+        "bltcfdd4b7f0f6d14be",
+        "blt750e8fe2839714da"
+      ],
+      "permissions": [
+        "org.info:read"
+      ],
+      "domain": "organization",
+      "created_at": "2023-05-15T05:46:26.266Z",
+      "updated_at": "2026-03-12T12:35:36.623Z"
+    },
+    {
+      "uid": "bltb8a7ba0eb93838aa",
+      "name": "admin",
+      "description": "Admin role has full access to org admin related features",
+      "org_uid": "blt8d282118e2094bb8",
+      "owner_uid": "bltc11e668e0295477f",
+      "admin": true,
+      "default": true,
+      "users": [
+        "blt77cdb6f518e1940a",
+        "blt79e6de1c5230a991",
+        "blt484b7e4e3d1b7f76",
+        "blte9d0c9dd3a3677cd",
+        "blted7d8480391338f9",
+        "blt4c60a7a861d77460",
+        "blta03400731c5074a3",
+        "blt26d1b9acb52848e6",
+        "blt4dcb0345fae4731c",
+        "blt818cdd837f0ef17f",
+        "blta4bbe422a5a3be0c",
+        "blt5ffa2ada42ff6c6f",
+        "blt7308c3a62931255f",
+        "bltfd99a11f4cc6a299",
+        "blt8e9b3bbef2524228",
+        "blt1930fc55e5669df9"
+      ],
+      "permissions": [
+        "org.info:read",
+        "org.analytics:read",
+        "org.stacks:read",
+        "org.users:read",
+        "org.users:write",
+        "org.users:delete",
+        "org.users:unlock",
+        "org.roles:read",
+        "org.roles:write",
+        "org.roles:delete",
+        "org.scim:read",
+        "org.scim:write",
+        "org.bulk_task_queue:read",
+        "org.bulk_task_queue:write",
+        "org.teams:read",
+        "org.teams:write",
+        "org.teams:delete",
+        "org.security_config:read",
+        "org.security_config:write",
+        "org.webhooks_config:read",
+        "org.webhooks_config:write",
+        "org.audit_logs:read",
+        "am.spaces:create",
+        "am.fields:read",
+        "am.fields:create",
+        "am.fields:edit",
+        "am.fields:delete",
+        "am.asset_types:read",
+        "am.asset_types:create",
+        "am.asset_types:edit",
+        "am.asset_types:delete",
+        "am.users:read",
+        "am.users:create",
+        "am.users:edit",
+        "am.users:delete",
+        "am.roles:read",
+        "am.roles:create",
+        "am.roles:edit",
+        "am.roles:delete",
+        "am.languages:
+
+ Test Context + + + + +
TestScenarioGetOrganizationRolesAsync
+
Passed0.30s
+
✅ Test006_Should_Return_Organization_Roles
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "roles": [
+    {
+      "uid": "blt802c2cf444969bc3",
+      "name": "member",
+      "description": "Member role has read-only access to organization info",
+      "org_uid": "blt8d282118e2094bb8",
+      "owner_uid": "bltc11e668e0295477f",
+      "admin": false,
+      "default": true,
+      "users": [
+        "blt020de9168aaf378c",
+        "bltcd78b4313f5c14e9",
+        "blta4135beff83a5bd8",
+        "blt1fc241d9e7735ce5",
+        "blt18ff18daa1b288557ec8525d",
+        "blt9b9f5b60e4d0888f",
+        "bltcd145d6b20c55b33",
+        "blt8213bc6706786a3f",
+        "blt18d6a94bde0f8f1a",
+        "blt287ee2fb1289e5c5",
+        "blt286cb4a779238da5",
+        "blt8089bb1103a58c96",
+        "bltd05849bf58e89a89",
+        "bltdc6a4666c3bd956d",
+        "blt5343a15e88b3afab",
+        "bltcfdd4b7f0f6d14be",
+        "blt750e8fe2839714da"
+      ],
+      "permissions": [
+        "org.info:read"
+      ],
+      "domain": "organization",
+      "created_at": "2023-05-15T05:46:26.266Z",
+      "updated_at": "2026-03-12T12:35:36.623Z"
+    },
+    {
+      "uid": "bltb8a7ba0eb93838aa",
+      "name": "admin",
+      "description": "Admin role has full access to org admin related features",
+      "org_uid": "blt8d282118e2094bb8",
+      "owner_uid": "bltc11e668e0295477f",
+      "admin": true,
+      "default": true,
+      "users": [
+        "blt77cdb6f518e1940a",
+        "blt79e6de1c5230a991",
+        "blt484b7e4e3d1b7f76",
+        "blte9d0c9dd3a3677cd",
+        "blted7d8480391338f9",
+        "blt4c60a7a861d77460",
+        "blta03400731c5074a3",
+        "blt26d1b9acb52848e6",
+        "blt4dcb0345fae4731c",
+        "blt818cdd837f0ef17f",
+        "blta4bbe422a5a3be0c",
+        "blt5ffa2ada42ff6c6f",
+        "blt7308c3a62931255f",
+        "bltfd99a11f4cc6a299",
+        "blt8e9b3bbef2524228",
+        "blt1930fc55e5669df9"
+      ],
+      "permissions": [
+        "org.info:read",
+        "org.analytics:read",
+        "org.stacks:read",
+        "org.users:read",
+        "org.users:write",
+        "org.users:delete",
+        "org.users:unlock",
+        "org.roles:read",
+        "org.roles:write",
+        "org.roles:delete",
+        "org.scim:read",
+        "org.scim:write",
+        "org.bulk_task_queue:read",
+        "org.bulk_task_queue:write",
+        "org.teams:read",
+        "org.teams:write",
+        "org.teams:delete",
+        "org.security_config:read",
+        "org.security_config:write",
+        "org.webhooks_config:read",
+        "org.webhooks_config:write",
+        "org.audit_logs:read",
+        "am.spaces:create",
+        "am.fields:read",
+        "am.fields:create",
+        "am.fields:edit",
+        "am.fields:delete",
+        "am.asset_types:read",
+        "am.asset_types:create",
+        "am.asset_types:edit",
+        "am.asset_types:delete",
+        "am.users:read",
+        "am.users:create",
+        "am.users:edit",
+        "am.users:delete",
+        "am.roles:read",
+        "am.roles:create",
+        "am.roles:edit",
+        "am.roles:delete",
+        "am.languages:create",
+        "am.languages:read",
+        "am.languages:edit",
+        "am.languages:delete"
+      ],
+      "domain": "organization",
+      "created_at": "2023-05-15T05:46:26.266Z",
+      "updated_at": "2026-03-12T12:35:36.623Z"
+    }
+  ]
+}
+
+
+
+
IsNotNull(roles)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "uid": "blt802c2cf444969bc3",
+    "name": "member",
+    "description": "Member role has read-only access to organization info",
+    "org_uid": "blt8d282118e2094bb8",
+    "owner_uid": "bltc11e668e0295477f",
+    "admin": false,
+    "default": true,
+    "users": [
+      "blt020de9168aaf378c",
+      "bltcd78b4313f5c14e9",
+      "blta4135beff83a5bd8",
+      "blt1fc241d9e7735ce5",
+      "blt18ff18daa1b288557ec8525d",
+      "blt9b9f5b60e4d0888f",
+      "bltcd145d6b20c55b33",
+      "blt8213bc6706786a3f",
+      "blt18d6a94bde0f8f1a",
+      "blt287ee2fb1289e5c5",
+      "blt286cb4a779238da5",
+      "blt8089bb1103a58c96",
+      "bltd05849bf58e89a89",
+      "bltdc6a4666c3bd956d",
+      "blt5343a15e88b3afab",
+      "bltcfdd4b7f0f6d14be",
+      "blt750e8fe2839714da"
+    ],
+    "permissions": [
+      "org.info:read"
+    ],
+    "domain": "organization",
+    "created_at": "2023-05-15T05:46:26.266Z",
+    "updated_at": "2026-03-12T12:35:36.623Z"
+  },
+  {
+    "uid": "bltb8a7ba0eb93838aa",
+    "name": "admin",
+    "description": "Admin role has full access to org admin related features",
+    "org_uid": "blt8d282118e2094bb8",
+    "owner_uid": "bltc11e668e0295477f",
+    "admin": true,
+    "default": true,
+    "users": [
+      "blt77cdb6f518e1940a",
+      "blt79e6de1c5230a991",
+      "blt484b7e4e3d1b7f76",
+      "blte9d0c9dd3a3677cd",
+      "blted7d8480391338f9",
+      "blt4c60a7a861d77460",
+      "blta03400731c5074a3",
+      "blt26d1b9acb52848e6",
+      "blt4dcb0345fae4731c",
+      "blt818cdd837f0ef17f",
+      "blta4bbe422a5a3be0c",
+      "blt5ffa2ada42ff6c6f",
+      "blt7308c3a62931255f",
+      "bltfd99a11f4cc6a299",
+      "blt8e9b3bbef2524228",
+      "blt1930fc55e5669df9"
+    ],
+    "permissions": [
+      "org.info:read",
+      "org.analytics:read",
+      "org.stacks:read",
+      "org.users:read",
+      "org.users:write",
+      "org.users:delete",
+      "org.users:unlock",
+      "org.roles:read",
+      "org.roles:write",
+      "org.roles:delete",
+      "org.scim:read",
+      "org.scim:write",
+      "org.bulk_task_queue:read",
+      "org.bulk_task_queue:write",
+      "org.teams:read",
+      "org.teams:write",
+      "org.teams:delete",
+      "org.security_config:read",
+      "org.security_config:write",
+      "org.webhooks_config:read",
+      "org.webhooks_config:write",
+      "org.audit_logs:read",
+      "am.spaces:create",
+      "am.fields:read",
+      "am.fields:create",
+      "am.fields:edit",
+      "am.fields:delete",
+      "am.asset_types:read",
+      "am.asset_types:create",
+      "am.asset_types:edit",
+      "am.asset_types:delete",
+      "am.users:read",
+      "am.users:create",
+      "am.users:edit",
+      "am.users:delete",
+      "am.roles:read",
+      "am.roles:create",
+      "am.roles:edit",
+      "am.roles:delete",
+      "am.languages:create",
+      "am.languages:read",
+      "am.languages:edit",
+      "am.languages:delete"
+    ],
+    "domain": "organization",
+    "created_at": "2023-05-15T05:46:26.266Z",
+    "updated_at": "2026-03-12T12:35:36.623Z"
+  }
+]
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/roles
+
Request Headers
authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/roles' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:30 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 11ms
+X-Request-ID: ed3a0fa9-3428-40aa-a5d0-89983c2d4e8a
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "roles": [
+    {
+      "uid": "blt802c2cf444969bc3",
+      "name": "member",
+      "description": "Member role has read-only access to organization info",
+      "org_uid": "blt8d282118e2094bb8",
+      "owner_uid": "bltc11e668e0295477f",
+      "admin": false,
+      "default": true,
+      "users": [
+        "blt020de9168aaf378c",
+        "bltcd78b4313f5c14e9",
+        "blta4135beff83a5bd8",
+        "blt1fc241d9e7735ce5",
+        "blt18ff18daa1b288557ec8525d",
+        "blt9b9f5b60e4d0888f",
+        "bltcd145d6b20c55b33",
+        "blt8213bc6706786a3f",
+        "blt18d6a94bde0f8f1a",
+        "blt287ee2fb1289e5c5",
+        "blt286cb4a779238da5",
+        "blt8089bb1103a58c96",
+        "bltd05849bf58e89a89",
+        "bltdc6a4666c3bd956d",
+        "blt5343a15e88b3afab",
+        "bltcfdd4b7f0f6d14be",
+        "blt750e8fe2839714da"
+      ],
+      "permissions": [
+        "org.info:read"
+      ],
+      "domain": "organization",
+      "created_at": "2023-05-15T05:46:26.266Z",
+      "updated_at": "2026-03-12T12:35:36.623Z"
+    },
+    {
+      "uid": "bltb8a7ba0eb93838aa",
+      "name": "admin",
+      "description": "Admin role has full access to org admin related features",
+      "org_uid": "blt8d282118e2094bb8",
+      "owner_uid": "bltc11e668e0295477f",
+      "admin": true,
+      "default": true,
+      "users": [
+        "blt77cdb6f518e1940a",
+        "blt79e6de1c5230a991",
+        "blt484b7e4e3d1b7f76",
+        "blte9d0c9dd3a3677cd",
+        "blted7d8480391338f9",
+        "blt4c60a7a861d77460",
+        "blta03400731c5074a3",
+        "blt26d1b9acb52848e6",
+        "blt4dcb0345fae4731c",
+        "blt818cdd837f0ef17f",
+        "blta4bbe422a5a3be0c",
+        "blt5ffa2ada42ff6c6f",
+        "blt7308c3a62931255f",
+        "bltfd99a11f4cc6a299",
+        "blt8e9b3bbef2524228",
+        "blt1930fc55e5669df9"
+      ],
+      "permissions": [
+        "org.info:read",
+        "org.analytics:read",
+        "org.stacks:read",
+        "org.users:read",
+        "org.users:write",
+        "org.users:delete",
+        "org.users:unlock",
+        "org.roles:read",
+        "org.roles:write",
+        "org.roles:delete",
+        "org.scim:read",
+        "org.scim:write",
+        "org.bulk_task_queue:read",
+        "org.bulk_task_queue:write",
+        "org.teams:read",
+        "org.teams:write",
+        "org.teams:delete",
+        "org.security_config:read",
+        "org.security_config:write",
+        "org.webhooks_config:read",
+        "org.webhooks_config:write",
+        "org.audit_logs:read",
+        "am.spaces:create",
+        "am.fields:read",
+        "am.fields:create",
+        "am.fields:edit",
+        "am.fields:delete",
+        "am.asset_types:read",
+        "am.asset_types:create",
+        "am.asset_types:edit",
+        "am.asset_types:delete",
+        "am.users:read",
+        "am.users:create",
+        "am.users:edit",
+        "am.users:delete",
+        "am.roles:read",
+        "am.roles:create",
+        "am.roles:edit",
+        "am.roles:delete",
+        "am.languages:
+
+ Test Context + + + + +
TestScenarioGetOrganizationRoles
+
Passed0.31s
+
✅ Test014_Should_Get_All_Invites
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "shares": [
+    {
+      "uid": "blt1acd92e2c66a8e59",
+      "email": "om.pawar@contentstack.com",
+      "user_uid": "blt1930fc55e5669df9",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "bltb8a7ba0eb93838aa"
+      ],
+      "invited_by": "blt4c60a7a861d77460",
+      "invited_at": "2026-03-12T12:11:46.187Z",
+      "status": "accepted",
+      "created_at": "2026-03-12T12:11:46.184Z",
+      "updated_at": "2026-03-12T12:12:37.899Z",
+      "first_name": "OM",
+      "last_name": "PAWAR"
+    },
+    {
+      "uid": "blt7e41729c886fc57d",
+      "email": "harshitha.d+prod@contentstack.com",
+      "user_uid": "blt8e9b3bbef2524228",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "bltb8a7ba0eb93838aa"
+      ],
+      "invited_by": "blt37ba39e03b130064",
+      "invited_at": "2026-02-06T11:58:49.035Z",
+      "status": "accepted",
+      "created_at": "2026-02-06T11:58:49.032Z",
+      "updated_at": "2026-02-06T12:03:17.425Z",
+      "first_name": "harshitha",
+      "last_name": "d+prod"
+    },
+    {
+      "uid": "bltbafda600eae98e3f",
+      "email": "cli-dev+oauth@contentstack.com",
+      "user_uid": "bltfd99a11f4cc6a299",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "bltb8a7ba0eb93838aa"
+      ],
+      "invited_by": "blt8e9b3bbef2524228",
+      "invited_at": "2026-01-21T20:09:28.254Z",
+      "status": "accepted",
+      "created_at": "2026-01-21T20:09:28.252Z",
+      "updated_at": "2026-01-21T20:09:28.471Z",
+      "first_name": "oauth",
+      "last_name": "CLI"
+    },
+    {
+      "uid": "blt6790771daee2ca6e",
+      "email": "cli-dev+jscma@contentstack.com",
+      "user_uid": "blt7308c3a62931255f",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "bltb8a7ba0eb93838aa"
+      ],
+      "invited_by": "blt484b7e4e3d1b7f76",
+      "invited_at": "2026-01-20T14:05:42.753Z",
+      "status": "accepted",
+      "created_at": "2026-01-20T14:05:42.75Z",
+      "updated_at": "2026-01-20T14:53:24.25Z",
+      "first_name": "JSCMA",
+      "last_name": "SDK"
+    },
+    {
+      "uid": "blt326c04bdd112ca65",
+      "email": "cli-dev+java-sdk@contentstack.com",
+      "user_uid": "blt5ffa2ada42ff6c6f",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "bltb8a7ba0eb93838aa"
+      ],
+      "invited_by": "blt818cdd837f0ef17f",
+      "invited_at": "2025-05-15T14:36:13.465Z",
+      "status": "accepted",
+      "created_at": "2025-05-15T14:36:13.463Z",
+      "updated_at": "2025-05-15T15:34:21.941Z",
+      "first_name": "Java-cli",
+      "last_name": "java"
+    },
+    {
+      "uid": "blt3d1adbfab4bcb265",
+      "email": "cli-dev+dotnet@contentstack.com",
+      "user_uid": "blta4bbe422a5a3be0c",
+      "message": "",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "bltb8a7ba0eb93838aa"
+      ],
+      "invited_by": "blt818cdd837f0ef17f",
+      "invited_at": "2025-04-10T13:03:22.951Z",
+      "status": "accepted",
+      "created_at": "2025-04-10T13:03:22.949Z",
+      "updated_at": "2025-04-10T13:03:48.789Z",
+      "first_name": "cli-dev+dotnet",
+      "last_name": "Dotnet"
+    },
+    {
+      "uid": "bltbf7c6e51a7379079",
+      "email": "reeshika.hosmani+prod@contentstack.com",
+      "user_uid": "bltcfdd4b7f0f6d14be",
+      "message": "",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "blt802c2cf444969bc3"
+      ],
+      "invited_by": "blte9d0c9dd3a3677cd",
+      "invited_at": "2025-04-10T05:05:10.588Z",
+      "status": "accepted",
+      "created_at": "2025-04-10T05:05:10.585Z",
+      "updated_at": "2025-04-10T05:05:10.585Z",
+      "first_name": "reeshika",
+      "last_name": "hosmani+prod"
+    },
+    {
+      "uid": "blt96e8f36be53136f0",
+      "email": "cli-dev@contentstack.com",
+      "user_uid": "blt818cdd837f0ef17f",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "bltb8a7ba0eb93838aa"
+      ],
+      "invited_by": "blt8e9b3bbef2524228",
+      "invited_at": "2025-04-01T13:15:10.469Z",
+      "status": "accepted",
+      "created_at": "2025-04-01T13:15:10.467Z",
+      "updated_at": "2025-04-01T13:18:40.649Z",
+      "first_name": "CLI",
+      "last_name": "DEV"
+    },
+    {
+      "uid": "blt2f4b6cbf40eebd8c",
+      "email": "harshitha.d@contentstack.com",
+      "user_uid": "blt37ba39e03b130064",
+      "message": "",
+      "org_uid": "blt8d282118e2094bb8",
+      "invited_by": "blt77cdb6f518e1940a",
+      "invited_at": "2023-07-18T12:17:59.778Z",
+      "status": "accepted",
+      "created_at": "2023-07-18T12:17:59.776Z",
+      "updated_at": "2025-03-17T06:07:47.278Z",
+      "is_owner": true,
+      "first_name": "Harshitha",
+      "last_name": "D"
+    },
+    {
+      "uid": "blt1a7e98ba71996a03",
+      "email": "cli-dev+jsmp@contentstack.com",
+      "user_uid": "blt5343a15e88b3afab",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "blt802c2cf444969bc3"
+      ],
+      "invited_by": "blt8e9b3bbef2524228",
+      "invited_at": "2025-02-26T09:02:28.523Z",
+      "status": "accepted",
+      "created_at": "2025-02-26T09:02:28.521Z",
+      "updated_at": "2025-02-26T09:02:28.773Z",
+      "first_name": "cli-dev+jsmp",
+      "last_name": "MP"
+    }
+  ]
+}
+
+
+
+
IsNotNull(shares)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "uid": "blt1acd92e2c66a8e59",
+    "email": "om.pawar@contentstack.com",
+    "user_uid": "blt1930fc55e5669df9",
+    "org_uid": "blt8d282118e2094bb8",
+    "org_roles": [
+      "bltb8a7ba0eb93838aa"
+    ],
+    "invited_by": "blt4c60a7a861d77460",
+    "invited_at": "2026-03-12T12:11:46.187Z",
+    "status": "accepted",
+    "created_at": "2026-03-12T12:11:46.184Z",
+    "updated_at": "2026-03-12T12:12:37.899Z",
+    "first_name": "OM",
+    "last_name": "PAWAR"
+  },
+  {
+    "uid": "blt7e41729c886fc57d",
+    "email": "harshitha.d+prod@contentstack.com",
+    "user_uid": "blt8e9b3bbef2524228",
+    "org_uid": "blt8d282118e2094bb8",
+    "org_roles": [
+      "bltb8a7ba0eb93838aa"
+    ],
+    "invited_by": "blt37ba39e03b130064",
+    "invited_at": "2026-02-06T11:58:49.035Z",
+    "status": "accepted",
+    "created_at": "2026-02-06T11:58:49.032Z",
+    "updated_at": "2026-02-06T12:03:17.425Z",
+    "first_name": "harshitha",
+    "last_name": "d+prod"
+  },
+  {
+    "uid": "bltbafda600eae98e3f",
+    "email": "cli-dev+oauth@contentstack.com",
+    "user_uid": "bltfd99a11f4cc6a299",
+    "org_uid": "blt8d282118e2094bb8",
+    "org_roles": [
+      "bltb8a7ba0eb93838aa"
+    ],
+    "invited_by": "blt8e9b3bbef2524228",
+    "invited_at": "2026-01-21T20:09:28.254Z",
+    "status": "accepted",
+    "created_at": "2026-01-21T20:09:28.252Z",
+    "updated_at": "2026-01-21T20:09:28.471Z",
+    "first_name": "oauth",
+    "last_name": "CLI"
+  },
+  {
+    "uid": "blt6790771daee2ca6e",
+    "email": "cli-dev+jscma@contentstack.com",
+    "user_uid": "blt7308c3a62931255f",
+    "org_uid": "blt8d282118e2094bb8",
+    "org_roles": [
+      "bltb8a7ba0eb93838aa"
+    ],
+    "invited_by": "blt484b7e4e3d1b7f76",
+    "invited_at": "2026-01-20T14:05:42.753Z",
+    "status": "accepted",
+    "created_at": "2026-01-20T14:05:42.75Z",
+    "updated_at": "2026-01-20T14:53:24.25Z",
+    "first_name": "JSCMA",
+    "last_name": "SDK"
+  },
+  {
+    "uid": "blt326c04bdd112ca65",
+    "email": "cli-dev+java-sdk@contentstack.com",
+    "user_uid": "blt5ffa2ada42ff6c6f",
+    "org_uid": "blt8d282118e2094bb8",
+    "org_roles": [
+      "bltb8a7ba0eb93838aa"
+    ],
+    "invited_by": "blt818cdd837f0ef17f",
+    "invited_at": "2025-05-15T14:36:13.465Z",
+    "status": "accepted",
+    "created_at": "2025-05-15T14:36:13.463Z",
+    "updated_at": "2025-05-15T15:34:21.941Z",
+    "first_name": "Java-cli",
+    "last_name": "java"
+  },
+  {
+    "uid": "blt3d1adbfab4bcb265",
+    "email": "cli-dev+dotnet@contentstack.com",
+    "user_uid": "blta4bbe422a5a3be0c",
+    "message": "",
+    "org_uid": "blt8d282118e2094bb8",
+    "org_roles": [
+      "bltb8a7ba0eb93838aa"
+    ],
+    "invited_by": "blt818cdd837f0ef17f",
+    "invited_at": "2025-04-10T13:03:22.951Z",
+    "status": "accepted",
+    "created_at": "2025-04-10T13:03:22.949Z",
+    "updated_at": "2025-04-10T13:03:48.789Z",
+    "first_name": "cli-dev+dotnet",
+    "last_name": "Dotnet"
+  },
+  {
+    "uid": "bltbf7c6e51a7379079",
+    "email": "reeshika.hosmani+prod@contentstack.com",
+    "user_uid": "bltcfdd4b7f0f6d14be",
+    "message": "",
+    "org_uid": "blt8d282118e2094bb8",
+    "org_roles": [
+      "blt802c2cf444969bc3"
+    ],
+    "invited_by": "blte9d0c9dd3a3677cd",
+    "invited_at": "2025-04-10T05:05:10.588Z",
+    "status": "accepted",
+    "created_at": "2025-04-10T05:05:10.585Z",
+    "updated_at": "2025-04-10T05:05:10.585Z",
+    "first_name": "reeshika",
+    "last_name": "hosmani+prod"
+  },
+  {
+    "uid": "blt96e8f36be53136f0",
+    "email": "cli-dev@contentstack.com",
+    "user_uid": "blt818cdd837f0ef17f",
+    "org_uid": "blt8d282118e2094bb8",
+    "org_roles": [
+      "bltb8a7ba0eb93838aa"
+    ],
+    "invited_by": "blt8e9b3bbef2524228",
+    "invited_at": "2025-04-01T13:15:10.469Z",
+    "status": "accepted",
+    "created_at": "2025-04-01T13:15:10.467Z",
+    "updated_at": "2025-04-01T13:18:40.649Z",
+    "first_name": "CLI",
+    "last_name": "DEV"
+  },
+  {
+    "uid": "blt2f4b6cbf40eebd8c",
+    "email": "harshitha.d@contentstack.com",
+    "user_uid": "blt37ba39e03b130064",
+    "message": "",
+    "org_uid": "blt8d282118e2094bb8",
+    "invited_by": "blt77cdb6f518e1940a",
+    "invited_at": "2023-07-18T12:17:59.778Z",
+    "status": "accepted",
+    "created_at": "2023-07-18T12:17:59.776Z",
+    "updated_at": "2025-03-17T06:07:47.278Z",
+    "is_owner": true,
+    "first_name": "Harshitha",
+    "last_name": "D"
+  },
+  {
+    "uid": "blt1a7e98ba71996a03",
+    "email": "cli-dev+jsmp@contentstack.com",
+    "user_uid": "blt5343a15e88b3afab",
+    "org_uid": "blt8d282118e2094bb8",
+    "org_roles": [
+      "blt802c2cf444969bc3"
+    ],
+    "invited_by": "blt8e9b3bbef2524228",
+    "invited_at": "2025-02-26T09:02:28.523Z",
+    "status": "accepted",
+    "created_at": "2025-02-26T09:02:28.521Z",
+    "updated_at": "2025-02-26T09:02:28.773Z",
+    "first_name": "cli-dev+jsmp",
+    "last_name": "MP"
+  }
+]
+
+
+
+
AreEqual(sharesType)
+
+
Expected:
Newtonsoft.Json.Linq.JArray
+
Actual:
Newtonsoft.Json.Linq.JArray
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share
+
Request Headers
authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:32 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 18ms
+X-Request-ID: 3a2aa882-d615-4240-a68a-13655020cc09
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{"shares":[{"uid":"blt1acd92e2c66a8e59","email":"om.pawar@contentstack.com","user_uid":"blt1930fc55e5669df9","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt4c60a7a861d77460","invited_at":"2026-03-12T12:11:46.187Z","status":"accepted","created_at":"2026-03-12T12:11:46.184Z","updated_at":"2026-03-12T12:12:37.899Z","first_name":"OM","last_name":"PAWAR"},{"uid":"blt7e41729c886fc57d","email":"harshitha.d+prod@contentstack.com","user_uid":"blt8e9b3bbef2524228","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt37ba39e03b130064","invited_at":"2026-02-06T11:58:49.035Z","status":"accepted","created_at":"2026-02-06T11:58:49.032Z","updated_at":"2026-02-06T12:03:17.425Z","first_name":"harshitha","last_name":"d+prod"},{"uid":"bltbafda600eae98e3f","email":"cli-dev+oauth@contentstack.com","user_uid":"bltfd99a11f4cc6a299","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt8e9b3bbef2524228","invited_at":"2026-01-21T20:09:28.254Z","status":"accepted","created_at":"2026-01-21T20:09:28.252Z","updated_at":"2026-01-21T20:09:28.471Z","first_name":"oauth","last_name":"CLI"},{"uid":"blt6790771daee2ca6e","email":"cli-dev+jscma@contentstack.com","user_uid":"blt7308c3a62931255f","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt484b7e4e3d1b7f76","invited_at":"2026-01-20T14:05:42.753Z","status":"accepted","created_at":"2026-01-20T14:05:42.750Z","updated_at":"2026-01-20T14:53:24.250Z","first_name":"JSCMA","last_name":"SDK"},{"uid":"blt326c04bdd112ca65","email":"cli-dev+java-sdk@contentstack.com","user_uid":"blt5ffa2ada42ff6c6f","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt818cdd837f0ef17f","invited_at":"2025-05-15T14:36:13.465Z","status":"accepted","created_at":"2025-05-15T14:36:13.463Z","updated_at":"2025-05-15T15:34:21.941Z","first_name":"Java-cli","last_name":"java"},{"uid":"blt3d1adbfab4bcb265","email":"cli-dev+dotnet@contentstack.com","user_uid":"blta4bbe422a5a3be0c","message":"","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt818cdd837f0ef17f","invited_at":"2025-04-10T13:03:22.951Z","status":"accepted","created_at":"2025-04-10T13:03:22.949Z","updated_at":"2025-04-10T13:03:48.789Z","first_name":"cli-dev+dotnet","last_name":"Dotnet"},{"uid":"bltbf7c6e51a7379079","email":"reeshika.hosmani+prod@contentstack.com","user_uid":"bltcfdd4b7f0f6d14be","message":"","org_uid":"blt8d282118e2094bb8","org_roles":["blt802c2cf444969bc3"],"invited_by":"blte9d0c9dd3a3677cd","invited_at":"2025-04-10T05:05:10.588Z","status":"accepted","created_at":"2025-04-10T05:05:10.585Z","updated_at":"2025-04-10T05:05:10.585Z","first_name":"reeshika","last_name":"hosmani+prod"},{"uid":"blt96e8f36be53136f0","email":"cli-dev@contentstack.com","user_uid":"blt818cdd837f0ef17f","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt8e9b3bbef2524228","invited_at":"202
+
+ Test Context + + + + +
TestScenarioGetAllInvites
+
Passed0.31s
+
✅ Test010_Should_Resend_Invite
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "notice": "The invitation has been resent successfully."
+}
+
+
+
+
AreEqual(notice)
+
+
Expected:
The invitation has been resent successfully.
+
Actual:
The invitation has been resent successfully.
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share/bltbd1e5e658d86592f/resend_invitation
+
Request Headers
authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share/bltbd1e5e658d86592f/resend_invitation' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:31 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 24ms
+X-Request-ID: 427b0fcc-4e39-44f1-a4b7-809723e63b5c
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "The invitation has been resent successfully."
+}
+
+ Test Context + + + + +
TestScenarioResendInvite
+
Passed0.30s
+
✅ Test017_Should_Get_All_Stacks_Async
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "stacks": [
+    {
+      "created_at": "2026-03-12T12:35:38.558Z",
+      "updated_at": "2026-03-12T12:35:41.085Z",
+      "uid": "bltf6dedbb54111facb",
+      "name": "DotNet Management SDK Stack",
+      "api_key": "blt72045e49dc1aa085",
+      "owner_uid": "blt1930fc55e5669df9",
+      "owner": {
+        "email": "om.pawar@contentstack.com",
+        "first_name": "OM",
+        "last_name": "PAWAR",
+        "settings": {
+          "preferences": {
+            "global": [],
+            "stack": []
+          }
+        }
+      },
+      "users": {
+        "count": 1
+      }
+    },
+    {
+      "created_at": "2026-03-12T12:16:53.714Z",
+      "updated_at": "2026-03-12T12:16:56.378Z",
+      "uid": "blta77d4b24cace786a",
+      "name": "DotNet Management SDK Stack",
+      "api_key": "bltd87839f91f3e1448",
+      "owner_uid": "blt1930fc55e5669df9",
+      "owner": {
+        "email": "om.pawar@contentstack.com",
+        "first_name": "OM",
+        "last_name": "PAWAR",
+        "settings": {
+          "preferences": {
+            "global": [],
+            "stack": []
+          }
+        }
+      },
+      "users": {
+        "count": 1
+      }
+    },
+    {
+      "created_at": "2026-03-06T15:18:49.878Z",
+      "updated_at": "2026-03-12T12:11:46.324Z",
+      "uid": "bltae6bacc186e4819f",
+      "name": "Copy of Dotnet CDA SDK internal test",
+      "api_key": "blta23060d14351eb10",
+      "owner_uid": "blt4c60a7a861d77460",
+      "owner": {
+        "email": "raj.pandey@contentstack.com",
+        "first_name": "Raj",
+        "last_name": "Pandey",
+        "settings": {
+          "preferences": {
+            "global": [],
+            "stack": []
+          }
+        }
+      },
+      "users": {
+        "count": 2
+      }
+    },
+    {
+      "created_at": "2026-03-12T11:48:59.868Z",
+      "updated_at": "2026-03-12T11:48:59.954Z",
+      "uid": "bltaa287bfd5509a809",
+      "name": "test1234",
+      "api_key": "bltf2d85a7d423603d0",
+      "owner_uid": "blt8e9b3bbef2524228",
+      "owner": {
+        "email": "harshitha.d+prod@contentstack.com",
+        "first_name": "harshitha",
+        "last_name": "d+prod",
+        "settings": {
+          "preferences": {
+            "global": [],
+            "stack": []
+          }
+        }
+      },
+      "users": {
+        "count": 1
+      }
+    },
+    {
+      "created_at": "2026-03-12T08:47:15.111Z",
+      "updated_at": "2026-03-12T09:31:41.353Z",
+      "uid": "bltff87f359ab582635",
+      "name": "DotNet Management SDK Stack",
+      "api_key": "blt1747bf073521a923",
+      "owner_uid": "blt37ba39e03b130064",
+      "owner": {
+        "email": "harshitha.d@contentstack.com",
+        "first_name": "Harshitha",
+        "last_name": "D",
+        "settings": {
+          "preferences": {
+            "global": [],
+            "stack": []
+          }
+        }
+      },
+      "users": {
+        "count": 1
+      }
+    },
+    {
+      "created_at": "2026-03-07T05:55:02.673Z",
+      "updated_at": "2026-03-12T09:31:41.353Z",
+      "uid": "blt8a6cbbbddc7de158",
+      "name": "Dotnet CDA SDK internal test 2",
+      "api_key": "blteda07f97e97feb91",
+      "owner_uid": "blt4c60a7a861d77460",
+      "owner": {
+        "email": "raj.pandey@contentstack.com",
+        "first_name": "Raj",
+        "last_name": "Pandey",
+        "settings": {
+          "preferences": {
+            "global": [],
+            "stack": []
+          }
+        }
+      },
+      "users": {
+        "count": 1
+      }
+    },
+    {
+      "created_at": "2026-03-09T07:22:32.565Z",
+      "updated_at": "2026-03-09T07:22:32.69Z",
+      "uid": "bltdfd4504f05d7ac16",
+      "name": "test123",
+      "api_key": "blt1484e456a1dbab9e",
+      "owner_uid": "blt8e9b3bbef2524228",
+      "owner": {
+        "email": "harshitha.d+prod@contentstack.com",
+        "first_name": "harshitha",
+        "last_name": "d+prod",
+        "settings": {
+          "preferences": {
+            "global": [],
+            "stack": []
+          }
+        }
+      },
+      "users": {
+        "count": 1
+      }
+    },
+    {
+      "created_at": "2026-03-06T13:21:38.649Z",
+      "updated_at": "2026-03-06T13:21:38.766Z",
+      "uid": "blt542fdc5a9cdc623c",
+      "name": "teststack1",
+      "api_key": "blt0ea1eb6ab5aa79ae",
+      "owner_uid": "blt8e9b3bbef2524228",
+      "owner": {
+        "email": "harshitha.d+prod@contentstack.com",
+        "first_name": "harshitha",
+        "last_name": "d+prod",
+        "settings": {
+          "preferences": {
+            "global": [],
+            "stack": []
+          }
+        }
+      },
+      "users": {
+        "count": 1
+      }
+    },
+    {
+      "created_at": "2026-02-12T08:10:52.85Z",
+      "updated_at": "2026-03-02T12:31:02.856Z",
+      "uid": "blt0181d077e890a38e",
+      "name": "Import Data",
+      "api_key": "bltd967f12af772f0e2",
+      "owner_uid": "blt37ba39e03b130064",
+      "owner": {
+        "email": "harshitha.d@contentstack.com",
+        "first_name": "Harshitha",
+        "last_name": "D",
+        "settings": {
+          "preferences": {
+            "global": [],
+            "stack": []
+          }
+        }
+      },
+      "users": {
+        "count": 1
+      }
+    },
+    {
+      "created_at": "2026-02-12T09:26:38.038Z",
+      "updated_at": "2026-03-02T12:31:02.856Z",
+      "uid": "blt81d6f3d742755c86",
+      "name": "EmptyStack",
+      "api_key": "blta7a69f15c58b01ac",
+      "owner_uid": "blt37ba39e03b130064",
+      "owner": {
+        "email": "harshitha.d@contentstack.com",
+        "first_name": "Harshitha",
+        "last_name": "D",
+        "settings": {
+          "preferences": {
+            "global": [],
+            "stack": []
+          }
+        }
+      },
+      "users": {
+        "count": 1
+      }
+    }
+  ]
+}
+
+
+
+
IsNotNull(stacks)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "created_at": "2026-03-12T12:35:38.558Z",
+    "updated_at": "2026-03-12T12:35:41.085Z",
+    "uid": "bltf6dedbb54111facb",
+    "name": "DotNet Management SDK Stack",
+    "api_key": "blt72045e49dc1aa085",
+    "owner_uid": "blt1930fc55e5669df9",
+    "owner": {
+      "email": "om.pawar@contentstack.com",
+      "first_name": "OM",
+      "last_name": "PAWAR",
+      "settings": {
+        "preferences": {
+          "global": [],
+          "stack": []
+        }
+      }
+    },
+    "users": {
+      "count": 1
+    }
+  },
+  {
+    "created_at": "2026-03-12T12:16:53.714Z",
+    "updated_at": "2026-03-12T12:16:56.378Z",
+    "uid": "blta77d4b24cace786a",
+    "name": "DotNet Management SDK Stack",
+    "api_key": "bltd87839f91f3e1448",
+    "owner_uid": "blt1930fc55e5669df9",
+    "owner": {
+      "email": "om.pawar@contentstack.com",
+      "first_name": "OM",
+      "last_name": "PAWAR",
+      "settings": {
+        "preferences": {
+          "global": [],
+          "stack": []
+        }
+      }
+    },
+    "users": {
+      "count": 1
+    }
+  },
+  {
+    "created_at": "2026-03-06T15:18:49.878Z",
+    "updated_at": "2026-03-12T12:11:46.324Z",
+    "uid": "bltae6bacc186e4819f",
+    "name": "Copy of Dotnet CDA SDK internal test",
+    "api_key": "blta23060d14351eb10",
+    "owner_uid": "blt4c60a7a861d77460",
+    "owner": {
+      "email": "raj.pandey@contentstack.com",
+      "first_name": "Raj",
+      "last_name": "Pandey",
+      "settings": {
+        "preferences": {
+          "global": [],
+          "stack": []
+        }
+      }
+    },
+    "users": {
+      "count": 2
+    }
+  },
+  {
+    "created_at": "2026-03-12T11:48:59.868Z",
+    "updated_at": "2026-03-12T11:48:59.954Z",
+    "uid": "bltaa287bfd5509a809",
+    "name": "test1234",
+    "api_key": "bltf2d85a7d423603d0",
+    "owner_uid": "blt8e9b3bbef2524228",
+    "owner": {
+      "email": "harshitha.d+prod@contentstack.com",
+      "first_name": "harshitha",
+      "last_name": "d+prod",
+      "settings": {
+        "preferences": {
+          "global": [],
+          "stack": []
+        }
+      }
+    },
+    "users": {
+      "count": 1
+    }
+  },
+  {
+    "created_at": "2026-03-12T08:47:15.111Z",
+    "updated_at": "2026-03-12T09:31:41.353Z",
+    "uid": "bltff87f359ab582635",
+    "name": "DotNet Management SDK Stack",
+    "api_key": "blt1747bf073521a923",
+    "owner_uid": "blt37ba39e03b130064",
+    "owner": {
+      "email": "harshitha.d@contentstack.com",
+      "first_name": "Harshitha",
+      "last_name": "D",
+      "settings": {
+        "preferences": {
+          "global": [],
+          "stack": []
+        }
+      }
+    },
+    "users": {
+      "count": 1
+    }
+  },
+  {
+    "created_at": "2026-03-07T05:55:02.673Z",
+    "updated_at": "2026-03-12T09:31:41.353Z",
+    "uid": "blt8a6cbbbddc7de158",
+    "name": "Dotnet CDA SDK internal test 2",
+    "api_key": "blteda07f97e97feb91",
+    "owner_uid": "blt4c60a7a861d77460",
+    "owner": {
+      "email": "raj.pandey@contentstack.com",
+      "first_name": "Raj",
+      "last_name": "Pandey",
+      "settings": {
+        "preferences": {
+          "global": [],
+          "stack": []
+        }
+      }
+    },
+    "users": {
+      "count": 1
+    }
+  },
+  {
+    "created_at": "2026-03-09T07:22:32.565Z",
+    "updated_at": "2026-03-09T07:22:32.69Z",
+    "uid": "bltdfd4504f05d7ac16",
+    "name": "test123",
+    "api_key": "blt1484e456a1dbab9e",
+    "owner_uid": "blt8e9b3bbef2524228",
+    "owner": {
+      "email": "harshitha.d+prod@contentstack.com",
+      "first_name": "harshitha",
+      "last_name": "d+prod",
+      "settings": {
+        "preferences": {
+          "global": [],
+          "stack": []
+        }
+      }
+    },
+    "users": {
+      "count": 1
+    }
+  },
+  {
+    "created_at": "2026-03-06T13:21:38.649Z",
+    "updated_at": "2026-03-06T13:21:38.766Z",
+    "uid": "blt542fdc5a9cdc623c",
+    "name": "teststack1",
+    "api_key": "blt0ea1eb6ab5aa79ae",
+    "owner_uid": "blt8e9b3bbef2524228",
+    "owner": {
+      "email": "harshitha.d+prod@contentstack.com",
+      "first_name": "harshitha",
+      "last_name": "d+prod",
+      "settings": {
+        "preferences": {
+          "global": [],
+          "stack": []
+        }
+      }
+    },
+    "users": {
+      "count": 1
+    }
+  },
+  {
+    "created_at": "2026-02-12T08:10:52.85Z",
+    "updated_at": "2026-03-02T12:31:02.856Z",
+    "uid": "blt0181d077e890a38e",
+    "name": "Import Data",
+    "api_key": "bltd967f12af772f0e2",
+    "owner_uid": "blt37ba39e03b130064",
+    "owner": {
+      "email": "harshitha.d@contentstack.com",
+      "first_name": "Harshitha",
+      "last_name": "D",
+      "settings": {
+        "preferences": {
+          "global": [],
+          "stack": []
+        }
+      }
+    },
+    "users": {
+      "count": 1
+    }
+  },
+  {
+    "created_at": "2026-02-12T09:26:38.038Z",
+    "updated_at": "2026-03-02T12:31:02.856Z",
+    "uid": "blt81d6f3d742755c86",
+    "name": "EmptyStack",
+    "api_key": "blta7a69f15c58b01ac",
+    "owner_uid": "blt37ba39e03b130064",
+    "owner": {
+      "email": "harshitha.d@contentstack.com",
+      "first_name": "Harshitha",
+      "last_name": "D",
+      "settings": {
+        "preferences": {
+          "global": [],
+          "stack": []
+        }
+      }
+    },
+    "users": {
+      "count": 1
+    }
+  }
+]
+
+
+
+
AreEqual(stacksType)
+
+
Expected:
Newtonsoft.Json.Linq.JArray
+
Actual:
Newtonsoft.Json.Linq.JArray
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/stacks
+
Request Headers
authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/stacks' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:33 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 18ms
+X-Request-ID: 4825a9a1-68d2-462b-9d7b-3a08cfcc3e67
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{"stacks":[{"created_at":"2026-03-12T12:35:38.558Z","updated_at":"2026-03-12T12:35:41.085Z","uid":"bltf6dedbb54111facb","name":"DotNet Management SDK Stack","api_key":"blt72045e49dc1aa085","owner_uid":"blt1930fc55e5669df9","owner":{"email":"om.pawar@contentstack.com","first_name":"OM","last_name":"PAWAR","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-12T12:16:53.714Z","updated_at":"2026-03-12T12:16:56.378Z","uid":"blta77d4b24cace786a","name":"DotNet Management SDK Stack","api_key":"bltd87839f91f3e1448","owner_uid":"blt1930fc55e5669df9","owner":{"email":"om.pawar@contentstack.com","first_name":"OM","last_name":"PAWAR","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-06T15:18:49.878Z","updated_at":"2026-03-12T12:11:46.324Z","uid":"bltae6bacc186e4819f","name":"Copy of Dotnet CDA SDK internal test","api_key":"blta23060d14351eb10","owner_uid":"blt4c60a7a861d77460","owner":{"email":"raj.pandey@contentstack.com","first_name":"Raj","last_name":"Pandey","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":2}},{"created_at":"2026-03-12T11:48:59.868Z","updated_at":"2026-03-12T11:48:59.954Z","uid":"bltaa287bfd5509a809","name":"test1234","api_key":"bltf2d85a7d423603d0","owner_uid":"blt8e9b3bbef2524228","owner":{"email":"harshitha.d+prod@contentstack.com","first_name":"harshitha","last_name":"d+prod","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-12T08:47:15.111Z","updated_at":"2026-03-12T09:31:41.353Z","uid":"bltff87f359ab582635","name":"DotNet Management SDK Stack","api_key":"blt1747bf073521a923","owner_uid":"blt37ba39e03b130064","owner":{"email":"harshitha.d@contentstack.com","first_name":"Harshitha","last_name":"D","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-07T05:55:02.673Z","updated_at":"2026-03-12T09:31:41.353Z","uid":"blt8a6cbbbddc7de158","name":"Dotnet CDA SDK internal test 2","api_key":"blteda07f97e97feb91","owner_uid":"blt4c60a7a861d77460","owner":{"email":"raj.pandey@contentstack.com","first_name":"Raj","last_name":"Pandey","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-09T07:22:32.565Z","updated_at":"2026-03-09T07:22:32.690Z","uid":"bltdfd4504f05d7ac16","name":"test123","api_key":"blt1484e456a1dbab9e","owner_uid":"blt8e9b3bbef2524228","owner":{"email":"harshitha.d+prod@contentstack.com","first_name":"harshitha","last_name":"d+prod","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-06T13:21:38.649Z","updated_at":"2026-03-06T13:21:38.766Z","uid":"blt542fdc5a9cdc623c","name":"teststack1","api_key":"blt0ea1eb6ab5aa79ae","owner_uid":"blt8e9b3bbef2524228","owner":{"email":"harshitha.d+prod@contentstack.com","first_name":"harshitha","last_name":"d+prod","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026
+
+ Test Context + + + + +
TestScenarioGetAllStacksAsync
+
Passed0.30s
+
✅ Test016_Should_Get_All_Stacks
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "stacks": [
+    {
+      "created_at": "2026-03-12T12:35:38.558Z",
+      "updated_at": "2026-03-12T12:35:41.085Z",
+      "uid": "bltf6dedbb54111facb",
+      "name": "DotNet Management SDK Stack",
+      "api_key": "blt72045e49dc1aa085",
+      "owner_uid": "blt1930fc55e5669df9",
+      "owner": {
+        "email": "om.pawar@contentstack.com",
+        "first_name": "OM",
+        "last_name": "PAWAR",
+        "settings": {
+          "preferences": {
+            "global": [],
+            "stack": []
+          }
+        }
+      },
+      "users": {
+        "count": 1
+      }
+    },
+    {
+      "created_at": "2026-03-12T12:16:53.714Z",
+      "updated_at": "2026-03-12T12:16:56.378Z",
+      "uid": "blta77d4b24cace786a",
+      "name": "DotNet Management SDK Stack",
+      "api_key": "bltd87839f91f3e1448",
+      "owner_uid": "blt1930fc55e5669df9",
+      "owner": {
+        "email": "om.pawar@contentstack.com",
+        "first_name": "OM",
+        "last_name": "PAWAR",
+        "settings": {
+          "preferences": {
+            "global": [],
+            "stack": []
+          }
+        }
+      },
+      "users": {
+        "count": 1
+      }
+    },
+    {
+      "created_at": "2026-03-06T15:18:49.878Z",
+      "updated_at": "2026-03-12T12:11:46.324Z",
+      "uid": "bltae6bacc186e4819f",
+      "name": "Copy of Dotnet CDA SDK internal test",
+      "api_key": "blta23060d14351eb10",
+      "owner_uid": "blt4c60a7a861d77460",
+      "owner": {
+        "email": "raj.pandey@contentstack.com",
+        "first_name": "Raj",
+        "last_name": "Pandey",
+        "settings": {
+          "preferences": {
+            "global": [],
+            "stack": []
+          }
+        }
+      },
+      "users": {
+        "count": 2
+      }
+    },
+    {
+      "created_at": "2026-03-12T11:48:59.868Z",
+      "updated_at": "2026-03-12T11:48:59.954Z",
+      "uid": "bltaa287bfd5509a809",
+      "name": "test1234",
+      "api_key": "bltf2d85a7d423603d0",
+      "owner_uid": "blt8e9b3bbef2524228",
+      "owner": {
+        "email": "harshitha.d+prod@contentstack.com",
+        "first_name": "harshitha",
+        "last_name": "d+prod",
+        "settings": {
+          "preferences": {
+            "global": [],
+            "stack": []
+          }
+        }
+      },
+      "users": {
+        "count": 1
+      }
+    },
+    {
+      "created_at": "2026-03-12T08:47:15.111Z",
+      "updated_at": "2026-03-12T09:31:41.353Z",
+      "uid": "bltff87f359ab582635",
+      "name": "DotNet Management SDK Stack",
+      "api_key": "blt1747bf073521a923",
+      "owner_uid": "blt37ba39e03b130064",
+      "owner": {
+        "email": "harshitha.d@contentstack.com",
+        "first_name": "Harshitha",
+        "last_name": "D",
+        "settings": {
+          "preferences": {
+            "global": [],
+            "stack": []
+          }
+        }
+      },
+      "users": {
+        "count": 1
+      }
+    },
+    {
+      "created_at": "2026-03-07T05:55:02.673Z",
+      "updated_at": "2026-03-12T09:31:41.353Z",
+      "uid": "blt8a6cbbbddc7de158",
+      "name": "Dotnet CDA SDK internal test 2",
+      "api_key": "blteda07f97e97feb91",
+      "owner_uid": "blt4c60a7a861d77460",
+      "owner": {
+        "email": "raj.pandey@contentstack.com",
+        "first_name": "Raj",
+        "last_name": "Pandey",
+        "settings": {
+          "preferences": {
+            "global": [],
+            "stack": []
+          }
+        }
+      },
+      "users": {
+        "count": 1
+      }
+    },
+    {
+      "created_at": "2026-03-09T07:22:32.565Z",
+      "updated_at": "2026-03-09T07:22:32.69Z",
+      "uid": "bltdfd4504f05d7ac16",
+      "name": "test123",
+      "api_key": "blt1484e456a1dbab9e",
+      "owner_uid": "blt8e9b3bbef2524228",
+      "owner": {
+        "email": "harshitha.d+prod@contentstack.com",
+        "first_name": "harshitha",
+        "last_name": "d+prod",
+        "settings": {
+          "preferences": {
+            "global": [],
+            "stack": []
+          }
+        }
+      },
+      "users": {
+        "count": 1
+      }
+    },
+    {
+      "created_at": "2026-03-06T13:21:38.649Z",
+      "updated_at": "2026-03-06T13:21:38.766Z",
+      "uid": "blt542fdc5a9cdc623c",
+      "name": "teststack1",
+      "api_key": "blt0ea1eb6ab5aa79ae",
+      "owner_uid": "blt8e9b3bbef2524228",
+      "owner": {
+        "email": "harshitha.d+prod@contentstack.com",
+        "first_name": "harshitha",
+        "last_name": "d+prod",
+        "settings": {
+          "preferences": {
+            "global": [],
+            "stack": []
+          }
+        }
+      },
+      "users": {
+        "count": 1
+      }
+    },
+    {
+      "created_at": "2026-02-12T08:10:52.85Z",
+      "updated_at": "2026-03-02T12:31:02.856Z",
+      "uid": "blt0181d077e890a38e",
+      "name": "Import Data",
+      "api_key": "bltd967f12af772f0e2",
+      "owner_uid": "blt37ba39e03b130064",
+      "owner": {
+        "email": "harshitha.d@contentstack.com",
+        "first_name": "Harshitha",
+        "last_name": "D",
+        "settings": {
+          "preferences": {
+            "global": [],
+            "stack": []
+          }
+        }
+      },
+      "users": {
+        "count": 1
+      }
+    },
+    {
+      "created_at": "2026-02-12T09:26:38.038Z",
+      "updated_at": "2026-03-02T12:31:02.856Z",
+      "uid": "blt81d6f3d742755c86",
+      "name": "EmptyStack",
+      "api_key": "blta7a69f15c58b01ac",
+      "owner_uid": "blt37ba39e03b130064",
+      "owner": {
+        "email": "harshitha.d@contentstack.com",
+        "first_name": "Harshitha",
+        "last_name": "D",
+        "settings": {
+          "preferences": {
+            "global": [],
+            "stack": []
+          }
+        }
+      },
+      "users": {
+        "count": 1
+      }
+    }
+  ]
+}
+
+
+
+
IsNotNull(stacks)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "created_at": "2026-03-12T12:35:38.558Z",
+    "updated_at": "2026-03-12T12:35:41.085Z",
+    "uid": "bltf6dedbb54111facb",
+    "name": "DotNet Management SDK Stack",
+    "api_key": "blt72045e49dc1aa085",
+    "owner_uid": "blt1930fc55e5669df9",
+    "owner": {
+      "email": "om.pawar@contentstack.com",
+      "first_name": "OM",
+      "last_name": "PAWAR",
+      "settings": {
+        "preferences": {
+          "global": [],
+          "stack": []
+        }
+      }
+    },
+    "users": {
+      "count": 1
+    }
+  },
+  {
+    "created_at": "2026-03-12T12:16:53.714Z",
+    "updated_at": "2026-03-12T12:16:56.378Z",
+    "uid": "blta77d4b24cace786a",
+    "name": "DotNet Management SDK Stack",
+    "api_key": "bltd87839f91f3e1448",
+    "owner_uid": "blt1930fc55e5669df9",
+    "owner": {
+      "email": "om.pawar@contentstack.com",
+      "first_name": "OM",
+      "last_name": "PAWAR",
+      "settings": {
+        "preferences": {
+          "global": [],
+          "stack": []
+        }
+      }
+    },
+    "users": {
+      "count": 1
+    }
+  },
+  {
+    "created_at": "2026-03-06T15:18:49.878Z",
+    "updated_at": "2026-03-12T12:11:46.324Z",
+    "uid": "bltae6bacc186e4819f",
+    "name": "Copy of Dotnet CDA SDK internal test",
+    "api_key": "blta23060d14351eb10",
+    "owner_uid": "blt4c60a7a861d77460",
+    "owner": {
+      "email": "raj.pandey@contentstack.com",
+      "first_name": "Raj",
+      "last_name": "Pandey",
+      "settings": {
+        "preferences": {
+          "global": [],
+          "stack": []
+        }
+      }
+    },
+    "users": {
+      "count": 2
+    }
+  },
+  {
+    "created_at": "2026-03-12T11:48:59.868Z",
+    "updated_at": "2026-03-12T11:48:59.954Z",
+    "uid": "bltaa287bfd5509a809",
+    "name": "test1234",
+    "api_key": "bltf2d85a7d423603d0",
+    "owner_uid": "blt8e9b3bbef2524228",
+    "owner": {
+      "email": "harshitha.d+prod@contentstack.com",
+      "first_name": "harshitha",
+      "last_name": "d+prod",
+      "settings": {
+        "preferences": {
+          "global": [],
+          "stack": []
+        }
+      }
+    },
+    "users": {
+      "count": 1
+    }
+  },
+  {
+    "created_at": "2026-03-12T08:47:15.111Z",
+    "updated_at": "2026-03-12T09:31:41.353Z",
+    "uid": "bltff87f359ab582635",
+    "name": "DotNet Management SDK Stack",
+    "api_key": "blt1747bf073521a923",
+    "owner_uid": "blt37ba39e03b130064",
+    "owner": {
+      "email": "harshitha.d@contentstack.com",
+      "first_name": "Harshitha",
+      "last_name": "D",
+      "settings": {
+        "preferences": {
+          "global": [],
+          "stack": []
+        }
+      }
+    },
+    "users": {
+      "count": 1
+    }
+  },
+  {
+    "created_at": "2026-03-07T05:55:02.673Z",
+    "updated_at": "2026-03-12T09:31:41.353Z",
+    "uid": "blt8a6cbbbddc7de158",
+    "name": "Dotnet CDA SDK internal test 2",
+    "api_key": "blteda07f97e97feb91",
+    "owner_uid": "blt4c60a7a861d77460",
+    "owner": {
+      "email": "raj.pandey@contentstack.com",
+      "first_name": "Raj",
+      "last_name": "Pandey",
+      "settings": {
+        "preferences": {
+          "global": [],
+          "stack": []
+        }
+      }
+    },
+    "users": {
+      "count": 1
+    }
+  },
+  {
+    "created_at": "2026-03-09T07:22:32.565Z",
+    "updated_at": "2026-03-09T07:22:32.69Z",
+    "uid": "bltdfd4504f05d7ac16",
+    "name": "test123",
+    "api_key": "blt1484e456a1dbab9e",
+    "owner_uid": "blt8e9b3bbef2524228",
+    "owner": {
+      "email": "harshitha.d+prod@contentstack.com",
+      "first_name": "harshitha",
+      "last_name": "d+prod",
+      "settings": {
+        "preferences": {
+          "global": [],
+          "stack": []
+        }
+      }
+    },
+    "users": {
+      "count": 1
+    }
+  },
+  {
+    "created_at": "2026-03-06T13:21:38.649Z",
+    "updated_at": "2026-03-06T13:21:38.766Z",
+    "uid": "blt542fdc5a9cdc623c",
+    "name": "teststack1",
+    "api_key": "blt0ea1eb6ab5aa79ae",
+    "owner_uid": "blt8e9b3bbef2524228",
+    "owner": {
+      "email": "harshitha.d+prod@contentstack.com",
+      "first_name": "harshitha",
+      "last_name": "d+prod",
+      "settings": {
+        "preferences": {
+          "global": [],
+          "stack": []
+        }
+      }
+    },
+    "users": {
+      "count": 1
+    }
+  },
+  {
+    "created_at": "2026-02-12T08:10:52.85Z",
+    "updated_at": "2026-03-02T12:31:02.856Z",
+    "uid": "blt0181d077e890a38e",
+    "name": "Import Data",
+    "api_key": "bltd967f12af772f0e2",
+    "owner_uid": "blt37ba39e03b130064",
+    "owner": {
+      "email": "harshitha.d@contentstack.com",
+      "first_name": "Harshitha",
+      "last_name": "D",
+      "settings": {
+        "preferences": {
+          "global": [],
+          "stack": []
+        }
+      }
+    },
+    "users": {
+      "count": 1
+    }
+  },
+  {
+    "created_at": "2026-02-12T09:26:38.038Z",
+    "updated_at": "2026-03-02T12:31:02.856Z",
+    "uid": "blt81d6f3d742755c86",
+    "name": "EmptyStack",
+    "api_key": "blta7a69f15c58b01ac",
+    "owner_uid": "blt37ba39e03b130064",
+    "owner": {
+      "email": "harshitha.d@contentstack.com",
+      "first_name": "Harshitha",
+      "last_name": "D",
+      "settings": {
+        "preferences": {
+          "global": [],
+          "stack": []
+        }
+      }
+    },
+    "users": {
+      "count": 1
+    }
+  }
+]
+
+
+
+
AreEqual(stacksType)
+
+
Expected:
Newtonsoft.Json.Linq.JArray
+
Actual:
Newtonsoft.Json.Linq.JArray
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/stacks
+
Request Headers
authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/stacks' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:33 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 20ms
+X-Request-ID: 6f1b2979-d120-45d1-9fb0-aa8172e95f99
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{"stacks":[{"created_at":"2026-03-12T12:35:38.558Z","updated_at":"2026-03-12T12:35:41.085Z","uid":"bltf6dedbb54111facb","name":"DotNet Management SDK Stack","api_key":"blt72045e49dc1aa085","owner_uid":"blt1930fc55e5669df9","owner":{"email":"om.pawar@contentstack.com","first_name":"OM","last_name":"PAWAR","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-12T12:16:53.714Z","updated_at":"2026-03-12T12:16:56.378Z","uid":"blta77d4b24cace786a","name":"DotNet Management SDK Stack","api_key":"bltd87839f91f3e1448","owner_uid":"blt1930fc55e5669df9","owner":{"email":"om.pawar@contentstack.com","first_name":"OM","last_name":"PAWAR","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-06T15:18:49.878Z","updated_at":"2026-03-12T12:11:46.324Z","uid":"bltae6bacc186e4819f","name":"Copy of Dotnet CDA SDK internal test","api_key":"blta23060d14351eb10","owner_uid":"blt4c60a7a861d77460","owner":{"email":"raj.pandey@contentstack.com","first_name":"Raj","last_name":"Pandey","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":2}},{"created_at":"2026-03-12T11:48:59.868Z","updated_at":"2026-03-12T11:48:59.954Z","uid":"bltaa287bfd5509a809","name":"test1234","api_key":"bltf2d85a7d423603d0","owner_uid":"blt8e9b3bbef2524228","owner":{"email":"harshitha.d+prod@contentstack.com","first_name":"harshitha","last_name":"d+prod","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-12T08:47:15.111Z","updated_at":"2026-03-12T09:31:41.353Z","uid":"bltff87f359ab582635","name":"DotNet Management SDK Stack","api_key":"blt1747bf073521a923","owner_uid":"blt37ba39e03b130064","owner":{"email":"harshitha.d@contentstack.com","first_name":"Harshitha","last_name":"D","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-07T05:55:02.673Z","updated_at":"2026-03-12T09:31:41.353Z","uid":"blt8a6cbbbddc7de158","name":"Dotnet CDA SDK internal test 2","api_key":"blteda07f97e97feb91","owner_uid":"blt4c60a7a861d77460","owner":{"email":"raj.pandey@contentstack.com","first_name":"Raj","last_name":"Pandey","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-09T07:22:32.565Z","updated_at":"2026-03-09T07:22:32.690Z","uid":"bltdfd4504f05d7ac16","name":"test123","api_key":"blt1484e456a1dbab9e","owner_uid":"blt8e9b3bbef2524228","owner":{"email":"harshitha.d+prod@contentstack.com","first_name":"harshitha","last_name":"d+prod","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-06T13:21:38.649Z","updated_at":"2026-03-06T13:21:38.766Z","uid":"blt542fdc5a9cdc623c","name":"teststack1","api_key":"blt0ea1eb6ab5aa79ae","owner_uid":"blt8e9b3bbef2524228","owner":{"email":"harshitha.d+prod@contentstack.com","first_name":"harshitha","last_name":"d+prod","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026
+
+ Test Context + + + + +
TestScenarioGetAllStacks
+
Passed0.30s
+
✅ Test013_Should_Remove_User_From_Organization
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "notice": "The invitation has been deleted successfully.",
+  "shares": [
+    {
+      "uid": "blt936398a474ba2f72",
+      "email": "testcs_1@contentstack.com",
+      "user_uid": "blte0e9c5817aa9cc27",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "blt802c2cf444969bc3"
+      ],
+      "invited_by": "blt1930fc55e5669df9",
+      "invited_at": "2026-03-13T02:33:31.004Z",
+      "status": "pending",
+      "created_at": "2026-03-13T02:33:31.002Z",
+      "updated_at": "2026-03-13T02:33:31.002Z"
+    }
+  ]
+}
+
+
+
+
AreEqual(notice)
+
+
Expected:
The invitation has been deleted successfully.
+
Actual:
The invitation has been deleted successfully.
+
+

HTTP Transactions

+
+ +
DELETEhttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share
+
Request Headers
authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 40
+Content-Type: application/json
+
Request Body
{"emails":["testcs_1@contentstack.com"]}
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 40' \
+  -H 'Content-Type: application/json' \
+  -d '{"emails":["testcs_1@contentstack.com"]}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:32 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 137ms
+X-Request-ID: 6ef9d652-6b63-48be-bb7a-4e9834f286da
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "The invitation has been deleted successfully.",
+  "shares": [
+    {
+      "uid": "blt936398a474ba2f72",
+      "email": "testcs_1@contentstack.com",
+      "user_uid": "blte0e9c5817aa9cc27",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "blt802c2cf444969bc3"
+      ],
+      "invited_by": "blt1930fc55e5669df9",
+      "invited_at": "2026-03-13T02:33:31.004Z",
+      "status": "pending",
+      "created_at": "2026-03-13T02:33:31.002Z",
+      "updated_at": "2026-03-13T02:33:31.002Z"
+    }
+  ]
+}
+
+ Test Context + + + + +
TestScenarioRemoveUserAsync
+
Passed0.43s
+
✅ Test011_Should_Resend_Invite
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "notice": "The invitation has been resent successfully."
+}
+
+
+
+
AreEqual(notice)
+
+
Expected:
The invitation has been resent successfully.
+
Actual:
The invitation has been resent successfully.
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share/blt936398a474ba2f72/resend_invitation
+
Request Headers
authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share/blt936398a474ba2f72/resend_invitation' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:31 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 20ms
+X-Request-ID: 3028dbf9-9c16-4357-a660-0f9cf2ac0ce6
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "The invitation has been resent successfully."
+}
+
+ Test Context + + + + +
TestScenarioResendInviteAsync
+
Passed0.30s
+
✅ Test003_Should_Return_With_Skipping_Organizations
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "organizations": []
+}
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/organizations?skip=4
+
Request Headers
authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/organizations?skip=4' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:29 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-runtime: 7ms
+X-Request-ID: 5ba545ad-baac-4973-a851-8e813b672958
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "organizations": []
+}
+
+ Test Context + + + + +
TestScenarioSkipOrganizations
+
Passed0.32s
+
✅ Test004_Should_Return_Organization_With_UID
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "organization": {
+    "_id": "6461c7329ebec1652d7ada73",
+    "uid": "blt8d282118e2094bb8",
+    "name": "SDK org",
+    "plan_id": "sdk_branch_plan",
+    "is_over_usage_allowed": true,
+    "expires_on": "2029-12-21T00:00:00Z",
+    "owner_uid": "blt37ba39e03b130064",
+    "enabled": true,
+    "created_at": "2023-05-15T05:46:26.262Z",
+    "updated_at": "2025-03-17T06:07:47.263Z",
+    "deleted_at": false,
+    "account_id": "",
+    "settings": {
+      "blockAuthQueryParams": true,
+      "allowedCDNTokens": [
+        "access_token"
+      ]
+    },
+    "created_by": "bltf7f13f53e2256a8a",
+    "updated_by": "bltfc88a63ec0767587",
+    "tags": [
+      "testing"
+    ],
+    "__v": 0,
+    "is_transfer_set": false,
+    "transfer_ownership_token": "",
+    "transfer_sent_at": "2025-03-17T06:06:30.203Z",
+    "transfer_to": ""
+  }
+}
+
+
+
+
IsNotNull(organization)
+
+
Expected:
NotNull
+
Actual:
{
+  "_id": "6461c7329ebec1652d7ada73",
+  "uid": "blt8d282118e2094bb8",
+  "name": "SDK org",
+  "plan_id": "sdk_branch_plan",
+  "is_over_usage_allowed": true,
+  "expires_on": "2029-12-21T00:00:00Z",
+  "owner_uid": "blt37ba39e03b130064",
+  "enabled": true,
+  "created_at": "2023-05-15T05:46:26.262Z",
+  "updated_at": "2025-03-17T06:07:47.263Z",
+  "deleted_at": false,
+  "account_id": "",
+  "settings": {
+    "blockAuthQueryParams": true,
+    "allowedCDNTokens": [
+      "access_token"
+    ]
+  },
+  "created_by": "bltf7f13f53e2256a8a",
+  "updated_by": "bltfc88a63ec0767587",
+  "tags": [
+    "testing"
+  ],
+  "__v": 0,
+  "is_transfer_set": false,
+  "transfer_ownership_token": "",
+  "transfer_sent_at": "2025-03-17T06:06:30.203Z",
+  "transfer_to": ""
+}
+
+
+
+
AreEqual(OrganizationName)
+
+
Expected:
SDK org
+
Actual:
SDK org
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8
+
Request Headers
authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:29 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 24ms
+X-Request-ID: f2d75f77-5d25-4f94-9553-6cfa8a10ad47
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "organization": {
+    "_id": "6461c7329ebec1652d7ada73",
+    "uid": "blt8d282118e2094bb8",
+    "name": "SDK org",
+    "plan_id": "sdk_branch_plan",
+    "is_over_usage_allowed": true,
+    "expires_on": "2029-12-21T00:00:00.000Z",
+    "owner_uid": "blt37ba39e03b130064",
+    "enabled": true,
+    "created_at": "2023-05-15T05:46:26.262Z",
+    "updated_at": "2025-03-17T06:07:47.263Z",
+    "deleted_at": false,
+    "account_id": "",
+    "settings": {
+      "blockAuthQueryParams": true,
+      "allowedCDNTokens": [
+        "access_token"
+      ]
+    },
+    "created_by": "bltf7f13f53e2256a8a",
+    "updated_by": "bltfc88a63ec0767587",
+    "tags": [
+      "testing"
+    ],
+    "__v": 0,
+    "is_transfer_set": false,
+    "transfer_ownership_token": "",
+    "transfer_sent_at": "2025-03-17T06:06:30.203Z",
+    "transfer_to": ""
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioGetOrganizationByUID
OrganizationUidblt8d282118e2094bb8
+
Passed0.31s
+
✅ Test015_Should_Get_All_Invites_Async
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "shares": [
+    {
+      "uid": "blt1acd92e2c66a8e59",
+      "email": "om.pawar@contentstack.com",
+      "user_uid": "blt1930fc55e5669df9",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "bltb8a7ba0eb93838aa"
+      ],
+      "invited_by": "blt4c60a7a861d77460",
+      "invited_at": "2026-03-12T12:11:46.187Z",
+      "status": "accepted",
+      "created_at": "2026-03-12T12:11:46.184Z",
+      "updated_at": "2026-03-12T12:12:37.899Z",
+      "first_name": "OM",
+      "last_name": "PAWAR"
+    },
+    {
+      "uid": "blt7e41729c886fc57d",
+      "email": "harshitha.d+prod@contentstack.com",
+      "user_uid": "blt8e9b3bbef2524228",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "bltb8a7ba0eb93838aa"
+      ],
+      "invited_by": "blt37ba39e03b130064",
+      "invited_at": "2026-02-06T11:58:49.035Z",
+      "status": "accepted",
+      "created_at": "2026-02-06T11:58:49.032Z",
+      "updated_at": "2026-02-06T12:03:17.425Z",
+      "first_name": "harshitha",
+      "last_name": "d+prod"
+    },
+    {
+      "uid": "bltbafda600eae98e3f",
+      "email": "cli-dev+oauth@contentstack.com",
+      "user_uid": "bltfd99a11f4cc6a299",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "bltb8a7ba0eb93838aa"
+      ],
+      "invited_by": "blt8e9b3bbef2524228",
+      "invited_at": "2026-01-21T20:09:28.254Z",
+      "status": "accepted",
+      "created_at": "2026-01-21T20:09:28.252Z",
+      "updated_at": "2026-01-21T20:09:28.471Z",
+      "first_name": "oauth",
+      "last_name": "CLI"
+    },
+    {
+      "uid": "blt6790771daee2ca6e",
+      "email": "cli-dev+jscma@contentstack.com",
+      "user_uid": "blt7308c3a62931255f",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "bltb8a7ba0eb93838aa"
+      ],
+      "invited_by": "blt484b7e4e3d1b7f76",
+      "invited_at": "2026-01-20T14:05:42.753Z",
+      "status": "accepted",
+      "created_at": "2026-01-20T14:05:42.75Z",
+      "updated_at": "2026-01-20T14:53:24.25Z",
+      "first_name": "JSCMA",
+      "last_name": "SDK"
+    },
+    {
+      "uid": "blt326c04bdd112ca65",
+      "email": "cli-dev+java-sdk@contentstack.com",
+      "user_uid": "blt5ffa2ada42ff6c6f",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "bltb8a7ba0eb93838aa"
+      ],
+      "invited_by": "blt818cdd837f0ef17f",
+      "invited_at": "2025-05-15T14:36:13.465Z",
+      "status": "accepted",
+      "created_at": "2025-05-15T14:36:13.463Z",
+      "updated_at": "2025-05-15T15:34:21.941Z",
+      "first_name": "Java-cli",
+      "last_name": "java"
+    },
+    {
+      "uid": "blt3d1adbfab4bcb265",
+      "email": "cli-dev+dotnet@contentstack.com",
+      "user_uid": "blta4bbe422a5a3be0c",
+      "message": "",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "bltb8a7ba0eb93838aa"
+      ],
+      "invited_by": "blt818cdd837f0ef17f",
+      "invited_at": "2025-04-10T13:03:22.951Z",
+      "status": "accepted",
+      "created_at": "2025-04-10T13:03:22.949Z",
+      "updated_at": "2025-04-10T13:03:48.789Z",
+      "first_name": "cli-dev+dotnet",
+      "last_name": "Dotnet"
+    },
+    {
+      "uid": "bltbf7c6e51a7379079",
+      "email": "reeshika.hosmani+prod@contentstack.com",
+      "user_uid": "bltcfdd4b7f0f6d14be",
+      "message": "",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "blt802c2cf444969bc3"
+      ],
+      "invited_by": "blte9d0c9dd3a3677cd",
+      "invited_at": "2025-04-10T05:05:10.588Z",
+      "status": "accepted",
+      "created_at": "2025-04-10T05:05:10.585Z",
+      "updated_at": "2025-04-10T05:05:10.585Z",
+      "first_name": "reeshika",
+      "last_name": "hosmani+prod"
+    },
+    {
+      "uid": "blt96e8f36be53136f0",
+      "email": "cli-dev@contentstack.com",
+      "user_uid": "blt818cdd837f0ef17f",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "bltb8a7ba0eb93838aa"
+      ],
+      "invited_by": "blt8e9b3bbef2524228",
+      "invited_at": "2025-04-01T13:15:10.469Z",
+      "status": "accepted",
+      "created_at": "2025-04-01T13:15:10.467Z",
+      "updated_at": "2025-04-01T13:18:40.649Z",
+      "first_name": "CLI",
+      "last_name": "DEV"
+    },
+    {
+      "uid": "blt2f4b6cbf40eebd8c",
+      "email": "harshitha.d@contentstack.com",
+      "user_uid": "blt37ba39e03b130064",
+      "message": "",
+      "org_uid": "blt8d282118e2094bb8",
+      "invited_by": "blt77cdb6f518e1940a",
+      "invited_at": "2023-07-18T12:17:59.778Z",
+      "status": "accepted",
+      "created_at": "2023-07-18T12:17:59.776Z",
+      "updated_at": "2025-03-17T06:07:47.278Z",
+      "is_owner": true,
+      "first_name": "Harshitha",
+      "last_name": "D"
+    },
+    {
+      "uid": "blt1a7e98ba71996a03",
+      "email": "cli-dev+jsmp@contentstack.com",
+      "user_uid": "blt5343a15e88b3afab",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "blt802c2cf444969bc3"
+      ],
+      "invited_by": "blt8e9b3bbef2524228",
+      "invited_at": "2025-02-26T09:02:28.523Z",
+      "status": "accepted",
+      "created_at": "2025-02-26T09:02:28.521Z",
+      "updated_at": "2025-02-26T09:02:28.773Z",
+      "first_name": "cli-dev+jsmp",
+      "last_name": "MP"
+    }
+  ]
+}
+
+
+
+
IsNotNull(shares)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "uid": "blt1acd92e2c66a8e59",
+    "email": "om.pawar@contentstack.com",
+    "user_uid": "blt1930fc55e5669df9",
+    "org_uid": "blt8d282118e2094bb8",
+    "org_roles": [
+      "bltb8a7ba0eb93838aa"
+    ],
+    "invited_by": "blt4c60a7a861d77460",
+    "invited_at": "2026-03-12T12:11:46.187Z",
+    "status": "accepted",
+    "created_at": "2026-03-12T12:11:46.184Z",
+    "updated_at": "2026-03-12T12:12:37.899Z",
+    "first_name": "OM",
+    "last_name": "PAWAR"
+  },
+  {
+    "uid": "blt7e41729c886fc57d",
+    "email": "harshitha.d+prod@contentstack.com",
+    "user_uid": "blt8e9b3bbef2524228",
+    "org_uid": "blt8d282118e2094bb8",
+    "org_roles": [
+      "bltb8a7ba0eb93838aa"
+    ],
+    "invited_by": "blt37ba39e03b130064",
+    "invited_at": "2026-02-06T11:58:49.035Z",
+    "status": "accepted",
+    "created_at": "2026-02-06T11:58:49.032Z",
+    "updated_at": "2026-02-06T12:03:17.425Z",
+    "first_name": "harshitha",
+    "last_name": "d+prod"
+  },
+  {
+    "uid": "bltbafda600eae98e3f",
+    "email": "cli-dev+oauth@contentstack.com",
+    "user_uid": "bltfd99a11f4cc6a299",
+    "org_uid": "blt8d282118e2094bb8",
+    "org_roles": [
+      "bltb8a7ba0eb93838aa"
+    ],
+    "invited_by": "blt8e9b3bbef2524228",
+    "invited_at": "2026-01-21T20:09:28.254Z",
+    "status": "accepted",
+    "created_at": "2026-01-21T20:09:28.252Z",
+    "updated_at": "2026-01-21T20:09:28.471Z",
+    "first_name": "oauth",
+    "last_name": "CLI"
+  },
+  {
+    "uid": "blt6790771daee2ca6e",
+    "email": "cli-dev+jscma@contentstack.com",
+    "user_uid": "blt7308c3a62931255f",
+    "org_uid": "blt8d282118e2094bb8",
+    "org_roles": [
+      "bltb8a7ba0eb93838aa"
+    ],
+    "invited_by": "blt484b7e4e3d1b7f76",
+    "invited_at": "2026-01-20T14:05:42.753Z",
+    "status": "accepted",
+    "created_at": "2026-01-20T14:05:42.75Z",
+    "updated_at": "2026-01-20T14:53:24.25Z",
+    "first_name": "JSCMA",
+    "last_name": "SDK"
+  },
+  {
+    "uid": "blt326c04bdd112ca65",
+    "email": "cli-dev+java-sdk@contentstack.com",
+    "user_uid": "blt5ffa2ada42ff6c6f",
+    "org_uid": "blt8d282118e2094bb8",
+    "org_roles": [
+      "bltb8a7ba0eb93838aa"
+    ],
+    "invited_by": "blt818cdd837f0ef17f",
+    "invited_at": "2025-05-15T14:36:13.465Z",
+    "status": "accepted",
+    "created_at": "2025-05-15T14:36:13.463Z",
+    "updated_at": "2025-05-15T15:34:21.941Z",
+    "first_name": "Java-cli",
+    "last_name": "java"
+  },
+  {
+    "uid": "blt3d1adbfab4bcb265",
+    "email": "cli-dev+dotnet@contentstack.com",
+    "user_uid": "blta4bbe422a5a3be0c",
+    "message": "",
+    "org_uid": "blt8d282118e2094bb8",
+    "org_roles": [
+      "bltb8a7ba0eb93838aa"
+    ],
+    "invited_by": "blt818cdd837f0ef17f",
+    "invited_at": "2025-04-10T13:03:22.951Z",
+    "status": "accepted",
+    "created_at": "2025-04-10T13:03:22.949Z",
+    "updated_at": "2025-04-10T13:03:48.789Z",
+    "first_name": "cli-dev+dotnet",
+    "last_name": "Dotnet"
+  },
+  {
+    "uid": "bltbf7c6e51a7379079",
+    "email": "reeshika.hosmani+prod@contentstack.com",
+    "user_uid": "bltcfdd4b7f0f6d14be",
+    "message": "",
+    "org_uid": "blt8d282118e2094bb8",
+    "org_roles": [
+      "blt802c2cf444969bc3"
+    ],
+    "invited_by": "blte9d0c9dd3a3677cd",
+    "invited_at": "2025-04-10T05:05:10.588Z",
+    "status": "accepted",
+    "created_at": "2025-04-10T05:05:10.585Z",
+    "updated_at": "2025-04-10T05:05:10.585Z",
+    "first_name": "reeshika",
+    "last_name": "hosmani+prod"
+  },
+  {
+    "uid": "blt96e8f36be53136f0",
+    "email": "cli-dev@contentstack.com",
+    "user_uid": "blt818cdd837f0ef17f",
+    "org_uid": "blt8d282118e2094bb8",
+    "org_roles": [
+      "bltb8a7ba0eb93838aa"
+    ],
+    "invited_by": "blt8e9b3bbef2524228",
+    "invited_at": "2025-04-01T13:15:10.469Z",
+    "status": "accepted",
+    "created_at": "2025-04-01T13:15:10.467Z",
+    "updated_at": "2025-04-01T13:18:40.649Z",
+    "first_name": "CLI",
+    "last_name": "DEV"
+  },
+  {
+    "uid": "blt2f4b6cbf40eebd8c",
+    "email": "harshitha.d@contentstack.com",
+    "user_uid": "blt37ba39e03b130064",
+    "message": "",
+    "org_uid": "blt8d282118e2094bb8",
+    "invited_by": "blt77cdb6f518e1940a",
+    "invited_at": "2023-07-18T12:17:59.778Z",
+    "status": "accepted",
+    "created_at": "2023-07-18T12:17:59.776Z",
+    "updated_at": "2025-03-17T06:07:47.278Z",
+    "is_owner": true,
+    "first_name": "Harshitha",
+    "last_name": "D"
+  },
+  {
+    "uid": "blt1a7e98ba71996a03",
+    "email": "cli-dev+jsmp@contentstack.com",
+    "user_uid": "blt5343a15e88b3afab",
+    "org_uid": "blt8d282118e2094bb8",
+    "org_roles": [
+      "blt802c2cf444969bc3"
+    ],
+    "invited_by": "blt8e9b3bbef2524228",
+    "invited_at": "2025-02-26T09:02:28.523Z",
+    "status": "accepted",
+    "created_at": "2025-02-26T09:02:28.521Z",
+    "updated_at": "2025-02-26T09:02:28.773Z",
+    "first_name": "cli-dev+jsmp",
+    "last_name": "MP"
+  }
+]
+
+
+
+
AreEqual(sharesType)
+
+
Expected:
Newtonsoft.Json.Linq.JArray
+
Actual:
Newtonsoft.Json.Linq.JArray
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share
+
Request Headers
authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:33 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 17ms
+X-Request-ID: 94b293d9-d034-41f4-888a-c1ad501d7552
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{"shares":[{"uid":"blt1acd92e2c66a8e59","email":"om.pawar@contentstack.com","user_uid":"blt1930fc55e5669df9","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt4c60a7a861d77460","invited_at":"2026-03-12T12:11:46.187Z","status":"accepted","created_at":"2026-03-12T12:11:46.184Z","updated_at":"2026-03-12T12:12:37.899Z","first_name":"OM","last_name":"PAWAR"},{"uid":"blt7e41729c886fc57d","email":"harshitha.d+prod@contentstack.com","user_uid":"blt8e9b3bbef2524228","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt37ba39e03b130064","invited_at":"2026-02-06T11:58:49.035Z","status":"accepted","created_at":"2026-02-06T11:58:49.032Z","updated_at":"2026-02-06T12:03:17.425Z","first_name":"harshitha","last_name":"d+prod"},{"uid":"bltbafda600eae98e3f","email":"cli-dev+oauth@contentstack.com","user_uid":"bltfd99a11f4cc6a299","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt8e9b3bbef2524228","invited_at":"2026-01-21T20:09:28.254Z","status":"accepted","created_at":"2026-01-21T20:09:28.252Z","updated_at":"2026-01-21T20:09:28.471Z","first_name":"oauth","last_name":"CLI"},{"uid":"blt6790771daee2ca6e","email":"cli-dev+jscma@contentstack.com","user_uid":"blt7308c3a62931255f","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt484b7e4e3d1b7f76","invited_at":"2026-01-20T14:05:42.753Z","status":"accepted","created_at":"2026-01-20T14:05:42.750Z","updated_at":"2026-01-20T14:53:24.250Z","first_name":"JSCMA","last_name":"SDK"},{"uid":"blt326c04bdd112ca65","email":"cli-dev+java-sdk@contentstack.com","user_uid":"blt5ffa2ada42ff6c6f","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt818cdd837f0ef17f","invited_at":"2025-05-15T14:36:13.465Z","status":"accepted","created_at":"2025-05-15T14:36:13.463Z","updated_at":"2025-05-15T15:34:21.941Z","first_name":"Java-cli","last_name":"java"},{"uid":"blt3d1adbfab4bcb265","email":"cli-dev+dotnet@contentstack.com","user_uid":"blta4bbe422a5a3be0c","message":"","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt818cdd837f0ef17f","invited_at":"2025-04-10T13:03:22.951Z","status":"accepted","created_at":"2025-04-10T13:03:22.949Z","updated_at":"2025-04-10T13:03:48.789Z","first_name":"cli-dev+dotnet","last_name":"Dotnet"},{"uid":"bltbf7c6e51a7379079","email":"reeshika.hosmani+prod@contentstack.com","user_uid":"bltcfdd4b7f0f6d14be","message":"","org_uid":"blt8d282118e2094bb8","org_roles":["blt802c2cf444969bc3"],"invited_by":"blte9d0c9dd3a3677cd","invited_at":"2025-04-10T05:05:10.588Z","status":"accepted","created_at":"2025-04-10T05:05:10.585Z","updated_at":"2025-04-10T05:05:10.585Z","first_name":"reeshika","last_name":"hosmani+prod"},{"uid":"blt96e8f36be53136f0","email":"cli-dev@contentstack.com","user_uid":"blt818cdd837f0ef17f","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt8e9b3bbef2524228","invited_at":"202
+
+ Test Context + + + + +
TestScenarioGetAllInvitesAsync
+
Passed0.31s
+
✅ Test009_Should_Add_User_To_Organization
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "notice": "The invitation has been sent successfully.",
+  "shares": [
+    {
+      "uid": "blt936398a474ba2f72",
+      "email": "testcs_1@contentstack.com",
+      "user_uid": "blte0e9c5817aa9cc27",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "blt802c2cf444969bc3"
+      ],
+      "invited_by": "blt1930fc55e5669df9",
+      "invited_at": "2026-03-13T02:33:31.004Z",
+      "status": "pending",
+      "created_at": "2026-03-13T02:33:31.002Z",
+      "updated_at": "2026-03-13T02:33:31.002Z"
+    }
+  ]
+}
+
+
+
+
AreEqual(sharesCount)
+
+
Expected:
1
+
Actual:
1
+
+
+
+
AreEqual(notice)
+
+
Expected:
The invitation has been sent successfully.
+
Actual:
The invitation has been sent successfully.
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share
+
Request Headers
authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 73
+Content-Type: application/json
+
Request Body
{"share":{"users":{"testcs_1@contentstack.com":["blt802c2cf444969bc3"]}}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 73' \
+  -H 'Content-Type: application/json' \
+  -d '{"share":{"users":{"testcs_1@contentstack.com":["blt802c2cf444969bc3"]}}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:31 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 60ms
+X-Request-ID: ddbaccc8-53cb-4495-bf6b-d79a171a4e9e
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "The invitation has been sent successfully.",
+  "shares": [
+    {
+      "uid": "blt936398a474ba2f72",
+      "email": "testcs_1@contentstack.com",
+      "user_uid": "blte0e9c5817aa9cc27",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "blt802c2cf444969bc3"
+      ],
+      "invited_by": "blt1930fc55e5669df9",
+      "invited_at": "2026-03-13T02:33:31.004Z",
+      "status": "pending",
+      "created_at": "2026-03-13T02:33:31.002Z",
+      "updated_at": "2026-03-13T02:33:31.002Z"
+    }
+  ]
+}
+
+ Test Context + + + + +
TestScenarioAddUserToOrgAsync
+
Passed0.36s
+
✅ Test012_Should_Remove_User_From_Organization
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "notice": "The invitation has been deleted successfully.",
+  "shares": [
+    {
+      "uid": "bltbd1e5e658d86592f",
+      "email": "testcs@contentstack.com",
+      "user_uid": "bltdfb5035a5e13faa8",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "blt802c2cf444969bc3"
+      ],
+      "invited_by": "blt1930fc55e5669df9",
+      "invited_at": "2026-03-13T02:33:30.662Z",
+      "status": "pending",
+      "created_at": "2026-03-13T02:33:30.66Z",
+      "updated_at": "2026-03-13T02:33:30.66Z"
+    }
+  ]
+}
+
+
+
+
AreEqual(notice)
+
+
Expected:
The invitation has been deleted successfully.
+
Actual:
The invitation has been deleted successfully.
+
+

HTTP Transactions

+
+ +
DELETEhttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share
+
Request Headers
authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 38
+Content-Type: application/json
+
Request Body
{"emails":["testcs@contentstack.com"]}
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 38' \
+  -H 'Content-Type: application/json' \
+  -d '{"emails":["testcs@contentstack.com"]}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:32 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 135ms
+X-Request-ID: 5b04b87d-4f82-44d1-beeb-2fa038045acc
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "The invitation has been deleted successfully.",
+  "shares": [
+    {
+      "uid": "bltbd1e5e658d86592f",
+      "email": "testcs@contentstack.com",
+      "user_uid": "bltdfb5035a5e13faa8",
+      "org_uid": "blt8d282118e2094bb8",
+      "org_roles": [
+        "blt802c2cf444969bc3"
+      ],
+      "invited_by": "blt1930fc55e5669df9",
+      "invited_at": "2026-03-13T02:33:30.662Z",
+      "status": "pending",
+      "created_at": "2026-03-13T02:33:30.660Z",
+      "updated_at": "2026-03-13T02:33:30.660Z"
+    }
+  ]
+}
+
+ Test Context + + + + +
TestScenarioRemoveUser
+
Passed0.43s
+
✅ Test005_Should_Return_Organization_With_UID_Include_Plan
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "organization": {
+    "_id": "6461c7329ebec1652d7ada73",
+    "uid": "blt8d282118e2094bb8",
+    "name": "SDK org",
+    "plan_id": "sdk_branch_plan",
+    "is_over_usage_allowed": true,
+    "expires_on": "2029-12-21T00:00:00Z",
+    "owner_uid": "blt37ba39e03b130064",
+    "enabled": true,
+    "created_at": "2023-05-15T05:46:26.262Z",
+    "updated_at": "2025-03-17T06:07:47.263Z",
+    "deleted_at": false,
+    "account_id": "",
+    "settings": {
+      "blockAuthQueryParams": true,
+      "allowedCDNTokens": [
+        "access_token"
+      ]
+    },
+    "created_by": "bltf7f13f53e2256a8a",
+    "updated_by": "bltfc88a63ec0767587",
+    "tags": [
+      "testing"
+    ],
+    "__v": 0,
+    "is_transfer_set": false,
+    "transfer_ownership_token": "",
+    "transfer_sent_at": "2025-03-17T06:06:30.203Z",
+    "transfer_to": "",
+    "plan": {
+      "plan_id": "sdk_branch_plan",
+      "name": "sdk_branch_plan",
+      "message": "",
+      "price": "$0",
+      "features": [
+        {
+          "uid": "users",
+          "name": "Users",
+          "key_order": 1,
+          "enabled": true,
+          "limit": 1000,
+          "max_limit": 1000,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "roles",
+          "name": "UserRoles",
+          "key_order": 2,
+          "enabled": true,
+          "limit": 10,
+          "max_limit": 10,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "sso",
+          "name": "SSO",
+          "key_order": 3,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "ssoRoles",
+          "name": "ssoRoles",
+          "key_order": 4,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "environments",
+          "name": "Environments",
+          "key_order": 1,
+          "enabled": true,
+          "limit": 400,
+          "max_limit": 400,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "branches",
+          "name": "branches",
+          "key_order": 2,
+          "enabled": true,
+          "limit": 10,
+          "max_limit": 10,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "branch_aliases",
+          "name": "branch_aliases",
+          "key_order": 3,
+          "enabled": true,
+          "limit": 10,
+          "max_limit": 10,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "digitalProperties",
+          "name": "DigitalProperties",
+          "key_order": 4,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "fieldModifierLocation",
+          "name": "Extension Field Modifier Location",
+          "key_order": 4,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "limit",
+          "name": "API Write Request Limit",
+          "key_order": 5,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 100,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "getLimit",
+          "name": "CMA GET Limit",
+          "key_order": 6,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 100,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "apiBandwidth",
+          "name": "API Bandwidth",
+          "key_order": 9,
+          "enabled": true,
+          "limit": 5000000000000,
+          "max_limit": 5000000000000,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "apiRequests",
+          "name": "API Requests",
+          "key_order": 10,
+          "enabled": true,
+          "limit": 6000000,
+          "max_limit": 6000000,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "managementTokensLimit",
+          "name": "managementTokensLimit",
+          "key_order": 11,
+          "enabled": true,
+          "limit": 20,
+          "max_limit": 20,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "newCDA",
+          "name": "New CDA API",
+          "key_order": 12,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "syncCDA",
+          "name": "default",
+          "key_order": 13,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 2,
+          "is_required": false,
+          "is_name_editable": true,
+          "depends_on": []
+        },
+        {
+          "uid": "fullPageLocation",
+          "name": "Extension Full Page Location",
+          "key_order": 13,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "newCDAWorkflow",
+          "name": "newCDAWorkflow",
+          "key_order": 14,
+          "enabled": true,
+          "limit": 0,
+          "max_limit": 3,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "getCdaLimit",
+          "name": "CDA rate limit",
+          "key_order": 15,
+          "enabled": true,
+          "limit": 500,
+          "max_limit": 500,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "workflowEntryLock",
+          "name": "Enable Workflow Stage Entry Locking ",
+          "key_order": 16,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "extension",
+          "name": "extension",
+          "key_order": 17,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "bin",
+          "name": "Enable Trash bin",
+          "key_order": 19,
+          "enabled": true,
+          "limit": 14,
+          "max_limit": 14,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "deliveryTokens",
+          "name": "DeliveryTokens",
+          "key_order": 22,
+          "enabled": true,
+          "limit": 3,
+          "max_limit": 3,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "cow_search",
+          "name": "Cow Search",
+          "key_order": 23,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "searchV2",
+          "name": "search V2",
+          "key_order": 24,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "newRefAndPartialSearch",
+          "name": "Reference and PartialSearch",
+          "key_order": 25,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "assetSearchV2",
+          "name": "Asset Search V2",
+          "key_order": 26,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "app_switcher",
+          "name": "App Switcher",
+          "key_order": 27,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "release_v2",
+          "name": "Release v2",
+          "key_order": 28,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "useCUDToViewManagementAPI",
+          "name": "View Management API for CUD Operations",
+          "key_order": 29,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "useViewManagementAPI",
+          "name": "View Management API",
+          "key_order": 30,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "globalDashboardAccess",
+          "name": "Global Dashboard Access",
+          "key_order": 34,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": [
+            "app_switcher"
+          ]
+        },
+        {
+          "uid": "readPublishLogsFromElastic",
+          "name": "Read Publish Logs from Elastic",
+          "key_order": 35,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "includeCMAReleaseLogsByDefault",
+          "name": "Include CMA Release Logs by Default",
+          "key_order": 36,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "cow_assets",
+          "name": "cow_assets",
+          "is_custom": true,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "group_key": "organization"
+        },
+        {
+          "uid": "dashboard",
+          "name": "Dashboard",
+          "key_order": 1,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "globalSearch",
+          "name": "globalSearch",
+          "key_order": 2,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "workflow",
+          "name": "Workflow",
+          "key_order": 3,
+          "enabled": true,
+          "limit": 10,
+          "max_limit": 10,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "dashboard_widget",
+          "name": "dashboard_widget",
+          "key_order": 4,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "extension_widget",
+          "name": "Custom Widgets",
+          "key_order": 5,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "incubationProjAccess",
+          "name": "incubationProjAccess",
+          "key_order": 6,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "analytics",
+          "name": "Analytics",
+          "key_order": 7,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "analyticsDashboard",
+          "name": "analyticsDashboard",
+          "key_order": 8,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "newDashboardEnabled",
+          "name": "newDashboardEnabled",
+          "key_order": 9,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "marketplaceAccess",
+          "name": "Market Place Access",
+          "key_order": 11,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "livePreview",
+          "name": "Live Preview",
+          "key_order": 12,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "nestedReferencePublishAccess",
+          "name": "Nested Reference Publish Access",
+          "key_order": 13,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 10,
+          "is_name_editable": false,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "nestedReferencePublishDepth",
+          "name": "Nested Graph Publish Depth",
+          "key_order": 14,
+          "enabled": true,
+          "limit": 10,
+          "max_limit": 10,
+          "depends_on": [
+            "nestedReferencePublishAccess"
+          ],
+          "is_name_editable": false,
+          "is_required": false
+        },
+        {
+          "uid": "livePreviewGraphql",
+          "name": "Live Preview Support for GraphQL",
+          "key_order": 15,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "previewTokens",
+          "name": "Preview tokens",
+          "key_order": 16,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": [
+            "livePreview"
+          ]
+        },
+        {
+          "uid": "in_app_notification_access",
+          "name": "Global Notifications",
+          "key_order": 17,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "timelineAPI",
+          "name": "timelineAPI",
+          "key_order": 18,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": [
+            "livePreview"
+          ]
+        },
+        {
+          "uid": "productAnalyticsV2",
+          "name": "Enhanced Product Analytics App productAnalyticsV2",
+          "key_order": 21,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "visualBuilderAccess",
+          "name": "Visual Build Access",
+          "key_order": 22,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": [
+            "livePreview"
+          ]
+        },
+        {
+          "uid": "global_notification_cma",
+          "name": "Global Notifications enablement for CMA",
+          "key_order": 23,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "discovery_dashboard",
+          "name": "Platform features - Discovery Dashboard",
+          "key_order": 28,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "nestedReferencePublishLog",
+          "name": "nestedReferencePublishLog",
+          "is_custom": true,
+          "enabled": true,
+          "limit": 10,
+          "max_limit": 10,
+          "group_key": "platform"
+        },
+        {
+          "uid": "nestedSinglePublishing",
+          "name": "nestedSinglePublishing",
+          "is_custom": true,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "group_key": "platform"
+        },
+        {
+          "uid": "stacks",
+          "name": "Stacks",
+          "key_order": 1,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 100,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "stackCreationLimit",
+          "name": "Stack Creation Limit",
+          "key_order": 2,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 100,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "releases",
+          "name": "Releases",
+          "key_order": 3,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 100,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "assets",
+          "name": "Assets",
+          "key_order": 4,
+          "enabled": true,
+          "limit": 10000,
+          "max_limit": 10000,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "content_types",
+          "name": "Content Types",
+          "key_order": 5,
+          "enabled": true,
+          "limit": 10000,
+          "max_limit": 10000,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "entries",
+          "name": "Entries",
+          "key_order": 6,
+          "enabled": true,
+          "limit": 10000,
+          "max_limit": 10000,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "global_fields",
+          "name": "Global Fields",
+          "key_order": 7,
+          "enabled": true,
+          "limit": 1000,
+          "max_limit": 1000,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "metadata",
+          "name": "metadata",
+          "key_order": 8,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "entryDiscussion",
+          "name": "entryDiscussion",
+          "key_order": 10,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 100,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "inProgressEntries",
+          "name": "inProgressEntries",
+          "key_order": 11,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "preserveMetadata",
+          "name": "Preserve Metadata in multiple group,global field and blocks",
+          "key_order": 12,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "assetExtension",
+          "name": "assetExtension",
+          "key_order": 13,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "includeOptimization",
+          "name": "Include Reference Optimization",
+          "key_order": 14,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "bypassRegexChecks",
+          "name": "Bypass Field Validation Regex Checks",
+          "key_order": 15,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "socialEmbed",
+          "name": "socialEmbed",
+          "key_order": 16,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxFieldsLimit",
+          "name": "maxFieldsLimit",
+          "key_order": 18,
+          "enabled": true,
+          "limit": 250,
+          "max_limit": 250,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxMetadataSizeInBytes",
+          "name": "maxMetadataSizeInBytes",
+          "key_order": 19,
+          "enabled": true,
+          "limit": 15000,
+          "max_limit": 15000,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxReleaseItems",
+          "name": "Max Items in a Release",
+          "key_order": 20,
+          "enabled": true,
+          "limit": 500,
+          "max_limit": 500,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxIncludeReferenceDepth",
+          "name": "maxIncludeReferenceDepth",
+          "key_order": 21,
+          "enabled": true,
+          "limit": 10,
+          "max_limit": 10,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxContentTypesPerReferenceField",
+          "name": "maxContentTypesPerReferenceField",
+          "key_order": 22,
+          "enabled": true,
+          "limit": 50,
+          "max_limit": 50,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxDynamicBlocksPerContentType",
+          "name": "maxDynamicBlocksPerContentType",
+          "key_order": 23,
+          "enabled": true,
+          "limit": 50,
+          "max_limit": 50,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxEntriesPerReferenceField",
+          "name": "maxEntriesPerReferenceField",
+          "key_order": 24,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 100,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxDynamicBlockDefinations",
+          "name": "maxDynamicBlockDefinations",
+          "key_order": 25,
+          "enabled": true,
+          "limit": 50,
+          "max_limit": 50,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxDynamicBlockObjects",
+          "name": "maxDynamicBlockObjects",
+          "key_order": 26,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 100,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxAssetFolders",
+          "name": "Max Asset Folders per Stack",
+          "key_order": 27,
+          "enabled": true,
+          "limit": 10000,
+          "max_limit": 10000,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxDynamicBlocksNestingDepth",
+          "name": "Modular Blocks Depth",
+          "key_order": 28,
+          "enabled": true,
+          "limit": 50,
+          "max_limit": 50,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxAssetSize",
+          "name": "MaxAsset Size",
+          "key_order": 29,
+          "enabled": true,
+          "limit": 15000000,
+          "max_limit": 15000000,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxGlobalFieldReferredInCT",
+          "name": "Max Global Fields per Content Type",
+          "key_order": 32,
+          "enabled": true,
+          "limit": 50,
+          "max_limit": 50,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "inQueryMaxObjectsLimit",
+          "name": "inQueryMaxObjectsLimit",
+          "key_order": 33,
+          "enabled": true,
+          "limit": 1300,
+          "max_limit": 1300,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxContentTypesPerReference",
+          "name": "Max Content Types per Reference",
+          "key_order": 36,
+          "enabled": true,
+          "limit": 50,
+          "max_limit": 50,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxGlobalFieldInstances",
+          "name": "Max Global Field Instances per Content Type",
+          "key_order": 37,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 100,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "cms_variants",
+          "name": "CMS Variants",
+          "key_order": 38,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "nested_global_fields",
+          "name": "Nested Global Fields",
+          "key_order": 39,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "nested_global_fields_max_nesting_depth",
+          "name": "Nested Global Fields Max Nesting Depth",
+          "key_order": 40,
+          "enabled": true,
+          "limit": 10,
+          "max_limit": 10,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "labels",
+          "name": "Labels",
+          "key_order": 41,
+          "enabled": true,
+          "limit": 500,
+          "max_limit": 500,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "entry_tabs",
+          "name": "entry tabs",
+          "key_order": 42,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "branchesV2",
+          "name": "Branches V2",
+          "key_order": 43,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "taxonomy_localization",
+          "name": "taxonomy_localization",
+          "key_order": 42,
+          "is_custom": true,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "group_key": "stacks"
+        },
+        {
+          "uid": "locales",
+          "name": "Max Publishing Locales",
+          "key_order": 1,
+          "enabled": true,
+          "limit": 50,
+          "max_limit": 50,
+          "is_required": false,
+          "depends_on": [],
+          "uuid": "2fd299f9-dcaf-4643-90b8-bb49a4d30a8d"
+        },
+        {
+          "uid": "languageFallback",
+          "name": "Fallback Language",
+          "key_order": 2,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "fieldLevelLocalization",
+          "name": "fieldLevelLocalization",
+          "key_order": 3,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "fieldLevelLocalizationGlobalFields",
+          "name": "fieldLevelLocalizationGlobalFields",
+          "key_order": 4,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "bulkPublishEntriesLocalesLimit",
+          "name": "Bulk Publishing Multiple Locales Limit",
+          "key_order": 5,
+          "enabled": true,
+          "limit": 50,
+          "max_limit": 50,
+          "is_required": false,
+          "depends_on": [],
+          "uuid": "1e9fbe1d-b838-45b3-b060-373e09254492"
+        },
+        {
+          "uid": "publishLocalizedVersions",
+          "name": "Bulk Language Publish",
+          "key_order": 7,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "automationAccess",
+          "name": "Automation Hub Access",
+          "key_order": 1,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "automation_exec_soft_limit",
+          "name": "Execution Soft Limit",
+          "key_order": 7,
+          "enabled": true,
+          "limit": 200,
+          "max_limit": 200,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "automation_exec_hard_limit",
+          "name": "Execution Hard Limit",
+          "key_order": 8,
+          "enabled": true,
+          "limit": 200,
+          "max_limit": 200,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "graphql",
+          "name": "GraphQL",
+          "key_order": 1,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "newGraphQL",
+          "name": "GraphQL CDA",
+          "key_order": 2,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "graphqlLimit",
+          "name": "GraphQL Limit",
+          "key_order": 4,
+          "enabled": true,
+          "limit": 80,
+          "max_limit": 80,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "customIndexes",
+          "name": "customIndexes",
+          "key_order": 5,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "publishWithMetadata",
+          "name": "publishWithMetadata",
+          "key_order": 6,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "gql_max_reference_depth",
+          "name": "gql_max_reference_depth",
+          "key_order": 8,
+          "enabled": true,
+          "limit": 5,
+          "max_limit": 5,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "gql_allow_regex",
+          "name": "gql_allow_regex",
+          "key_order": 11,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "contentflyAccess",
+          "name": "Enable Launch Access",
+          "key_order": 1,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "contentfly_projects_per_org",
+          "name": "Number of Launch Projects",
+          "key_order": 2,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 100,
+          "is_required": false,
+          "depends_on": [],
+          "uuid": "cc26eea6-4d33-494e-a449-a663e0323983"
+        },
+        {
+          "uid": "contentfly_environments_per_project",
+          "name": "Number of Launch Environments per Project",
+          "key_order": 4,
+          "enabled": true,
+          "limit": 3,
+          "max_limit": 3,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "contentfly_deployment_build_hours_per_month",
+          "name": "Number of Launch Build Hours per Month",
+          "key_order": 5,
+          "enabled": true,
+          "limit": 50,
+          "max_limit": 50,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "contentfly_build_minutes_per_deployment",
+          "name": "Maximum Launch Build Minutes per Build",
+          "key_order": 6,
+          "enabled": true,
+          "limit": 60,
+          "max_limit": 60,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "contentfly_domains_per_environment",
+          "name": "Maximum Launch Domains per Environment",
+          "key_order": 7,
+          "enabled": true,
+          "limit": 0,
+          "max_limit": 0,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "contentfly_domains_per_project",
+          "name": "Maximum Launch Domains per Project",
+          "key_order": 8,
+          "enabled": true,
+          "limit": 0,
+          "max_limit": 0,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "contentfly_deployhooks_per_environment",
+          "name": "Maximum deployment hooks per Environment",
+          "key_order": 9,
+          "enabled": true,
+          "limit": 5,
+          "max_limit": 5,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "contentfly_server_compute_time_hours",
+          "name": "Maximum server compute time per Project",
+          "key_order": 10,
+          "enabled": true,
+          "limit": 50,
+          "max_limit": 50,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "rtePlugin",
+          "name": "RTE Plugin",
+          "key_order": 1,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "embeddedObjects",
+          "name": "embeddedObjects",
+          "key_order": 2,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxEmbeddedObjectsPerJsonRteField",
+          "name": "maxEmbeddedObjectsPerJsonRteField",
+          "key_order": 3,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 100,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxContentTypesPerJsonRte",
+          "name": "maxContentTypesPerJsonRte",
+          "key_order": 4,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 100,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxJsonRTEReferredInCT",
+          "name": "maxJsonRTEReferredInCT",
+          "key_order": 5,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 100,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxMultipleJsonRte",
+          "name": "maxMultipleJsonRte",
+          "key_order": 6,
+          "enabled": true,
+          "limit": 10000,
+          "max_limit": 10000,
+          "is_required": false,
+          "depends_on": [],
+          "uuid": "f7eff29e-5073-4507-82d3-043cd78841b1"
+        },
+        {
+          "uid": "maxRteJsonSizeInBytes",
+          "name": "maxRteJsonSizeInBytes",
+          "key_order": 7,
+          "enabled": true,
+          "limit": 50000,
+          "max_limit": 50000,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxJSONCustomFieldsPerCT",
+          "name": "maxJSONCustomFieldsPerCT",
+          "key_order": 8,
+          "enabled": true,
+          "limit": 10,
+          "max_limit": 10,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "maxJSONCustomFieldSize",
+          "name": "maxJSONCustomFieldSize",
+          "key_order": 9,
+          "enabled": true,
+          "limit": 45000,
+          "max_limit": 45000,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "rteComment",
+          "name": "RTE Inline Comment",
+          "key_order": 12,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": [
+            "entryDiscussion"
+          ]
+        },
+        {
+          "uid": "emptyPIIValuesInIncludeOwnerForDelivery",
+          "name": "emptyPIIValuesInIncludeOwnerForDelivery",
+          "key_order": 7,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "developerhubAccess",
+          "name": "Developer Hub Access",
+          "key_order": 1,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "developerhub_apps_per_org",
+          "name": "Apps Per Organization",
+          "key_order": 2,
+          "enabled": true,
+          "limit": 500,
+          "max_limit": 500,
+          "is_required": false,
+          "depends_on": [],
+          "uuid": "994f9496-a28a-4617-8559-b38eae0bbccd"
+        },
+        {
+          "uid": "taxonomy",
+          "name": "Taxonomy",
+          "key_order": 1,
+          "enabled": true,
+          "limit": 50,
+          "max_limit": 50,
+          "is_required": false,
+          "depends_on": [],
+          "uuid": "1bbf6393-fd6a-4df1-8bee-a09323c8fc1d"
+        },
+        {
+          "uid": "taxonomy_terms",
+          "name": "Taxonomy Terms",
+          "key_order": 2,
+          "enabled": true,
+          "limit": 10000,
+          "max_limit": 10000,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "taxonomy_terms_max_depth",
+          "name": "Taxonomy Terms Max Depth",
+          "key_order": 3,
+          "enabled": true,
+          "limit": 10,
+          "max_limit": 10,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "max_taxonomies_per_content_type",
+          "name": "Max Taxonomies Per Content Type",
+          "key_order": 4,
+          "enabled": true,
+          "limit": 20,
+          "max_limit": 20,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "taxonomy_permissions",
+          "name": "Taxonomy Permissions",
+          "key_order": 6,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "taxonomy_localization",
+          "name": "taxonomy_localization",
+          "key_order": 7,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "orgAdminAccess",
+          "name": "OrgAdmin Access",
+          "key_order": 1,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "securityConfig",
+          "name": "Security Configuration",
+          "key_order": 2,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "bulk_user_actions",
+          "name": "Bulk User Actions",
+          "key_order": 3,
+          "enabled": true,
+          "limit": 10,
+          "max_limit": 10,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "teams",
+          "name": "Teams",
+          "key_order": 4,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "webhookConfig",
+          "name": "Webhook configuration",
+          "key_order": 6,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "allowedEmailDomains",
+          "name": "Allowed Email Domains",
+          "key_order": 7,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "mfaResetAccess",
+          "name": "Allow admins to reset MFA for users",
+          "key_order": 8,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "personalizationAccess",
+          "name": "Personalization Access",
+          "key_order": 1,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "personalizeProjects",
+          "name": "Projects in Organization",
+          "key_order": 2,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 100,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "personalizeExperiencesPerProject",
+          "name": "Experiences per Project",
+          "key_order": 3,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 1000,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "personalizeAudiencesPerProject",
+          "name": "Audiences per Project",
+          "key_order": 4,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 1000,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "personalizeAttributesPerProject",
+          "name": "Custom Attributes per Project",
+          "key_order": 5,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 1000,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "personalizeEventsPerProject",
+          "name": "Custom Events per Project",
+          "key_order": 6,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 1000,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "personalizeVariantsPerExperience",
+          "name": "Variants per Experience",
+          "key_order": 7,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 100,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "personalizeManifestRequests",
+          "name": "Manifest Requests",
+          "key_order": 9,
+          "enabled": true,
+          "limit": 1000000000,
+          "max_limit": 1000000000,
+          "is_required": false,
+          "depends_on": [],
+          "uuid": "b44e4685-7a5a-480f-b806-6a7bfd325cee"
+        },
+        {
+          "uid": "maxAssetFolderDepth",
+          "name": "Max Asset folder depth",
+          "key_order": 1,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 100,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "bulk-action",
+          "name": "Bulk action",
+          "key_order": 1,
+          "enabled": true,
+          "limit": 50,
+          "max_limit": 50,
+          "is_required": false,
+          "depends_on": [],
+          "uuid": "8635888f-8d4d-42e8-ba87-543408a79df9"
+        },
+        {
+          "uid": "bulkLimit",
+          "name": "Bulk Requests Limit",
+          "key_order": 2,
+          "enabled": true,
+          "limit": 50,
+          "max_limit": 50,
+          "is_required": false,
+          "depends_on": [],
+          "uuid": "1bf3ad4a-2ba0-4bc2-a389-0215edf8910b"
+        },
+        {
+          "uid": "bulk-action-publish",
+          "name": "Bulk action Publish",
+          "key_order": 6,
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 100,
+          "is_required": false,
+          "depends_on": [],
+          "uuid": "780d8549-aa50-49b7-9876-fee45f8b513c"
+        },
+        {
+          "uid": "nestedSinglePublishing",
+          "name": "nestedSinglePublishing",
+          "key_order": 2,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": []
+        },
+        {
+          "uid": "taxonomy_publish",
+          "name": "taxonomy publish",
+          "key_order": 3,
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1,
+          "is_required": false,
+          "depends_on": [],
+          "uuid": "f891ac5b-343c-4999-82b2-1c74be414526"
+        },
+        {
+          "uid": "contentfly_projects",
+          "name": "Number of Launch Projects",
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 100
+        },
+        {
+          "uid": "contentfly_environments",
+          "name": "Number of Launch Environments",
+          "enabled": true,
+          "limit": 30,
+          "max_limit": 30
+        },
+        {
+          "uid": "maxExtensionScopeCtRef",
+          "name": "Scope of CT for custom widgets",
+          "enabled": true,
+          "limit": 23,
+          "max_limit": 23
+        },
+        {
+          "uid": "total_extensions",
+          "name": "total_extensions",
+          "enabled": true,
+          "limit": 100,
+          "max_limit": 100
+        },
+        {
+          "uid": "extConcurrentCallsLimit",
+          "name": "extConcurrentCallsLimit",
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1
+        },
+        {
+          "uid": "releaseDeploymentAllocation",
+          "name": "releaseDeploymentAllocation",
+          "enabled": true,
+          "limit": 3,
+          "max_limit": 3
+        },
+        {
+          "uid": "disableIncludeOwnerForDelivery",
+          "name": "disableIncludeOwnerForDelivery",
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1
+        },
+        {
+          "uid": "extensionsMicroservice",
+          "name": "Extensions Microservice",
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1
+        },
+        {
+          "uid": "Webhook OAuth Access",
+          "name": "webhookOauth",
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1
+        },
+        {
+          "uid": "Audit log for Contentstack Products",
+          "name": "audit_log",
+          "enabled": true,
+          "limit": 1,
+          "max_limit": 1
+        }
+      ],
+      "created_at": "2023-06-07T07:23:21.904Z",
+      "updated_at": "2026-01-22T14:39:31.571Z",
+      "blockedAssetTypes": []
+    }
+  }
+}
+
+
+
+
IsNotNull(organization)
+
+
Expected:
NotNull
+
Actual:
{
+  "_id": "6461c7329ebec1652d7ada73",
+  "uid": "blt8d282118e2094bb8",
+  "name": "SDK org",
+  "plan_id": "sdk_branch_plan",
+  "is_over_usage_allowed": true,
+  "expires_on": "2029-12-21T00:00:00Z",
+  "owner_uid": "blt37ba39e03b130064",
+  "enabled": true,
+  "created_at": "2023-05-15T05:46:26.262Z",
+  "updated_at": "2025-03-17T06:07:47.263Z",
+  "deleted_at": false,
+  "account_id": "",
+  "settings": {
+    "blockAuthQueryParams": true,
+    "allowedCDNTokens": [
+      "access_token"
+    ]
+  },
+  "created_by": "bltf7f13f53e2256a8a",
+  "updated_by": "bltfc88a63ec0767587",
+  "tags": [
+    "testing"
+  ],
+  "__v": 0,
+  "is_transfer_set": false,
+  "transfer_ownership_token": "",
+  "transfer_sent_at": "2025-03-17T06:06:30.203Z",
+  "transfer_to": "",
+  "plan": {
+    "plan_id": "sdk_branch_plan",
+    "name": "sdk_branch_plan",
+    "message": "",
+    "price": "$0",
+    "features": [
+      {
+        "uid": "users",
+        "name": "Users",
+        "key_order": 1,
+        "enabled": true,
+        "limit": 1000,
+        "max_limit": 1000,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "roles",
+        "name": "UserRoles",
+        "key_order": 2,
+        "enabled": true,
+        "limit": 10,
+        "max_limit": 10,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "sso",
+        "name": "SSO",
+        "key_order": 3,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "ssoRoles",
+        "name": "ssoRoles",
+        "key_order": 4,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "environments",
+        "name": "Environments",
+        "key_order": 1,
+        "enabled": true,
+        "limit": 400,
+        "max_limit": 400,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "branches",
+        "name": "branches",
+        "key_order": 2,
+        "enabled": true,
+        "limit": 10,
+        "max_limit": 10,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "branch_aliases",
+        "name": "branch_aliases",
+        "key_order": 3,
+        "enabled": true,
+        "limit": 10,
+        "max_limit": 10,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "digitalProperties",
+        "name": "DigitalProperties",
+        "key_order": 4,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "fieldModifierLocation",
+        "name": "Extension Field Modifier Location",
+        "key_order": 4,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "limit",
+        "name": "API Write Request Limit",
+        "key_order": 5,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 100,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "getLimit",
+        "name": "CMA GET Limit",
+        "key_order": 6,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 100,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "apiBandwidth",
+        "name": "API Bandwidth",
+        "key_order": 9,
+        "enabled": true,
+        "limit": 5000000000000,
+        "max_limit": 5000000000000,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "apiRequests",
+        "name": "API Requests",
+        "key_order": 10,
+        "enabled": true,
+        "limit": 6000000,
+        "max_limit": 6000000,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "managementTokensLimit",
+        "name": "managementTokensLimit",
+        "key_order": 11,
+        "enabled": true,
+        "limit": 20,
+        "max_limit": 20,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "newCDA",
+        "name": "New CDA API",
+        "key_order": 12,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "syncCDA",
+        "name": "default",
+        "key_order": 13,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 2,
+        "is_required": false,
+        "is_name_editable": true,
+        "depends_on": []
+      },
+      {
+        "uid": "fullPageLocation",
+        "name": "Extension Full Page Location",
+        "key_order": 13,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "newCDAWorkflow",
+        "name": "newCDAWorkflow",
+        "key_order": 14,
+        "enabled": true,
+        "limit": 0,
+        "max_limit": 3,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "getCdaLimit",
+        "name": "CDA rate limit",
+        "key_order": 15,
+        "enabled": true,
+        "limit": 500,
+        "max_limit": 500,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "workflowEntryLock",
+        "name": "Enable Workflow Stage Entry Locking ",
+        "key_order": 16,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "extension",
+        "name": "extension",
+        "key_order": 17,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "bin",
+        "name": "Enable Trash bin",
+        "key_order": 19,
+        "enabled": true,
+        "limit": 14,
+        "max_limit": 14,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "deliveryTokens",
+        "name": "DeliveryTokens",
+        "key_order": 22,
+        "enabled": true,
+        "limit": 3,
+        "max_limit": 3,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "cow_search",
+        "name": "Cow Search",
+        "key_order": 23,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "searchV2",
+        "name": "search V2",
+        "key_order": 24,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "newRefAndPartialSearch",
+        "name": "Reference and PartialSearch",
+        "key_order": 25,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "assetSearchV2",
+        "name": "Asset Search V2",
+        "key_order": 26,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "app_switcher",
+        "name": "App Switcher",
+        "key_order": 27,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "release_v2",
+        "name": "Release v2",
+        "key_order": 28,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "useCUDToViewManagementAPI",
+        "name": "View Management API for CUD Operations",
+        "key_order": 29,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "useViewManagementAPI",
+        "name": "View Management API",
+        "key_order": 30,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "globalDashboardAccess",
+        "name": "Global Dashboard Access",
+        "key_order": 34,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": [
+          "app_switcher"
+        ]
+      },
+      {
+        "uid": "readPublishLogsFromElastic",
+        "name": "Read Publish Logs from Elastic",
+        "key_order": 35,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "includeCMAReleaseLogsByDefault",
+        "name": "Include CMA Release Logs by Default",
+        "key_order": 36,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "cow_assets",
+        "name": "cow_assets",
+        "is_custom": true,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "group_key": "organization"
+      },
+      {
+        "uid": "dashboard",
+        "name": "Dashboard",
+        "key_order": 1,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "globalSearch",
+        "name": "globalSearch",
+        "key_order": 2,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "workflow",
+        "name": "Workflow",
+        "key_order": 3,
+        "enabled": true,
+        "limit": 10,
+        "max_limit": 10,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "dashboard_widget",
+        "name": "dashboard_widget",
+        "key_order": 4,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "extension_widget",
+        "name": "Custom Widgets",
+        "key_order": 5,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "incubationProjAccess",
+        "name": "incubationProjAccess",
+        "key_order": 6,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "analytics",
+        "name": "Analytics",
+        "key_order": 7,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "analyticsDashboard",
+        "name": "analyticsDashboard",
+        "key_order": 8,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "newDashboardEnabled",
+        "name": "newDashboardEnabled",
+        "key_order": 9,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "marketplaceAccess",
+        "name": "Market Place Access",
+        "key_order": 11,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "livePreview",
+        "name": "Live Preview",
+        "key_order": 12,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "nestedReferencePublishAccess",
+        "name": "Nested Reference Publish Access",
+        "key_order": 13,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 10,
+        "is_name_editable": false,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "nestedReferencePublishDepth",
+        "name": "Nested Graph Publish Depth",
+        "key_order": 14,
+        "enabled": true,
+        "limit": 10,
+        "max_limit": 10,
+        "depends_on": [
+          "nestedReferencePublishAccess"
+        ],
+        "is_name_editable": false,
+        "is_required": false
+      },
+      {
+        "uid": "livePreviewGraphql",
+        "name": "Live Preview Support for GraphQL",
+        "key_order": 15,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "previewTokens",
+        "name": "Preview tokens",
+        "key_order": 16,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": [
+          "livePreview"
+        ]
+      },
+      {
+        "uid": "in_app_notification_access",
+        "name": "Global Notifications",
+        "key_order": 17,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "timelineAPI",
+        "name": "timelineAPI",
+        "key_order": 18,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": [
+          "livePreview"
+        ]
+      },
+      {
+        "uid": "productAnalyticsV2",
+        "name": "Enhanced Product Analytics App productAnalyticsV2",
+        "key_order": 21,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "visualBuilderAccess",
+        "name": "Visual Build Access",
+        "key_order": 22,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": [
+          "livePreview"
+        ]
+      },
+      {
+        "uid": "global_notification_cma",
+        "name": "Global Notifications enablement for CMA",
+        "key_order": 23,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "discovery_dashboard",
+        "name": "Platform features - Discovery Dashboard",
+        "key_order": 28,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "nestedReferencePublishLog",
+        "name": "nestedReferencePublishLog",
+        "is_custom": true,
+        "enabled": true,
+        "limit": 10,
+        "max_limit": 10,
+        "group_key": "platform"
+      },
+      {
+        "uid": "nestedSinglePublishing",
+        "name": "nestedSinglePublishing",
+        "is_custom": true,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "group_key": "platform"
+      },
+      {
+        "uid": "stacks",
+        "name": "Stacks",
+        "key_order": 1,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 100,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "stackCreationLimit",
+        "name": "Stack Creation Limit",
+        "key_order": 2,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 100,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "releases",
+        "name": "Releases",
+        "key_order": 3,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 100,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "assets",
+        "name": "Assets",
+        "key_order": 4,
+        "enabled": true,
+        "limit": 10000,
+        "max_limit": 10000,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "content_types",
+        "name": "Content Types",
+        "key_order": 5,
+        "enabled": true,
+        "limit": 10000,
+        "max_limit": 10000,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "entries",
+        "name": "Entries",
+        "key_order": 6,
+        "enabled": true,
+        "limit": 10000,
+        "max_limit": 10000,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "global_fields",
+        "name": "Global Fields",
+        "key_order": 7,
+        "enabled": true,
+        "limit": 1000,
+        "max_limit": 1000,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "metadata",
+        "name": "metadata",
+        "key_order": 8,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "entryDiscussion",
+        "name": "entryDiscussion",
+        "key_order": 10,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 100,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "inProgressEntries",
+        "name": "inProgressEntries",
+        "key_order": 11,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "preserveMetadata",
+        "name": "Preserve Metadata in multiple group,global field and blocks",
+        "key_order": 12,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "assetExtension",
+        "name": "assetExtension",
+        "key_order": 13,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "includeOptimization",
+        "name": "Include Reference Optimization",
+        "key_order": 14,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "bypassRegexChecks",
+        "name": "Bypass Field Validation Regex Checks",
+        "key_order": 15,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "socialEmbed",
+        "name": "socialEmbed",
+        "key_order": 16,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxFieldsLimit",
+        "name": "maxFieldsLimit",
+        "key_order": 18,
+        "enabled": true,
+        "limit": 250,
+        "max_limit": 250,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxMetadataSizeInBytes",
+        "name": "maxMetadataSizeInBytes",
+        "key_order": 19,
+        "enabled": true,
+        "limit": 15000,
+        "max_limit": 15000,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxReleaseItems",
+        "name": "Max Items in a Release",
+        "key_order": 20,
+        "enabled": true,
+        "limit": 500,
+        "max_limit": 500,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxIncludeReferenceDepth",
+        "name": "maxIncludeReferenceDepth",
+        "key_order": 21,
+        "enabled": true,
+        "limit": 10,
+        "max_limit": 10,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxContentTypesPerReferenceField",
+        "name": "maxContentTypesPerReferenceField",
+        "key_order": 22,
+        "enabled": true,
+        "limit": 50,
+        "max_limit": 50,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxDynamicBlocksPerContentType",
+        "name": "maxDynamicBlocksPerContentType",
+        "key_order": 23,
+        "enabled": true,
+        "limit": 50,
+        "max_limit": 50,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxEntriesPerReferenceField",
+        "name": "maxEntriesPerReferenceField",
+        "key_order": 24,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 100,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxDynamicBlockDefinations",
+        "name": "maxDynamicBlockDefinations",
+        "key_order": 25,
+        "enabled": true,
+        "limit": 50,
+        "max_limit": 50,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxDynamicBlockObjects",
+        "name": "maxDynamicBlockObjects",
+        "key_order": 26,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 100,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxAssetFolders",
+        "name": "Max Asset Folders per Stack",
+        "key_order": 27,
+        "enabled": true,
+        "limit": 10000,
+        "max_limit": 10000,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxDynamicBlocksNestingDepth",
+        "name": "Modular Blocks Depth",
+        "key_order": 28,
+        "enabled": true,
+        "limit": 50,
+        "max_limit": 50,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxAssetSize",
+        "name": "MaxAsset Size",
+        "key_order": 29,
+        "enabled": true,
+        "limit": 15000000,
+        "max_limit": 15000000,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxGlobalFieldReferredInCT",
+        "name": "Max Global Fields per Content Type",
+        "key_order": 32,
+        "enabled": true,
+        "limit": 50,
+        "max_limit": 50,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "inQueryMaxObjectsLimit",
+        "name": "inQueryMaxObjectsLimit",
+        "key_order": 33,
+        "enabled": true,
+        "limit": 1300,
+        "max_limit": 1300,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxContentTypesPerReference",
+        "name": "Max Content Types per Reference",
+        "key_order": 36,
+        "enabled": true,
+        "limit": 50,
+        "max_limit": 50,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxGlobalFieldInstances",
+        "name": "Max Global Field Instances per Content Type",
+        "key_order": 37,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 100,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "cms_variants",
+        "name": "CMS Variants",
+        "key_order": 38,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "nested_global_fields",
+        "name": "Nested Global Fields",
+        "key_order": 39,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "nested_global_fields_max_nesting_depth",
+        "name": "Nested Global Fields Max Nesting Depth",
+        "key_order": 40,
+        "enabled": true,
+        "limit": 10,
+        "max_limit": 10,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "labels",
+        "name": "Labels",
+        "key_order": 41,
+        "enabled": true,
+        "limit": 500,
+        "max_limit": 500,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "entry_tabs",
+        "name": "entry tabs",
+        "key_order": 42,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "branchesV2",
+        "name": "Branches V2",
+        "key_order": 43,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "taxonomy_localization",
+        "name": "taxonomy_localization",
+        "key_order": 42,
+        "is_custom": true,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "group_key": "stacks"
+      },
+      {
+        "uid": "locales",
+        "name": "Max Publishing Locales",
+        "key_order": 1,
+        "enabled": true,
+        "limit": 50,
+        "max_limit": 50,
+        "is_required": false,
+        "depends_on": [],
+        "uuid": "2fd299f9-dcaf-4643-90b8-bb49a4d30a8d"
+      },
+      {
+        "uid": "languageFallback",
+        "name": "Fallback Language",
+        "key_order": 2,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "fieldLevelLocalization",
+        "name": "fieldLevelLocalization",
+        "key_order": 3,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "fieldLevelLocalizationGlobalFields",
+        "name": "fieldLevelLocalizationGlobalFields",
+        "key_order": 4,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "bulkPublishEntriesLocalesLimit",
+        "name": "Bulk Publishing Multiple Locales Limit",
+        "key_order": 5,
+        "enabled": true,
+        "limit": 50,
+        "max_limit": 50,
+        "is_required": false,
+        "depends_on": [],
+        "uuid": "1e9fbe1d-b838-45b3-b060-373e09254492"
+      },
+      {
+        "uid": "publishLocalizedVersions",
+        "name": "Bulk Language Publish",
+        "key_order": 7,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "automationAccess",
+        "name": "Automation Hub Access",
+        "key_order": 1,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "automation_exec_soft_limit",
+        "name": "Execution Soft Limit",
+        "key_order": 7,
+        "enabled": true,
+        "limit": 200,
+        "max_limit": 200,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "automation_exec_hard_limit",
+        "name": "Execution Hard Limit",
+        "key_order": 8,
+        "enabled": true,
+        "limit": 200,
+        "max_limit": 200,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "graphql",
+        "name": "GraphQL",
+        "key_order": 1,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "newGraphQL",
+        "name": "GraphQL CDA",
+        "key_order": 2,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "graphqlLimit",
+        "name": "GraphQL Limit",
+        "key_order": 4,
+        "enabled": true,
+        "limit": 80,
+        "max_limit": 80,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "customIndexes",
+        "name": "customIndexes",
+        "key_order": 5,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "publishWithMetadata",
+        "name": "publishWithMetadata",
+        "key_order": 6,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "gql_max_reference_depth",
+        "name": "gql_max_reference_depth",
+        "key_order": 8,
+        "enabled": true,
+        "limit": 5,
+        "max_limit": 5,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "gql_allow_regex",
+        "name": "gql_allow_regex",
+        "key_order": 11,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "contentflyAccess",
+        "name": "Enable Launch Access",
+        "key_order": 1,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "contentfly_projects_per_org",
+        "name": "Number of Launch Projects",
+        "key_order": 2,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 100,
+        "is_required": false,
+        "depends_on": [],
+        "uuid": "cc26eea6-4d33-494e-a449-a663e0323983"
+      },
+      {
+        "uid": "contentfly_environments_per_project",
+        "name": "Number of Launch Environments per Project",
+        "key_order": 4,
+        "enabled": true,
+        "limit": 3,
+        "max_limit": 3,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "contentfly_deployment_build_hours_per_month",
+        "name": "Number of Launch Build Hours per Month",
+        "key_order": 5,
+        "enabled": true,
+        "limit": 50,
+        "max_limit": 50,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "contentfly_build_minutes_per_deployment",
+        "name": "Maximum Launch Build Minutes per Build",
+        "key_order": 6,
+        "enabled": true,
+        "limit": 60,
+        "max_limit": 60,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "contentfly_domains_per_environment",
+        "name": "Maximum Launch Domains per Environment",
+        "key_order": 7,
+        "enabled": true,
+        "limit": 0,
+        "max_limit": 0,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "contentfly_domains_per_project",
+        "name": "Maximum Launch Domains per Project",
+        "key_order": 8,
+        "enabled": true,
+        "limit": 0,
+        "max_limit": 0,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "contentfly_deployhooks_per_environment",
+        "name": "Maximum deployment hooks per Environment",
+        "key_order": 9,
+        "enabled": true,
+        "limit": 5,
+        "max_limit": 5,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "contentfly_server_compute_time_hours",
+        "name": "Maximum server compute time per Project",
+        "key_order": 10,
+        "enabled": true,
+        "limit": 50,
+        "max_limit": 50,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "rtePlugin",
+        "name": "RTE Plugin",
+        "key_order": 1,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "embeddedObjects",
+        "name": "embeddedObjects",
+        "key_order": 2,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxEmbeddedObjectsPerJsonRteField",
+        "name": "maxEmbeddedObjectsPerJsonRteField",
+        "key_order": 3,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 100,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxContentTypesPerJsonRte",
+        "name": "maxContentTypesPerJsonRte",
+        "key_order": 4,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 100,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxJsonRTEReferredInCT",
+        "name": "maxJsonRTEReferredInCT",
+        "key_order": 5,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 100,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxMultipleJsonRte",
+        "name": "maxMultipleJsonRte",
+        "key_order": 6,
+        "enabled": true,
+        "limit": 10000,
+        "max_limit": 10000,
+        "is_required": false,
+        "depends_on": [],
+        "uuid": "f7eff29e-5073-4507-82d3-043cd78841b1"
+      },
+      {
+        "uid": "maxRteJsonSizeInBytes",
+        "name": "maxRteJsonSizeInBytes",
+        "key_order": 7,
+        "enabled": true,
+        "limit": 50000,
+        "max_limit": 50000,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxJSONCustomFieldsPerCT",
+        "name": "maxJSONCustomFieldsPerCT",
+        "key_order": 8,
+        "enabled": true,
+        "limit": 10,
+        "max_limit": 10,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "maxJSONCustomFieldSize",
+        "name": "maxJSONCustomFieldSize",
+        "key_order": 9,
+        "enabled": true,
+        "limit": 45000,
+        "max_limit": 45000,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "rteComment",
+        "name": "RTE Inline Comment",
+        "key_order": 12,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": [
+          "entryDiscussion"
+        ]
+      },
+      {
+        "uid": "emptyPIIValuesInIncludeOwnerForDelivery",
+        "name": "emptyPIIValuesInIncludeOwnerForDelivery",
+        "key_order": 7,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "developerhubAccess",
+        "name": "Developer Hub Access",
+        "key_order": 1,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "developerhub_apps_per_org",
+        "name": "Apps Per Organization",
+        "key_order": 2,
+        "enabled": true,
+        "limit": 500,
+        "max_limit": 500,
+        "is_required": false,
+        "depends_on": [],
+        "uuid": "994f9496-a28a-4617-8559-b38eae0bbccd"
+      },
+      {
+        "uid": "taxonomy",
+        "name": "Taxonomy",
+        "key_order": 1,
+        "enabled": true,
+        "limit": 50,
+        "max_limit": 50,
+        "is_required": false,
+        "depends_on": [],
+        "uuid": "1bbf6393-fd6a-4df1-8bee-a09323c8fc1d"
+      },
+      {
+        "uid": "taxonomy_terms",
+        "name": "Taxonomy Terms",
+        "key_order": 2,
+        "enabled": true,
+        "limit": 10000,
+        "max_limit": 10000,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "taxonomy_terms_max_depth",
+        "name": "Taxonomy Terms Max Depth",
+        "key_order": 3,
+        "enabled": true,
+        "limit": 10,
+        "max_limit": 10,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "max_taxonomies_per_content_type",
+        "name": "Max Taxonomies Per Content Type",
+        "key_order": 4,
+        "enabled": true,
+        "limit": 20,
+        "max_limit": 20,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "taxonomy_permissions",
+        "name": "Taxonomy Permissions",
+        "key_order": 6,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "taxonomy_localization",
+        "name": "taxonomy_localization",
+        "key_order": 7,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "orgAdminAccess",
+        "name": "OrgAdmin Access",
+        "key_order": 1,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "securityConfig",
+        "name": "Security Configuration",
+        "key_order": 2,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "bulk_user_actions",
+        "name": "Bulk User Actions",
+        "key_order": 3,
+        "enabled": true,
+        "limit": 10,
+        "max_limit": 10,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "teams",
+        "name": "Teams",
+        "key_order": 4,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "webhookConfig",
+        "name": "Webhook configuration",
+        "key_order": 6,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "allowedEmailDomains",
+        "name": "Allowed Email Domains",
+        "key_order": 7,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "mfaResetAccess",
+        "name": "Allow admins to reset MFA for users",
+        "key_order": 8,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "personalizationAccess",
+        "name": "Personalization Access",
+        "key_order": 1,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "personalizeProjects",
+        "name": "Projects in Organization",
+        "key_order": 2,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 100,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "personalizeExperiencesPerProject",
+        "name": "Experiences per Project",
+        "key_order": 3,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 1000,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "personalizeAudiencesPerProject",
+        "name": "Audiences per Project",
+        "key_order": 4,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 1000,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "personalizeAttributesPerProject",
+        "name": "Custom Attributes per Project",
+        "key_order": 5,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 1000,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "personalizeEventsPerProject",
+        "name": "Custom Events per Project",
+        "key_order": 6,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 1000,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "personalizeVariantsPerExperience",
+        "name": "Variants per Experience",
+        "key_order": 7,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 100,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "personalizeManifestRequests",
+        "name": "Manifest Requests",
+        "key_order": 9,
+        "enabled": true,
+        "limit": 1000000000,
+        "max_limit": 1000000000,
+        "is_required": false,
+        "depends_on": [],
+        "uuid": "b44e4685-7a5a-480f-b806-6a7bfd325cee"
+      },
+      {
+        "uid": "maxAssetFolderDepth",
+        "name": "Max Asset folder depth",
+        "key_order": 1,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 100,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "bulk-action",
+        "name": "Bulk action",
+        "key_order": 1,
+        "enabled": true,
+        "limit": 50,
+        "max_limit": 50,
+        "is_required": false,
+        "depends_on": [],
+        "uuid": "8635888f-8d4d-42e8-ba87-543408a79df9"
+      },
+      {
+        "uid": "bulkLimit",
+        "name": "Bulk Requests Limit",
+        "key_order": 2,
+        "enabled": true,
+        "limit": 50,
+        "max_limit": 50,
+        "is_required": false,
+        "depends_on": [],
+        "uuid": "1bf3ad4a-2ba0-4bc2-a389-0215edf8910b"
+      },
+      {
+        "uid": "bulk-action-publish",
+        "name": "Bulk action Publish",
+        "key_order": 6,
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 100,
+        "is_required": false,
+        "depends_on": [],
+        "uuid": "780d8549-aa50-49b7-9876-fee45f8b513c"
+      },
+      {
+        "uid": "nestedSinglePublishing",
+        "name": "nestedSinglePublishing",
+        "key_order": 2,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": []
+      },
+      {
+        "uid": "taxonomy_publish",
+        "name": "taxonomy publish",
+        "key_order": 3,
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1,
+        "is_required": false,
+        "depends_on": [],
+        "uuid": "f891ac5b-343c-4999-82b2-1c74be414526"
+      },
+      {
+        "uid": "contentfly_projects",
+        "name": "Number of Launch Projects",
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 100
+      },
+      {
+        "uid": "contentfly_environments",
+        "name": "Number of Launch Environments",
+        "enabled": true,
+        "limit": 30,
+        "max_limit": 30
+      },
+      {
+        "uid": "maxExtensionScopeCtRef",
+        "name": "Scope of CT for custom widgets",
+        "enabled": true,
+        "limit": 23,
+        "max_limit": 23
+      },
+      {
+        "uid": "total_extensions",
+        "name": "total_extensions",
+        "enabled": true,
+        "limit": 100,
+        "max_limit": 100
+      },
+      {
+        "uid": "extConcurrentCallsLimit",
+        "name": "extConcurrentCallsLimit",
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1
+      },
+      {
+        "uid": "releaseDeploymentAllocation",
+        "name": "releaseDeploymentAllocation",
+        "enabled": true,
+        "limit": 3,
+        "max_limit": 3
+      },
+      {
+        "uid": "disableIncludeOwnerForDelivery",
+        "name": "disableIncludeOwnerForDelivery",
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1
+      },
+      {
+        "uid": "extensionsMicroservice",
+        "name": "Extensions Microservice",
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1
+      },
+      {
+        "uid": "Webhook OAuth Access",
+        "name": "webhookOauth",
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1
+      },
+      {
+        "uid": "Audit log for Contentstack Products",
+        "name": "audit_log",
+        "enabled": true,
+        "limit": 1,
+        "max_limit": 1
+      }
+    ],
+    "created_at": "2023-06-07T07:23:21.904Z",
+    "updated_at": "2026-01-22T14:39:31.571Z",
+    "blockedAssetTypes": []
+  }
+}
+
+
+
+
IsNotNull(plan)
+
+
Expected:
NotNull
+
Actual:
{
+  "plan_id": "sdk_branch_plan",
+  "name": "sdk_branch_plan",
+  "message": "",
+  "price": "$0",
+  "features": [
+    {
+      "uid": "users",
+      "name": "Users",
+      "key_order": 1,
+      "enabled": true,
+      "limit": 1000,
+      "max_limit": 1000,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "roles",
+      "name": "UserRoles",
+      "key_order": 2,
+      "enabled": true,
+      "limit": 10,
+      "max_limit": 10,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "sso",
+      "name": "SSO",
+      "key_order": 3,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "ssoRoles",
+      "name": "ssoRoles",
+      "key_order": 4,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "environments",
+      "name": "Environments",
+      "key_order": 1,
+      "enabled": true,
+      "limit": 400,
+      "max_limit": 400,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "branches",
+      "name": "branches",
+      "key_order": 2,
+      "enabled": true,
+      "limit": 10,
+      "max_limit": 10,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "branch_aliases",
+      "name": "branch_aliases",
+      "key_order": 3,
+      "enabled": true,
+      "limit": 10,
+      "max_limit": 10,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "digitalProperties",
+      "name": "DigitalProperties",
+      "key_order": 4,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "fieldModifierLocation",
+      "name": "Extension Field Modifier Location",
+      "key_order": 4,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "limit",
+      "name": "API Write Request Limit",
+      "key_order": 5,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 100,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "getLimit",
+      "name": "CMA GET Limit",
+      "key_order": 6,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 100,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "apiBandwidth",
+      "name": "API Bandwidth",
+      "key_order": 9,
+      "enabled": true,
+      "limit": 5000000000000,
+      "max_limit": 5000000000000,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "apiRequests",
+      "name": "API Requests",
+      "key_order": 10,
+      "enabled": true,
+      "limit": 6000000,
+      "max_limit": 6000000,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "managementTokensLimit",
+      "name": "managementTokensLimit",
+      "key_order": 11,
+      "enabled": true,
+      "limit": 20,
+      "max_limit": 20,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "newCDA",
+      "name": "New CDA API",
+      "key_order": 12,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "syncCDA",
+      "name": "default",
+      "key_order": 13,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 2,
+      "is_required": false,
+      "is_name_editable": true,
+      "depends_on": []
+    },
+    {
+      "uid": "fullPageLocation",
+      "name": "Extension Full Page Location",
+      "key_order": 13,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "newCDAWorkflow",
+      "name": "newCDAWorkflow",
+      "key_order": 14,
+      "enabled": true,
+      "limit": 0,
+      "max_limit": 3,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "getCdaLimit",
+      "name": "CDA rate limit",
+      "key_order": 15,
+      "enabled": true,
+      "limit": 500,
+      "max_limit": 500,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "workflowEntryLock",
+      "name": "Enable Workflow Stage Entry Locking ",
+      "key_order": 16,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "extension",
+      "name": "extension",
+      "key_order": 17,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "bin",
+      "name": "Enable Trash bin",
+      "key_order": 19,
+      "enabled": true,
+      "limit": 14,
+      "max_limit": 14,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "deliveryTokens",
+      "name": "DeliveryTokens",
+      "key_order": 22,
+      "enabled": true,
+      "limit": 3,
+      "max_limit": 3,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "cow_search",
+      "name": "Cow Search",
+      "key_order": 23,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "searchV2",
+      "name": "search V2",
+      "key_order": 24,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "newRefAndPartialSearch",
+      "name": "Reference and PartialSearch",
+      "key_order": 25,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "assetSearchV2",
+      "name": "Asset Search V2",
+      "key_order": 26,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "app_switcher",
+      "name": "App Switcher",
+      "key_order": 27,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "release_v2",
+      "name": "Release v2",
+      "key_order": 28,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "useCUDToViewManagementAPI",
+      "name": "View Management API for CUD Operations",
+      "key_order": 29,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "useViewManagementAPI",
+      "name": "View Management API",
+      "key_order": 30,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "globalDashboardAccess",
+      "name": "Global Dashboard Access",
+      "key_order": 34,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": [
+        "app_switcher"
+      ]
+    },
+    {
+      "uid": "readPublishLogsFromElastic",
+      "name": "Read Publish Logs from Elastic",
+      "key_order": 35,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "includeCMAReleaseLogsByDefault",
+      "name": "Include CMA Release Logs by Default",
+      "key_order": 36,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "cow_assets",
+      "name": "cow_assets",
+      "is_custom": true,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "group_key": "organization"
+    },
+    {
+      "uid": "dashboard",
+      "name": "Dashboard",
+      "key_order": 1,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "globalSearch",
+      "name": "globalSearch",
+      "key_order": 2,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "workflow",
+      "name": "Workflow",
+      "key_order": 3,
+      "enabled": true,
+      "limit": 10,
+      "max_limit": 10,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "dashboard_widget",
+      "name": "dashboard_widget",
+      "key_order": 4,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "extension_widget",
+      "name": "Custom Widgets",
+      "key_order": 5,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "incubationProjAccess",
+      "name": "incubationProjAccess",
+      "key_order": 6,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "analytics",
+      "name": "Analytics",
+      "key_order": 7,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "analyticsDashboard",
+      "name": "analyticsDashboard",
+      "key_order": 8,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "newDashboardEnabled",
+      "name": "newDashboardEnabled",
+      "key_order": 9,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "marketplaceAccess",
+      "name": "Market Place Access",
+      "key_order": 11,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "livePreview",
+      "name": "Live Preview",
+      "key_order": 12,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "nestedReferencePublishAccess",
+      "name": "Nested Reference Publish Access",
+      "key_order": 13,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 10,
+      "is_name_editable": false,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "nestedReferencePublishDepth",
+      "name": "Nested Graph Publish Depth",
+      "key_order": 14,
+      "enabled": true,
+      "limit": 10,
+      "max_limit": 10,
+      "depends_on": [
+        "nestedReferencePublishAccess"
+      ],
+      "is_name_editable": false,
+      "is_required": false
+    },
+    {
+      "uid": "livePreviewGraphql",
+      "name": "Live Preview Support for GraphQL",
+      "key_order": 15,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "previewTokens",
+      "name": "Preview tokens",
+      "key_order": 16,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": [
+        "livePreview"
+      ]
+    },
+    {
+      "uid": "in_app_notification_access",
+      "name": "Global Notifications",
+      "key_order": 17,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "timelineAPI",
+      "name": "timelineAPI",
+      "key_order": 18,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": [
+        "livePreview"
+      ]
+    },
+    {
+      "uid": "productAnalyticsV2",
+      "name": "Enhanced Product Analytics App productAnalyticsV2",
+      "key_order": 21,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "visualBuilderAccess",
+      "name": "Visual Build Access",
+      "key_order": 22,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": [
+        "livePreview"
+      ]
+    },
+    {
+      "uid": "global_notification_cma",
+      "name": "Global Notifications enablement for CMA",
+      "key_order": 23,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "discovery_dashboard",
+      "name": "Platform features - Discovery Dashboard",
+      "key_order": 28,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "nestedReferencePublishLog",
+      "name": "nestedReferencePublishLog",
+      "is_custom": true,
+      "enabled": true,
+      "limit": 10,
+      "max_limit": 10,
+      "group_key": "platform"
+    },
+    {
+      "uid": "nestedSinglePublishing",
+      "name": "nestedSinglePublishing",
+      "is_custom": true,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "group_key": "platform"
+    },
+    {
+      "uid": "stacks",
+      "name": "Stacks",
+      "key_order": 1,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 100,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "stackCreationLimit",
+      "name": "Stack Creation Limit",
+      "key_order": 2,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 100,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "releases",
+      "name": "Releases",
+      "key_order": 3,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 100,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "assets",
+      "name": "Assets",
+      "key_order": 4,
+      "enabled": true,
+      "limit": 10000,
+      "max_limit": 10000,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "content_types",
+      "name": "Content Types",
+      "key_order": 5,
+      "enabled": true,
+      "limit": 10000,
+      "max_limit": 10000,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "entries",
+      "name": "Entries",
+      "key_order": 6,
+      "enabled": true,
+      "limit": 10000,
+      "max_limit": 10000,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "global_fields",
+      "name": "Global Fields",
+      "key_order": 7,
+      "enabled": true,
+      "limit": 1000,
+      "max_limit": 1000,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "metadata",
+      "name": "metadata",
+      "key_order": 8,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "entryDiscussion",
+      "name": "entryDiscussion",
+      "key_order": 10,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 100,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "inProgressEntries",
+      "name": "inProgressEntries",
+      "key_order": 11,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "preserveMetadata",
+      "name": "Preserve Metadata in multiple group,global field and blocks",
+      "key_order": 12,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "assetExtension",
+      "name": "assetExtension",
+      "key_order": 13,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "includeOptimization",
+      "name": "Include Reference Optimization",
+      "key_order": 14,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "bypassRegexChecks",
+      "name": "Bypass Field Validation Regex Checks",
+      "key_order": 15,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "socialEmbed",
+      "name": "socialEmbed",
+      "key_order": 16,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxFieldsLimit",
+      "name": "maxFieldsLimit",
+      "key_order": 18,
+      "enabled": true,
+      "limit": 250,
+      "max_limit": 250,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxMetadataSizeInBytes",
+      "name": "maxMetadataSizeInBytes",
+      "key_order": 19,
+      "enabled": true,
+      "limit": 15000,
+      "max_limit": 15000,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxReleaseItems",
+      "name": "Max Items in a Release",
+      "key_order": 20,
+      "enabled": true,
+      "limit": 500,
+      "max_limit": 500,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxIncludeReferenceDepth",
+      "name": "maxIncludeReferenceDepth",
+      "key_order": 21,
+      "enabled": true,
+      "limit": 10,
+      "max_limit": 10,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxContentTypesPerReferenceField",
+      "name": "maxContentTypesPerReferenceField",
+      "key_order": 22,
+      "enabled": true,
+      "limit": 50,
+      "max_limit": 50,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxDynamicBlocksPerContentType",
+      "name": "maxDynamicBlocksPerContentType",
+      "key_order": 23,
+      "enabled": true,
+      "limit": 50,
+      "max_limit": 50,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxEntriesPerReferenceField",
+      "name": "maxEntriesPerReferenceField",
+      "key_order": 24,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 100,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxDynamicBlockDefinations",
+      "name": "maxDynamicBlockDefinations",
+      "key_order": 25,
+      "enabled": true,
+      "limit": 50,
+      "max_limit": 50,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxDynamicBlockObjects",
+      "name": "maxDynamicBlockObjects",
+      "key_order": 26,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 100,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxAssetFolders",
+      "name": "Max Asset Folders per Stack",
+      "key_order": 27,
+      "enabled": true,
+      "limit": 10000,
+      "max_limit": 10000,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxDynamicBlocksNestingDepth",
+      "name": "Modular Blocks Depth",
+      "key_order": 28,
+      "enabled": true,
+      "limit": 50,
+      "max_limit": 50,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxAssetSize",
+      "name": "MaxAsset Size",
+      "key_order": 29,
+      "enabled": true,
+      "limit": 15000000,
+      "max_limit": 15000000,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxGlobalFieldReferredInCT",
+      "name": "Max Global Fields per Content Type",
+      "key_order": 32,
+      "enabled": true,
+      "limit": 50,
+      "max_limit": 50,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "inQueryMaxObjectsLimit",
+      "name": "inQueryMaxObjectsLimit",
+      "key_order": 33,
+      "enabled": true,
+      "limit": 1300,
+      "max_limit": 1300,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxContentTypesPerReference",
+      "name": "Max Content Types per Reference",
+      "key_order": 36,
+      "enabled": true,
+      "limit": 50,
+      "max_limit": 50,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxGlobalFieldInstances",
+      "name": "Max Global Field Instances per Content Type",
+      "key_order": 37,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 100,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "cms_variants",
+      "name": "CMS Variants",
+      "key_order": 38,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "nested_global_fields",
+      "name": "Nested Global Fields",
+      "key_order": 39,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "nested_global_fields_max_nesting_depth",
+      "name": "Nested Global Fields Max Nesting Depth",
+      "key_order": 40,
+      "enabled": true,
+      "limit": 10,
+      "max_limit": 10,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "labels",
+      "name": "Labels",
+      "key_order": 41,
+      "enabled": true,
+      "limit": 500,
+      "max_limit": 500,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "entry_tabs",
+      "name": "entry tabs",
+      "key_order": 42,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "branchesV2",
+      "name": "Branches V2",
+      "key_order": 43,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "taxonomy_localization",
+      "name": "taxonomy_localization",
+      "key_order": 42,
+      "is_custom": true,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "group_key": "stacks"
+    },
+    {
+      "uid": "locales",
+      "name": "Max Publishing Locales",
+      "key_order": 1,
+      "enabled": true,
+      "limit": 50,
+      "max_limit": 50,
+      "is_required": false,
+      "depends_on": [],
+      "uuid": "2fd299f9-dcaf-4643-90b8-bb49a4d30a8d"
+    },
+    {
+      "uid": "languageFallback",
+      "name": "Fallback Language",
+      "key_order": 2,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "fieldLevelLocalization",
+      "name": "fieldLevelLocalization",
+      "key_order": 3,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "fieldLevelLocalizationGlobalFields",
+      "name": "fieldLevelLocalizationGlobalFields",
+      "key_order": 4,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "bulkPublishEntriesLocalesLimit",
+      "name": "Bulk Publishing Multiple Locales Limit",
+      "key_order": 5,
+      "enabled": true,
+      "limit": 50,
+      "max_limit": 50,
+      "is_required": false,
+      "depends_on": [],
+      "uuid": "1e9fbe1d-b838-45b3-b060-373e09254492"
+    },
+    {
+      "uid": "publishLocalizedVersions",
+      "name": "Bulk Language Publish",
+      "key_order": 7,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "automationAccess",
+      "name": "Automation Hub Access",
+      "key_order": 1,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "automation_exec_soft_limit",
+      "name": "Execution Soft Limit",
+      "key_order": 7,
+      "enabled": true,
+      "limit": 200,
+      "max_limit": 200,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "automation_exec_hard_limit",
+      "name": "Execution Hard Limit",
+      "key_order": 8,
+      "enabled": true,
+      "limit": 200,
+      "max_limit": 200,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "graphql",
+      "name": "GraphQL",
+      "key_order": 1,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "newGraphQL",
+      "name": "GraphQL CDA",
+      "key_order": 2,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "graphqlLimit",
+      "name": "GraphQL Limit",
+      "key_order": 4,
+      "enabled": true,
+      "limit": 80,
+      "max_limit": 80,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "customIndexes",
+      "name": "customIndexes",
+      "key_order": 5,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "publishWithMetadata",
+      "name": "publishWithMetadata",
+      "key_order": 6,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "gql_max_reference_depth",
+      "name": "gql_max_reference_depth",
+      "key_order": 8,
+      "enabled": true,
+      "limit": 5,
+      "max_limit": 5,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "gql_allow_regex",
+      "name": "gql_allow_regex",
+      "key_order": 11,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "contentflyAccess",
+      "name": "Enable Launch Access",
+      "key_order": 1,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "contentfly_projects_per_org",
+      "name": "Number of Launch Projects",
+      "key_order": 2,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 100,
+      "is_required": false,
+      "depends_on": [],
+      "uuid": "cc26eea6-4d33-494e-a449-a663e0323983"
+    },
+    {
+      "uid": "contentfly_environments_per_project",
+      "name": "Number of Launch Environments per Project",
+      "key_order": 4,
+      "enabled": true,
+      "limit": 3,
+      "max_limit": 3,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "contentfly_deployment_build_hours_per_month",
+      "name": "Number of Launch Build Hours per Month",
+      "key_order": 5,
+      "enabled": true,
+      "limit": 50,
+      "max_limit": 50,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "contentfly_build_minutes_per_deployment",
+      "name": "Maximum Launch Build Minutes per Build",
+      "key_order": 6,
+      "enabled": true,
+      "limit": 60,
+      "max_limit": 60,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "contentfly_domains_per_environment",
+      "name": "Maximum Launch Domains per Environment",
+      "key_order": 7,
+      "enabled": true,
+      "limit": 0,
+      "max_limit": 0,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "contentfly_domains_per_project",
+      "name": "Maximum Launch Domains per Project",
+      "key_order": 8,
+      "enabled": true,
+      "limit": 0,
+      "max_limit": 0,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "contentfly_deployhooks_per_environment",
+      "name": "Maximum deployment hooks per Environment",
+      "key_order": 9,
+      "enabled": true,
+      "limit": 5,
+      "max_limit": 5,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "contentfly_server_compute_time_hours",
+      "name": "Maximum server compute time per Project",
+      "key_order": 10,
+      "enabled": true,
+      "limit": 50,
+      "max_limit": 50,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "rtePlugin",
+      "name": "RTE Plugin",
+      "key_order": 1,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "embeddedObjects",
+      "name": "embeddedObjects",
+      "key_order": 2,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxEmbeddedObjectsPerJsonRteField",
+      "name": "maxEmbeddedObjectsPerJsonRteField",
+      "key_order": 3,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 100,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxContentTypesPerJsonRte",
+      "name": "maxContentTypesPerJsonRte",
+      "key_order": 4,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 100,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxJsonRTEReferredInCT",
+      "name": "maxJsonRTEReferredInCT",
+      "key_order": 5,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 100,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxMultipleJsonRte",
+      "name": "maxMultipleJsonRte",
+      "key_order": 6,
+      "enabled": true,
+      "limit": 10000,
+      "max_limit": 10000,
+      "is_required": false,
+      "depends_on": [],
+      "uuid": "f7eff29e-5073-4507-82d3-043cd78841b1"
+    },
+    {
+      "uid": "maxRteJsonSizeInBytes",
+      "name": "maxRteJsonSizeInBytes",
+      "key_order": 7,
+      "enabled": true,
+      "limit": 50000,
+      "max_limit": 50000,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxJSONCustomFieldsPerCT",
+      "name": "maxJSONCustomFieldsPerCT",
+      "key_order": 8,
+      "enabled": true,
+      "limit": 10,
+      "max_limit": 10,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "maxJSONCustomFieldSize",
+      "name": "maxJSONCustomFieldSize",
+      "key_order": 9,
+      "enabled": true,
+      "limit": 45000,
+      "max_limit": 45000,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "rteComment",
+      "name": "RTE Inline Comment",
+      "key_order": 12,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": [
+        "entryDiscussion"
+      ]
+    },
+    {
+      "uid": "emptyPIIValuesInIncludeOwnerForDelivery",
+      "name": "emptyPIIValuesInIncludeOwnerForDelivery",
+      "key_order": 7,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "developerhubAccess",
+      "name": "Developer Hub Access",
+      "key_order": 1,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "developerhub_apps_per_org",
+      "name": "Apps Per Organization",
+      "key_order": 2,
+      "enabled": true,
+      "limit": 500,
+      "max_limit": 500,
+      "is_required": false,
+      "depends_on": [],
+      "uuid": "994f9496-a28a-4617-8559-b38eae0bbccd"
+    },
+    {
+      "uid": "taxonomy",
+      "name": "Taxonomy",
+      "key_order": 1,
+      "enabled": true,
+      "limit": 50,
+      "max_limit": 50,
+      "is_required": false,
+      "depends_on": [],
+      "uuid": "1bbf6393-fd6a-4df1-8bee-a09323c8fc1d"
+    },
+    {
+      "uid": "taxonomy_terms",
+      "name": "Taxonomy Terms",
+      "key_order": 2,
+      "enabled": true,
+      "limit": 10000,
+      "max_limit": 10000,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "taxonomy_terms_max_depth",
+      "name": "Taxonomy Terms Max Depth",
+      "key_order": 3,
+      "enabled": true,
+      "limit": 10,
+      "max_limit": 10,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "max_taxonomies_per_content_type",
+      "name": "Max Taxonomies Per Content Type",
+      "key_order": 4,
+      "enabled": true,
+      "limit": 20,
+      "max_limit": 20,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "taxonomy_permissions",
+      "name": "Taxonomy Permissions",
+      "key_order": 6,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "taxonomy_localization",
+      "name": "taxonomy_localization",
+      "key_order": 7,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "orgAdminAccess",
+      "name": "OrgAdmin Access",
+      "key_order": 1,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "securityConfig",
+      "name": "Security Configuration",
+      "key_order": 2,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "bulk_user_actions",
+      "name": "Bulk User Actions",
+      "key_order": 3,
+      "enabled": true,
+      "limit": 10,
+      "max_limit": 10,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "teams",
+      "name": "Teams",
+      "key_order": 4,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "webhookConfig",
+      "name": "Webhook configuration",
+      "key_order": 6,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "allowedEmailDomains",
+      "name": "Allowed Email Domains",
+      "key_order": 7,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "mfaResetAccess",
+      "name": "Allow admins to reset MFA for users",
+      "key_order": 8,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "personalizationAccess",
+      "name": "Personalization Access",
+      "key_order": 1,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "personalizeProjects",
+      "name": "Projects in Organization",
+      "key_order": 2,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 100,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "personalizeExperiencesPerProject",
+      "name": "Experiences per Project",
+      "key_order": 3,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 1000,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "personalizeAudiencesPerProject",
+      "name": "Audiences per Project",
+      "key_order": 4,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 1000,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "personalizeAttributesPerProject",
+      "name": "Custom Attributes per Project",
+      "key_order": 5,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 1000,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "personalizeEventsPerProject",
+      "name": "Custom Events per Project",
+      "key_order": 6,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 1000,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "personalizeVariantsPerExperience",
+      "name": "Variants per Experience",
+      "key_order": 7,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 100,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "personalizeManifestRequests",
+      "name": "Manifest Requests",
+      "key_order": 9,
+      "enabled": true,
+      "limit": 1000000000,
+      "max_limit": 1000000000,
+      "is_required": false,
+      "depends_on": [],
+      "uuid": "b44e4685-7a5a-480f-b806-6a7bfd325cee"
+    },
+    {
+      "uid": "maxAssetFolderDepth",
+      "name": "Max Asset folder depth",
+      "key_order": 1,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 100,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "bulk-action",
+      "name": "Bulk action",
+      "key_order": 1,
+      "enabled": true,
+      "limit": 50,
+      "max_limit": 50,
+      "is_required": false,
+      "depends_on": [],
+      "uuid": "8635888f-8d4d-42e8-ba87-543408a79df9"
+    },
+    {
+      "uid": "bulkLimit",
+      "name": "Bulk Requests Limit",
+      "key_order": 2,
+      "enabled": true,
+      "limit": 50,
+      "max_limit": 50,
+      "is_required": false,
+      "depends_on": [],
+      "uuid": "1bf3ad4a-2ba0-4bc2-a389-0215edf8910b"
+    },
+    {
+      "uid": "bulk-action-publish",
+      "name": "Bulk action Publish",
+      "key_order": 6,
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 100,
+      "is_required": false,
+      "depends_on": [],
+      "uuid": "780d8549-aa50-49b7-9876-fee45f8b513c"
+    },
+    {
+      "uid": "nestedSinglePublishing",
+      "name": "nestedSinglePublishing",
+      "key_order": 2,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": []
+    },
+    {
+      "uid": "taxonomy_publish",
+      "name": "taxonomy publish",
+      "key_order": 3,
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1,
+      "is_required": false,
+      "depends_on": [],
+      "uuid": "f891ac5b-343c-4999-82b2-1c74be414526"
+    },
+    {
+      "uid": "contentfly_projects",
+      "name": "Number of Launch Projects",
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 100
+    },
+    {
+      "uid": "contentfly_environments",
+      "name": "Number of Launch Environments",
+      "enabled": true,
+      "limit": 30,
+      "max_limit": 30
+    },
+    {
+      "uid": "maxExtensionScopeCtRef",
+      "name": "Scope of CT for custom widgets",
+      "enabled": true,
+      "limit": 23,
+      "max_limit": 23
+    },
+    {
+      "uid": "total_extensions",
+      "name": "total_extensions",
+      "enabled": true,
+      "limit": 100,
+      "max_limit": 100
+    },
+    {
+      "uid": "extConcurrentCallsLimit",
+      "name": "extConcurrentCallsLimit",
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1
+    },
+    {
+      "uid": "releaseDeploymentAllocation",
+      "name": "releaseDeploymentAllocation",
+      "enabled": true,
+      "limit": 3,
+      "max_limit": 3
+    },
+    {
+      "uid": "disableIncludeOwnerForDelivery",
+      "name": "disableIncludeOwnerForDelivery",
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1
+    },
+    {
+      "uid": "extensionsMicroservice",
+      "name": "Extensions Microservice",
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1
+    },
+    {
+      "uid": "Webhook OAuth Access",
+      "name": "webhookOauth",
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1
+    },
+    {
+      "uid": "Audit log for Contentstack Products",
+      "name": "audit_log",
+      "enabled": true,
+      "limit": 1,
+      "max_limit": 1
+    }
+  ],
+  "created_at": "2023-06-07T07:23:21.904Z",
+  "updated_at": "2026-01-22T14:39:31.571Z",
+  "blockedAssetTypes": []
+}
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8?include_plan=true
+
Request Headers
authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8?include_plan=true' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:29 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 16ms
+X-Request-ID: 9261b6c4-0863-442b-9b28-9258da7a4470
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{"organization":{"_id":"6461c7329ebec1652d7ada73","uid":"blt8d282118e2094bb8","name":"SDK org","plan_id":"sdk_branch_plan","is_over_usage_allowed":true,"expires_on":"2029-12-21T00:00:00.000Z","owner_uid":"blt37ba39e03b130064","enabled":true,"created_at":"2023-05-15T05:46:26.262Z","updated_at":"2025-03-17T06:07:47.263Z","deleted_at":false,"account_id":"","settings":{"blockAuthQueryParams":true,"allowedCDNTokens":["access_token"]},"created_by":"bltf7f13f53e2256a8a","updated_by":"bltfc88a63ec0767587","tags":["testing"],"__v":0,"is_transfer_set":false,"transfer_ownership_token":"","transfer_sent_at":"2025-03-17T06:06:30.203Z","transfer_to":"","plan":{"plan_id":"sdk_branch_plan","name":"sdk_branch_plan","message":"","price":"$0","features":[{"uid":"users","name":"Users","key_order":1,"enabled":true,"limit":1000,"max_limit":1000,"is_required":false,"depends_on":[]},{"uid":"roles","name":"UserRoles","key_order":2,"enabled":true,"limit":10,"max_limit":10,"is_required":false,"depends_on":[]},{"uid":"sso","name":"SSO","key_order":3,"enabled":true,"limit":1,"max_limit":1,"is_required":false,"depends_on":[]},{"uid":"ssoRoles","name":"ssoRoles","key_order":4,"enabled":true,"limit":1,"max_limit":1,"is_required":false,"depends_on":[]},{"uid":"environments","name":"Environments","key_order":1,"enabled":true,"limit":400,"max_limit":400,"is_required":false,"depends_on":[]},{"uid":"branches","name":"branches","key_order":2,"enabled":true,"limit":10,"max_limit":10,"is_required":false,"depends_on":[]},{"uid":"branch_aliases","name":"branch_aliases","key_order":3,"enabled":true,"limit":10,"max_limit":10,"is_required":false,"depends_on":[]},{"uid":"digitalProperties","name":"DigitalProperties","key_order":4,"enabled":true,"limit":1,"max_limit":1,"is_required":false,"depends_on":[]},{"uid":"fieldModifierLocation","name":"Extension Field Modifier Location","key_order":4,"enabled":true,"limit":1,"max_limit":1,"is_required":false,"depends_on":[]},{"uid":"limit","name":"API Write Request Limit","key_order":5,"enabled":true,"limit":100,"max_limit":100,"is_required":false,"depends_on":[]},{"uid":"getLimit","name":"CMA GET Limit","key_order":6,"enabled":true,"limit":100,"max_limit":100,"is_required":false,"depends_on":[]},{"uid":"apiBandwidth","name":"API Bandwidth","key_order":9,"enabled":true,"limit":5000000000000,"max_limit":5000000000000,"is_required":false,"depends_on":[]},{"uid":"apiRequests","name":"API Requests","key_order":10,"enabled":true,"limit":6000000,"max_limit":6000000,"is_required":false,"depends_on":[]},{"uid":"managementTokensLimit","name":"managementTokensLimit","key_order":11,"enabled":true,"limit":20,"max_limit":20,"is_required":false,"depends_on":[]},{"uid":"newCDA","name":"New CDA API","key_order":12,"enabled":true,"limit":1,"max_limit":1,"is_required":false,"depends_on":[]},{"uid":"syncCDA","name":"default","key_order":13,"enabled":true,"limit":1,"max_limit":2,"is_required":false,"is_name_editable":true,"depends_on":[]},{"uid":"fullPageLocation","name"
+
+ Test Context + + + + +
TestScenarioGetOrganizationWithPlan
+
Passed0.36s
+
+
+ +
+
+
+ + Contentstack003_StackTest +
+
+ 13 passed · + 0 failed · + 0 skipped · + 13 total +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Test NameStatusDuration
+
✅ Test007_Should_Fetch_StackAsync
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "stack": {
+    "created_at": "2026-03-13T02:33:34.598Z",
+    "updated_at": "2026-03-13T02:33:35.337Z",
+    "uid": "bltcf56a6f05651f1d8",
+    "name": "DotNet Management SDK Stack",
+    "description": "Integration testing Stack for DotNet Management SDK",
+    "org_uid": "blt8d282118e2094bb8",
+    "api_key": "blt1bca31da998b57a9",
+    "master_locale": "en-us",
+    "is_asset_download_public": true,
+    "owner_uid": "blt1930fc55e5669df9",
+    "user_uids": [
+      "blt1930fc55e5669df9"
+    ],
+    "settings": {
+      "version": "2019-04-30",
+      "rte_version": 3,
+      "blockAuthQueryParams": true,
+      "allowedCDNTokens": [
+        "access_token"
+      ],
+      "branches": true,
+      "localesOptimization": false,
+      "webhook_enabled": true,
+      "visual_builder": {},
+      "timeline": {},
+      "live_preview": {},
+      "am_v2": {},
+      "entries": {},
+      "language_fallback": false
+    },
+    "master_key": "bltb651649fc56dcfa8",
+    "SYS_ACL": {
+      "others": {
+        "invite": false,
+        "sub_acl": {
+          "create": false,
+          "read": false,
+          "update": false,
+          "delete": false
+        }
+      },
+      "roles": [
+        {
+          "uid": "blt5f456b9cfa69b697",
+          "name": "Developer",
+          "invite": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true
+          }
+        },
+        {
+          "uid": "blt1b7926e68b1b14b2",
+          "name": "Admin",
+          "invite": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true
+          }
+        }
+      ]
+    },
+    "global_search": true
+  }
+}
+
+
+
+
AreEqual(APIKey)
+
+
Expected:
blt1bca31da998b57a9
+
Actual:
blt1bca31da998b57a9
+
+
+
+
AreEqual(StackName)
+
+
Expected:
DotNet Management SDK Stack
+
Actual:
DotNet Management SDK Stack
+
+
+
+
AreEqual(MasterLocale)
+
+
Expected:
en-us
+
Actual:
en-us
+
+
+
+
AreEqual(Description)
+
+
Expected:
Integration testing Stack for DotNet Management SDK
+
Actual:
Integration testing Stack for DotNet Management SDK
+
+
+
+
AreEqual(OrgUid)
+
+
Expected:
blt8d282118e2094bb8
+
Actual:
blt8d282118e2094bb8
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/stacks
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/stacks' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:35 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 21ms
+X-Request-ID: a566a22b-7a06-41ec-9fbc-e62a63154f42
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "stack": {
+    "created_at": "2026-03-13T02:33:34.598Z",
+    "updated_at": "2026-03-13T02:33:35.337Z",
+    "uid": "bltcf56a6f05651f1d8",
+    "name": "DotNet Management SDK Stack",
+    "description": "Integration testing Stack for DotNet Management SDK",
+    "org_uid": "blt8d282118e2094bb8",
+    "api_key": "blt1bca31da998b57a9",
+    "master_locale": "en-us",
+    "is_asset_download_public": true,
+    "owner_uid": "blt1930fc55e5669df9",
+    "user_uids": [
+      "blt1930fc55e5669df9"
+    ],
+    "settings": {
+      "version": "2019-04-30",
+      "rte_version": 3,
+      "blockAuthQueryParams": true,
+      "allowedCDNTokens": [
+        "access_token"
+      ],
+      "branches": true,
+      "localesOptimization": false,
+      "webhook_enabled": true,
+      "visual_builder": {},
+      "timeline": {},
+      "live_preview": {},
+      "am_v2": {},
+      "entries": {},
+      "language_fallback": false
+    },
+    "master_key": "bltb651649fc56dcfa8",
+    "SYS_ACL": {
+      "others": {
+        "invite": false,
+        "sub_acl": {
+          "create": false,
+          "read": false,
+          "update": false,
+          "delete": false
+        }
+      },
+      "roles": [
+        {
+          "uid": "blt5f456b9cfa69b697",
+          "name": "Developer",
+          "invite": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true
+          }
+        },
+        {
+          "uid": "blt1b7926e68b1b14b2",
+          "name": "Admin",
+          "invite": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true
+          }
+        }
+      ]
+    },
+    "global_search": true
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioFetchStackAsync
StackApiKeyblt1bca31da998b57a9
+
Passed0.28s
+
✅ Test008_Add_Stack_Settings
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "notice": "Stack settings updated successfully.",
+  "stack_settings": {
+    "stack_variables": {
+      "enforce_unique_urls": true,
+      "sys_rte_allowed_tags": "figure"
+    },
+    "discrete_variables": {
+      "cms": true,
+      "_version": 3
+    },
+    "live_preview": {},
+    "visual_builder": {},
+    "timeline": {},
+    "entries": {}
+  }
+}
+
+
+
+
AreEqual(Notice)
+
+
Expected:
Stack settings updated successfully.
+
Actual:
Stack settings updated successfully.
+
+
+
+
AreEqual(enforce_unique_urls)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
AreEqual(sys_rte_allowed_tags)
+
+
Expected:
figure
+
Actual:
figure
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/stacks/settings
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 136
+Content-Type: application/json
+
Request Body
{"stack_settings":{"stack_variables":{"enforce_unique_urls":true,"sys_rte_allowed_tags":"figure"},"discrete_variables":null,"rte":null}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks/settings' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 136' \
+  -H 'Content-Type: application/json' \
+  -d '{"stack_settings":{"stack_variables":{"enforce_unique_urls":true,"sys_rte_allowed_tags":"figure"},"discrete_variables":null,"rte":null}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:36 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 20ms
+X-Request-ID: 8621d748-68ec-45de-864e-1027ad2136f7
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Stack settings updated successfully.",
+  "stack_settings": {
+    "stack_variables": {
+      "enforce_unique_urls": true,
+      "sys_rte_allowed_tags": "figure"
+    },
+    "discrete_variables": {
+      "cms": true,
+      "_version": 3
+    },
+    "live_preview": {},
+    "visual_builder": {},
+    "timeline": {},
+    "entries": {}
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioAddStackSettings
StackApiKeyblt1bca31da998b57a9
+
Passed0.29s
+
✅ Test006_Should_Fetch_Stack
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "stack": {
+    "created_at": "2026-03-13T02:33:34.598Z",
+    "updated_at": "2026-03-13T02:33:35.337Z",
+    "uid": "bltcf56a6f05651f1d8",
+    "name": "DotNet Management SDK Stack",
+    "description": "Integration testing Stack for DotNet Management SDK",
+    "org_uid": "blt8d282118e2094bb8",
+    "api_key": "blt1bca31da998b57a9",
+    "master_locale": "en-us",
+    "is_asset_download_public": true,
+    "owner_uid": "blt1930fc55e5669df9",
+    "user_uids": [
+      "blt1930fc55e5669df9"
+    ],
+    "settings": {
+      "version": "2019-04-30",
+      "rte_version": 3,
+      "blockAuthQueryParams": true,
+      "allowedCDNTokens": [
+        "access_token"
+      ],
+      "branches": true,
+      "localesOptimization": false,
+      "webhook_enabled": true,
+      "visual_builder": {},
+      "timeline": {},
+      "live_preview": {},
+      "am_v2": {},
+      "entries": {},
+      "language_fallback": false
+    },
+    "master_key": "bltb651649fc56dcfa8",
+    "SYS_ACL": {
+      "others": {
+        "invite": false,
+        "sub_acl": {
+          "create": false,
+          "read": false,
+          "update": false,
+          "delete": false
+        }
+      },
+      "roles": [
+        {
+          "uid": "blt5f456b9cfa69b697",
+          "name": "Developer",
+          "invite": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true
+          }
+        },
+        {
+          "uid": "blt1b7926e68b1b14b2",
+          "name": "Admin",
+          "invite": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true
+          }
+        }
+      ]
+    },
+    "global_search": true
+  }
+}
+
+
+
+
AreEqual(APIKey)
+
+
Expected:
blt1bca31da998b57a9
+
Actual:
blt1bca31da998b57a9
+
+
+
+
AreEqual(StackName)
+
+
Expected:
DotNet Management SDK Stack
+
Actual:
DotNet Management SDK Stack
+
+
+
+
AreEqual(MasterLocale)
+
+
Expected:
en-us
+
Actual:
en-us
+
+
+
+
AreEqual(Description)
+
+
Expected:
Integration testing Stack for DotNet Management SDK
+
Actual:
Integration testing Stack for DotNet Management SDK
+
+
+
+
AreEqual(OrgUid)
+
+
Expected:
blt8d282118e2094bb8
+
Actual:
blt8d282118e2094bb8
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/stacks
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/stacks' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:35 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 22ms
+X-Request-ID: 073de114-7fe2-4bbb-8d48-4c91d07625e7
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "stack": {
+    "created_at": "2026-03-13T02:33:34.598Z",
+    "updated_at": "2026-03-13T02:33:35.337Z",
+    "uid": "bltcf56a6f05651f1d8",
+    "name": "DotNet Management SDK Stack",
+    "description": "Integration testing Stack for DotNet Management SDK",
+    "org_uid": "blt8d282118e2094bb8",
+    "api_key": "blt1bca31da998b57a9",
+    "master_locale": "en-us",
+    "is_asset_download_public": true,
+    "owner_uid": "blt1930fc55e5669df9",
+    "user_uids": [
+      "blt1930fc55e5669df9"
+    ],
+    "settings": {
+      "version": "2019-04-30",
+      "rte_version": 3,
+      "blockAuthQueryParams": true,
+      "allowedCDNTokens": [
+        "access_token"
+      ],
+      "branches": true,
+      "localesOptimization": false,
+      "webhook_enabled": true,
+      "visual_builder": {},
+      "timeline": {},
+      "live_preview": {},
+      "am_v2": {},
+      "entries": {},
+      "language_fallback": false
+    },
+    "master_key": "bltb651649fc56dcfa8",
+    "SYS_ACL": {
+      "others": {
+        "invite": false,
+        "sub_acl": {
+          "create": false,
+          "read": false,
+          "update": false,
+          "delete": false
+        }
+      },
+      "roles": [
+        {
+          "uid": "blt5f456b9cfa69b697",
+          "name": "Developer",
+          "invite": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true
+          }
+        },
+        {
+          "uid": "blt1b7926e68b1b14b2",
+          "name": "Admin",
+          "invite": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true
+          }
+        }
+      ]
+    },
+    "global_search": true
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioFetchStack
StackApiKeyblt1bca31da998b57a9
+
Passed0.29s
+
✅ Test004_Should_Update_Stack
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "notice": "Stack updated successfully.",
+  "stack": {
+    "created_at": "2026-03-13T02:33:34.598Z",
+    "updated_at": "2026-03-13T02:33:35.007Z",
+    "uid": "bltcf56a6f05651f1d8",
+    "name": "DotNet Management SDK Stack",
+    "org_uid": "blt8d282118e2094bb8",
+    "api_key": "blt1bca31da998b57a9",
+    "master_locale": "en-us",
+    "is_asset_download_public": true,
+    "owner_uid": "blt1930fc55e5669df9",
+    "user_uids": [
+      "blt1930fc55e5669df9"
+    ],
+    "settings": {
+      "version": "2019-04-30",
+      "rte_version": 3,
+      "blockAuthQueryParams": true,
+      "allowedCDNTokens": [
+        "access_token"
+      ],
+      "branches": true,
+      "localesOptimization": false,
+      "webhook_enabled": true,
+      "visual_builder": {},
+      "timeline": {},
+      "live_preview": {},
+      "am_v2": {},
+      "entries": {},
+      "language_fallback": false
+    },
+    "master_key": "bltb651649fc56dcfa8",
+    "SYS_ACL": {
+      "others": {
+        "invite": false,
+        "sub_acl": {
+          "create": false,
+          "read": false,
+          "update": false,
+          "delete": false
+        }
+      },
+      "roles": [
+        {
+          "uid": "blt5f456b9cfa69b697",
+          "name": "Developer",
+          "invite": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true
+          }
+        },
+        {
+          "uid": "blt1b7926e68b1b14b2",
+          "name": "Admin",
+          "invite": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true
+          }
+        }
+      ]
+    },
+    "stack_variables": {},
+    "discrete_variables": {
+      "cms": true,
+      "_version": 3,
+      "secret_key": "689488de7ee7fae3f2ce57afeaecfc03cf638e18"
+    }
+  }
+}
+
+
+
+
IsNull(model.Stack.Description)
+
+
Expected:
null
+
Actual:
null
+
+
+
+
AreEqual(APIKey)
+
+
Expected:
blt1bca31da998b57a9
+
Actual:
blt1bca31da998b57a9
+
+
+
+
AreEqual(StackName)
+
+
Expected:
DotNet Management SDK Stack
+
Actual:
DotNet Management SDK Stack
+
+
+
+
AreEqual(MasterLocale)
+
+
Expected:
en-us
+
Actual:
en-us
+
+
+
+
AreEqual(OrgUid)
+
+
Expected:
blt8d282118e2094bb8
+
Actual:
blt8d282118e2094bb8
+
+

HTTP Transactions

+
+ +
PUThttps://api.contentstack.io/v3/stacks
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 48
+Content-Type: application/json
+
Request Body
{"stack":{"name":"DotNet Management SDK Stack"}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/stacks' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 48' \
+  -H 'Content-Type: application/json' \
+  -d '{"stack":{"name":"DotNet Management SDK Stack"}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:35 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 42ms
+X-Request-ID: 5f0cbb1d-b1a4-43e9-810e-4da42d0518b7
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Stack updated successfully.",
+  "stack": {
+    "created_at": "2026-03-13T02:33:34.598Z",
+    "updated_at": "2026-03-13T02:33:35.007Z",
+    "uid": "bltcf56a6f05651f1d8",
+    "name": "DotNet Management SDK Stack",
+    "org_uid": "blt8d282118e2094bb8",
+    "api_key": "blt1bca31da998b57a9",
+    "master_locale": "en-us",
+    "is_asset_download_public": true,
+    "owner_uid": "blt1930fc55e5669df9",
+    "user_uids": [
+      "blt1930fc55e5669df9"
+    ],
+    "settings": {
+      "version": "2019-04-30",
+      "rte_version": 3,
+      "blockAuthQueryParams": true,
+      "allowedCDNTokens": [
+        "access_token"
+      ],
+      "branches": true,
+      "localesOptimization": false,
+      "webhook_enabled": true,
+      "visual_builder": {},
+      "timeline": {},
+      "live_preview": {},
+      "am_v2": {},
+      "entries": {},
+      "language_fallback": false
+    },
+    "master_key": "bltb651649fc56dcfa8",
+    "SYS_ACL": {
+      "others": {
+        "invite": false,
+        "sub_acl": {
+          "create": false,
+          "read": false,
+          "update": false,
+          "delete": false
+        }
+      },
+      "roles": [
+        {
+          "uid": "blt5f456b9cfa69b697",
+          "name": "Developer",
+          "invite": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true
+          }
+        },
+        {
+          "uid": "blt1b7926e68b1b14b2",
+          "name": "Admin",
+          "invite": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true
+          }
+        }
+      ]
+    },
+    "stack_variables": {},
+    "discrete_variables": {
+      "cms": true,
+      "_version": 3,
+      "secret_key": "689488de7ee7fae3f2ce57afeaecfc03cf638e18"
+    }
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioUpdateStack
StackApiKeyblt1bca31da998b57a9
+
Passed0.32s
+
✅ Test012_Reset_Stack_Settings_Async
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "notice": "Stack settings updated successfully.",
+  "stack_settings": {
+    "rte": {},
+    "stack_variables": {
+      "enforce_unique_urls": true,
+      "sys_rte_allowed_tags": "figure"
+    },
+    "discrete_variables": {
+      "cms": true,
+      "_version": 3
+    },
+    "live_preview": {},
+    "visual_builder": {},
+    "timeline": {},
+    "entries": {}
+  }
+}
+
+
+
+
AreEqual(Notice)
+
+
Expected:
Stack settings updated successfully.
+
Actual:
Stack settings updated successfully.
+
+
+
+
AreEqual(enforce_unique_urls)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
AreEqual(sys_rte_allowed_tags)
+
+
Expected:
figure
+
Actual:
figure
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/stacks/settings
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 74
+Content-Type: application/json
+
Request Body
{"stack_settings":{"stack_variables":{},"discrete_variables":{},"rte":{}}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks/settings' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 74' \
+  -H 'Content-Type: application/json' \
+  -d '{"stack_settings":{"stack_variables":{},"discrete_variables":{},"rte":{}}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:37 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 23ms
+X-Request-ID: b574092f-d4e5-4b02-807e-bdd41fad0aa4
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Stack settings updated successfully.",
+  "stack_settings": {
+    "rte": {},
+    "stack_variables": {
+      "enforce_unique_urls": true,
+      "sys_rte_allowed_tags": "figure"
+    },
+    "discrete_variables": {
+      "cms": true,
+      "_version": 3
+    },
+    "live_preview": {},
+    "visual_builder": {},
+    "timeline": {},
+    "entries": {}
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioResetStackSettingsAsync
StackApiKeyblt1bca31da998b57a9
+
Passed0.30s
+
✅ Test013_Stack_Settings_Async
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "stack_settings": {
+    "rte": {},
+    "stack_variables": {
+      "enforce_unique_urls": true,
+      "sys_rte_allowed_tags": "figure"
+    },
+    "discrete_variables": {
+      "cms": true,
+      "_version": 3
+    },
+    "live_preview": {},
+    "visual_builder": {},
+    "timeline": {},
+    "entries": {}
+  }
+}
+
+
+
+
AreEqual(enforce_unique_urls)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
AreEqual(sys_rte_allowed_tags)
+
+
Expected:
figure
+
Actual:
figure
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/stacks/settings
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/stacks/settings' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:37 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 12ms
+X-Request-ID: 2016f37c-a61a-4b24-b96b-82637aa95863
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "stack_settings": {
+    "rte": {},
+    "stack_variables": {
+      "enforce_unique_urls": true,
+      "sys_rte_allowed_tags": "figure"
+    },
+    "discrete_variables": {
+      "cms": true,
+      "_version": 3
+    },
+    "live_preview": {},
+    "visual_builder": {},
+    "timeline": {},
+    "entries": {}
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioStackSettingsAsync
StackApiKeyblt1bca31da998b57a9
+
Passed0.28s
+
✅ Test010_Reset_Stack_Settings
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "notice": "Stack settings updated successfully.",
+  "stack_settings": {
+    "rte": {},
+    "stack_variables": {
+      "enforce_unique_urls": true,
+      "sys_rte_allowed_tags": "figure"
+    },
+    "discrete_variables": {
+      "cms": true,
+      "_version": 3
+    },
+    "live_preview": {},
+    "visual_builder": {},
+    "timeline": {},
+    "entries": {}
+  }
+}
+
+
+
+
AreEqual(Notice)
+
+
Expected:
Stack settings updated successfully.
+
Actual:
Stack settings updated successfully.
+
+
+
+
AreEqual(enforce_unique_urls)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
AreEqual(sys_rte_allowed_tags)
+
+
Expected:
figure
+
Actual:
figure
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/stacks/settings
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 74
+Content-Type: application/json
+
Request Body
{"stack_settings":{"stack_variables":{},"discrete_variables":{},"rte":{}}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks/settings' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 74' \
+  -H 'Content-Type: application/json' \
+  -d '{"stack_settings":{"stack_variables":{},"discrete_variables":{},"rte":{}}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:36 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 22ms
+X-Request-ID: 6dcdf1d0-6b2e-4258-a1a7-a0cafba897db
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Stack settings updated successfully.",
+  "stack_settings": {
+    "rte": {},
+    "stack_variables": {
+      "enforce_unique_urls": true,
+      "sys_rte_allowed_tags": "figure"
+    },
+    "discrete_variables": {
+      "cms": true,
+      "_version": 3
+    },
+    "live_preview": {},
+    "visual_builder": {},
+    "timeline": {},
+    "entries": {}
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioResetStackSettings
StackApiKeyblt1bca31da998b57a9
+
Passed0.28s
+
✅ Test001_Should_Return_All_Stacks
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "stacks": [
+    {
+      "created_at": "2026-01-08T05:35:15.139Z",
+      "updated_at": "2026-02-03T09:46:34.542Z",
+      "uid": "blt5c0ec6f94a0a9fc2",
+      "name": "Interns 2026 - Jan",
+      "description": "This stack is for the interns joing us in Jan 2026",
+      "org_uid": "bltc27b596a90cf8edc",
+      "api_key": "blt2fe3288bcebfa8ae",
+      "master_locale": "en-us",
+      "is_asset_download_public": true,
+      "owner_uid": "blt903aded41dff204d",
+      "user_uids": [
+        "blt903aded41dff204d",
+        "blt8001963599ba21f9",
+        "blt97cfbb0ce84fd2c5",
+        "blt01684de27f8ca841",
+        "cs001cad49eaaea4e0",
+        "cs745d1ab2a1560148",
+        "blt2fd21f9e9dbb26c9",
+        "blt1930fc55e5669df9",
+        "blt38b66ea00448e029",
+        "bltc15b42703fa590a5"
+      ],
+      "settings": {
+        "version": "2019-04-30",
+        "rte_version": 3,
+        "blockAuthQueryParams": true,
+        "allowedCDNTokens": [
+          "access_token"
+        ],
+        "branches": true,
+        "localesOptimization": false,
+        "webhook_enabled": true,
+        "visual_builder": {},
+        "timeline": {},
+        "live_preview": {
+          "enabled": true,
+          "default-env": "bltd54a9c9664f7642e",
+          "default-url": "",
+          "is-always-open-in-new-tab": false,
+          "lp-onboarding-setup-visible": true
+        },
+        "am_v2": {},
+        "language_fallback": false
+      },
+      "SYS_ACL": {
+        "others": {
+          "invite": false,
+          "sub_acl": {
+            "create": false,
+            "read": false,
+            "update": false,
+            "delete": false
+          }
+        },
+        "roles": [
+          {
+            "uid": "blt3e4a83f62c3ed726",
+            "name": "Developer",
+            "invite": true,
+            "sub_acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true
+            }
+          },
+          {
+            "uid": "blte050fa9e897278d5",
+            "name": "Admin",
+            "invite": true,
+            "sub_acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true
+            }
+          }
+        ]
+      }
+    },
+    {
+      "created_at": "2026-03-06T15:18:49.878Z",
+      "updated_at": "2026-03-12T12:11:46.324Z",
+      "uid": "bltae6bacc186e4819f",
+      "name": "Copy of Dotnet CDA SDK internal test",
+      "org_uid": "blt8d282118e2094bb8",
+      "api_key": "blta23060d14351eb10",
+      "master_locale": "en-us",
+      "is_asset_download_public": true,
+      "owner_uid": "blt4c60a7a861d77460",
+      "user_uids": [
+        "blt4c60a7a861d77460",
+        "blt1930fc55e5669df9"
+      ],
+      "settings": {
+        "version": "2019-04-30",
+        "rte_version": 3,
+        "blockAuthQueryParams": true,
+        "allowedCDNTokens": [
+          "access_token"
+        ],
+        "branches": true,
+        "localesOptimization": false,
+        "webhook_enabled": true,
+        "visual_builder": {},
+        "timeline": {},
+        "live_preview": {
+          "enabled": true,
+          "default-env": "blta799e64ff18a4df3",
+          "default-url": ""
+        },
+        "am_v2": {},
+        "entries": {},
+        "language_fallback": false
+      },
+      "SYS_ACL": {
+        "others": {
+          "invite": false,
+          "sub_acl": {
+            "create": false,
+            "read": false,
+            "update": false,
+            "delete": false
+          }
+        },
+        "roles": [
+          {
+            "uid": "bltd84b6b0132b0a0e5",
+            "name": "Developer",
+            "invite": true,
+            "sub_acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true
+            }
+          },
+          {
+            "uid": "blt167f15fb55232230",
+            "name": "Admin",
+            "invite": true,
+            "sub_acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true
+            }
+          }
+        ]
+      }
+    },
+    {
+      "created_at": "2026-03-07T06:14:15.241Z",
+      "updated_at": "2026-03-07T06:14:33.229Z",
+      "uid": "blt280e2f910a2197a9",
+      "name": "Copy of Interns 2026 - Jan",
+      "org_uid": "bltc27b596a90cf8edc",
+      "api_key": "blt24ae66d4b6dc2080",
+      "master_locale": "en-us",
+      "is_asset_download_public": true,
+      "owner_uid": "blt1930fc55e5669df9",
+      "user_uids": [
+        "blt1930fc55e5669df9"
+      ],
+      "settings": {
+        "version": "2019-04-30",
+        "rte_version": 3,
+        "blockAuthQueryParams": true,
+        "allowedCDNTokens": [
+          "access_token"
+        ],
+        "branches": true,
+        "localesOptimization": false,
+        "webhook_enabled": true,
+        "visual_builder": {},
+        "timeline": {},
+        "live_preview": {
+          "enabled": true,
+          "default-env": "blt229ad7409015a267",
+          "default-url": "",
+          "is-always-open-in-new-tab": false,
+          "lp-onboarding-setup-visible": true
+        },
+        "am_v2": {},
+        "entries": {},
+        "language_fallback": false
+      },
+      "master_key": "blt437a774a7a6e5ad7",
+      "SYS_ACL": {
+        "others": {
+          "invite": false,
+          "sub_acl": {
+            "create": false,
+            "read": false,
+            "update": false,
+            "delete": false
+          }
+        },
+        "roles": [
+          {
+            "uid": "blt77b9ea181befa604",
+            "name": "Developer",
+            "invite": true,
+            "sub_acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true
+            }
+          },
+          {
+            "uid": "blt0472445c363a2ed3",
+            "name": "Admin",
+            "invite": true,
+            "sub_acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true
+            }
+          }
+        ]
+      }
+    },
+    {
+      "created_at": "2026-03-12T12:16:53.714Z",
+      "updated_at": "2026-03-12T12:16:56.378Z",
+      "uid": "blta77d4b24cace786a",
+      "name": "DotNet Management SDK Stack",
+      "description": "Integration testing Stack for DotNet Management SDK",
+      "org_uid": "blt8d282118e2094bb8",
+      "api_key": "bltd87839f91f3e1448",
+      "master_locale": "en-us",
+      "is_asset_download_public": true,
+      "owner_uid": "blt1930fc55e5669df9",
+      "user_uids": [
+        "blt1930fc55e5669df9"
+      ],
+      "settings": {
+        "version": "2019-04-30",
+        "rte_version": 3,
+        "blockAuthQueryParams": true,
+        "allowedCDNTokens": [
+          "access_token"
+        ],
+        "branches": true,
+        "localesOptimization": false,
+        "webhook_enabled": true,
+        "visual_builder": {},
+        "timeline": {},
+        "live_preview": {},
+        "am_v2": {},
+        "entries": {},
+        "language_fallback": false,
+        "rte": {},
+        "workflow_stages": false,
+        "publishing_rules": false
+      },
+      "master_key": "bltb426e3b0f3a4c531",
+      "SYS_ACL": {
+        "others": {
+          "invite": false,
+          "sub_acl": {
+            "create": false,
+            "read": false,
+            "update": false,
+            "delete": false
+          }
+        },
+        "roles": [
+          {
+            "uid": "blt9abb917383970961",
+            "name": "Developer",
+            "invite": true,
+            "sub_acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true
+            }
+          },
+          {
+            "uid": "blt60539db603b6350b",
+            "name": "Admin",
+            "invite": true,
+            "sub_acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true
+            }
+          }
+        ]
+      }
+    },
+    {
+      "created_at": "2026-03-12T12:35:38.558Z",
+      "updated_at": "2026-03-12T12:35:41.085Z",
+      "uid": "bltf6dedbb54111facb",
+      "name": "DotNet Management SDK Stack",
+      "description": "Integration testing Stack for DotNet Management SDK",
+      "org_uid": "blt8d282118e2094bb8",
+      "api_key": "blt72045e49dc1aa085",
+      "master_locale": "en-us",
+      "is_asset_download_public": true,
+      "owner_uid": "blt1930fc55e5669df9",
+      "user_uids": [
+        "blt1930fc55e5669df9"
+      ],
+      "settings": {
+        "version": "2019-04-30",
+        "rte_version": 3,
+        "blockAuthQueryParams": true,
+        "allowedCDNTokens": [
+          "access_token"
+        ],
+        "branches": true,
+        "localesOptimization": false,
+        "webhook_enabled": true,
+        "visual_builder": {},
+        "timeline": {},
+        "live_preview": {},
+        "am_v2": {},
+        "entries": {},
+        "language_fallback": false,
+        "rte": {},
+        "workflow_stages": false,
+        "publishing_rules": false
+      },
+      "master_key": "blt5c25d00df8c449c8",
+      "SYS_ACL": {
+        "others": {
+          "invite": false,
+          "sub_acl": {
+            "create": false,
+            "read": false,
+            "update": false,
+            "delete": false
+          }
+        },
+        "roles": [
+          {
+            "uid": "blt006177335aae6cf8",
+            "name": "Developer",
+            "invite": true,
+            "sub_acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true
+            }
+          },
+          {
+            "uid": "blt96bdff8eb43af1b9",
+            "name": "Admin",
+            "invite": true,
+            "sub_acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true
+            }
+          }
+        ]
+      }
+    }
+  ],
+  "count": 5
+}
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/stacks
+
Request Headers
authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/stacks' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:34 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-runtime: 33ms
+X-Request-ID: ab0f9a73-79b9-4280-a165-8c5fd626d8e5
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{"stacks":[{"created_at":"2026-01-08T05:35:15.139Z","updated_at":"2026-02-03T09:46:34.542Z","uid":"blt5c0ec6f94a0a9fc2","name":"Interns 2026 - Jan","description":"This stack is for the interns joing us in Jan 2026","org_uid":"bltc27b596a90cf8edc","api_key":"blt2fe3288bcebfa8ae","master_locale":"en-us","is_asset_download_public":true,"owner_uid":"blt903aded41dff204d","user_uids":["blt903aded41dff204d","blt8001963599ba21f9","blt97cfbb0ce84fd2c5","blt01684de27f8ca841","cs001cad49eaaea4e0","cs745d1ab2a1560148","blt2fd21f9e9dbb26c9","blt1930fc55e5669df9","blt38b66ea00448e029","bltc15b42703fa590a5"],"settings":{"version":"2019-04-30","rte_version":3,"blockAuthQueryParams":true,"allowedCDNTokens":["access_token"],"branches":true,"localesOptimization":false,"webhook_enabled":true,"visual_builder":{},"timeline":{},"live_preview":{"enabled":true,"default-env":"bltd54a9c9664f7642e","default-url":"","is-always-open-in-new-tab":false,"lp-onboarding-setup-visible":true},"am_v2":{},"language_fallback":false},"SYS_ACL":{"others":{"invite":false,"sub_acl":{"create":false,"read":false,"update":false,"delete":false}},"roles":[{"uid":"blt3e4a83f62c3ed726","name":"Developer","invite":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true}},{"uid":"blte050fa9e897278d5","name":"Admin","invite":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true}}]}},{"created_at":"2026-03-06T15:18:49.878Z","updated_at":"2026-03-12T12:11:46.324Z","uid":"bltae6bacc186e4819f","name":"Copy of Dotnet CDA SDK internal test","org_uid":"blt8d282118e2094bb8","api_key":"blta23060d14351eb10","master_locale":"en-us","is_asset_download_public":true,"owner_uid":"blt4c60a7a861d77460","user_uids":["blt4c60a7a861d77460","blt1930fc55e5669df9"],"settings":{"version":"2019-04-30","rte_version":3,"blockAuthQueryParams":true,"allowedCDNTokens":["access_token"],"branches":true,"localesOptimization":false,"webhook_enabled":true,"visual_builder":{},"timeline":{},"live_preview":{"enabled":true,"default-env":"blta799e64ff18a4df3","default-url":""},"am_v2":{},"entries":{},"language_fallback":false},"SYS_ACL":{"others":{"invite":false,"sub_acl":{"create":false,"read":false,"update":false,"delete":false}},"roles":[{"uid":"bltd84b6b0132b0a0e5","name":"Developer","invite":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true}},{"uid":"blt167f15fb55232230","name":"Admin","invite":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true}}]}},{"created_at":"2026-03-07T06:14:15.241Z","updated_at":"2026-03-07T06:14:33.229Z","uid":"blt280e2f910a2197a9","name":"Copy of Interns 2026 - Jan","org_uid":"bltc27b596a90cf8edc","api_key":"blt24ae66d4b6dc2080","master_locale":"en-us","is_asset_download_public":true,"owner_uid":"blt1930fc55e5669df9","user_uids":["blt1930fc55e5669df9"],"settings":{"version":"2019-04-30","rte_version":3,"blockAuthQueryParams":true,"allowedCDNTokens":["access_token"],"branches":true,"localesOptimization":false,"webhook_enabled":true,"visual_b
+
+ Test Context + + + + +
TestScenarioReturnAllStacks
+
Passed0.30s
+
✅ Test009_Stack_Settings
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "stack_settings": {
+    "stack_variables": {
+      "enforce_unique_urls": true,
+      "sys_rte_allowed_tags": "figure"
+    },
+    "discrete_variables": {
+      "cms": true,
+      "_version": 3
+    },
+    "live_preview": {},
+    "visual_builder": {},
+    "timeline": {},
+    "entries": {}
+  }
+}
+
+
+
+
IsNull(model.Notice)
+
+
Expected:
null
+
Actual:
null
+
+
+
+
AreEqual(enforce_unique_urls)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
AreEqual(sys_rte_allowed_tags)
+
+
Expected:
figure
+
Actual:
figure
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/stacks/settings
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/stacks/settings' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:36 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 14ms
+X-Request-ID: 9972443d-0bdf-4519-aed1-6a37cd189417
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "stack_settings": {
+    "stack_variables": {
+      "enforce_unique_urls": true,
+      "sys_rte_allowed_tags": "figure"
+    },
+    "discrete_variables": {
+      "cms": true,
+      "_version": 3
+    },
+    "live_preview": {},
+    "visual_builder": {},
+    "timeline": {},
+    "entries": {}
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioStackSettings
StackApiKeyblt1bca31da998b57a9
+
Passed0.27s
+
✅ Test002_Should_Return_All_StacksAsync
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "stacks": [
+    {
+      "created_at": "2026-01-08T05:35:15.139Z",
+      "updated_at": "2026-02-03T09:46:34.542Z",
+      "uid": "blt5c0ec6f94a0a9fc2",
+      "name": "Interns 2026 - Jan",
+      "description": "This stack is for the interns joing us in Jan 2026",
+      "org_uid": "bltc27b596a90cf8edc",
+      "api_key": "blt2fe3288bcebfa8ae",
+      "master_locale": "en-us",
+      "is_asset_download_public": true,
+      "owner_uid": "blt903aded41dff204d",
+      "user_uids": [
+        "blt903aded41dff204d",
+        "blt8001963599ba21f9",
+        "blt97cfbb0ce84fd2c5",
+        "blt01684de27f8ca841",
+        "cs001cad49eaaea4e0",
+        "cs745d1ab2a1560148",
+        "blt2fd21f9e9dbb26c9",
+        "blt1930fc55e5669df9",
+        "blt38b66ea00448e029",
+        "bltc15b42703fa590a5"
+      ],
+      "settings": {
+        "version": "2019-04-30",
+        "rte_version": 3,
+        "blockAuthQueryParams": true,
+        "allowedCDNTokens": [
+          "access_token"
+        ],
+        "branches": true,
+        "localesOptimization": false,
+        "webhook_enabled": true,
+        "visual_builder": {},
+        "timeline": {},
+        "live_preview": {
+          "enabled": true,
+          "default-env": "bltd54a9c9664f7642e",
+          "default-url": "",
+          "is-always-open-in-new-tab": false,
+          "lp-onboarding-setup-visible": true
+        },
+        "am_v2": {},
+        "language_fallback": false
+      },
+      "SYS_ACL": {
+        "others": {
+          "invite": false,
+          "sub_acl": {
+            "create": false,
+            "read": false,
+            "update": false,
+            "delete": false
+          }
+        },
+        "roles": [
+          {
+            "uid": "blt3e4a83f62c3ed726",
+            "name": "Developer",
+            "invite": true,
+            "sub_acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true
+            }
+          },
+          {
+            "uid": "blte050fa9e897278d5",
+            "name": "Admin",
+            "invite": true,
+            "sub_acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true
+            }
+          }
+        ]
+      }
+    },
+    {
+      "created_at": "2026-03-06T15:18:49.878Z",
+      "updated_at": "2026-03-12T12:11:46.324Z",
+      "uid": "bltae6bacc186e4819f",
+      "name": "Copy of Dotnet CDA SDK internal test",
+      "org_uid": "blt8d282118e2094bb8",
+      "api_key": "blta23060d14351eb10",
+      "master_locale": "en-us",
+      "is_asset_download_public": true,
+      "owner_uid": "blt4c60a7a861d77460",
+      "user_uids": [
+        "blt4c60a7a861d77460",
+        "blt1930fc55e5669df9"
+      ],
+      "settings": {
+        "version": "2019-04-30",
+        "rte_version": 3,
+        "blockAuthQueryParams": true,
+        "allowedCDNTokens": [
+          "access_token"
+        ],
+        "branches": true,
+        "localesOptimization": false,
+        "webhook_enabled": true,
+        "visual_builder": {},
+        "timeline": {},
+        "live_preview": {
+          "enabled": true,
+          "default-env": "blta799e64ff18a4df3",
+          "default-url": ""
+        },
+        "am_v2": {},
+        "entries": {},
+        "language_fallback": false
+      },
+      "SYS_ACL": {
+        "others": {
+          "invite": false,
+          "sub_acl": {
+            "create": false,
+            "read": false,
+            "update": false,
+            "delete": false
+          }
+        },
+        "roles": [
+          {
+            "uid": "bltd84b6b0132b0a0e5",
+            "name": "Developer",
+            "invite": true,
+            "sub_acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true
+            }
+          },
+          {
+            "uid": "blt167f15fb55232230",
+            "name": "Admin",
+            "invite": true,
+            "sub_acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true
+            }
+          }
+        ]
+      }
+    },
+    {
+      "created_at": "2026-03-07T06:14:15.241Z",
+      "updated_at": "2026-03-07T06:14:33.229Z",
+      "uid": "blt280e2f910a2197a9",
+      "name": "Copy of Interns 2026 - Jan",
+      "org_uid": "bltc27b596a90cf8edc",
+      "api_key": "blt24ae66d4b6dc2080",
+      "master_locale": "en-us",
+      "is_asset_download_public": true,
+      "owner_uid": "blt1930fc55e5669df9",
+      "user_uids": [
+        "blt1930fc55e5669df9"
+      ],
+      "settings": {
+        "version": "2019-04-30",
+        "rte_version": 3,
+        "blockAuthQueryParams": true,
+        "allowedCDNTokens": [
+          "access_token"
+        ],
+        "branches": true,
+        "localesOptimization": false,
+        "webhook_enabled": true,
+        "visual_builder": {},
+        "timeline": {},
+        "live_preview": {
+          "enabled": true,
+          "default-env": "blt229ad7409015a267",
+          "default-url": "",
+          "is-always-open-in-new-tab": false,
+          "lp-onboarding-setup-visible": true
+        },
+        "am_v2": {},
+        "entries": {},
+        "language_fallback": false
+      },
+      "master_key": "blt437a774a7a6e5ad7",
+      "SYS_ACL": {
+        "others": {
+          "invite": false,
+          "sub_acl": {
+            "create": false,
+            "read": false,
+            "update": false,
+            "delete": false
+          }
+        },
+        "roles": [
+          {
+            "uid": "blt77b9ea181befa604",
+            "name": "Developer",
+            "invite": true,
+            "sub_acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true
+            }
+          },
+          {
+            "uid": "blt0472445c363a2ed3",
+            "name": "Admin",
+            "invite": true,
+            "sub_acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true
+            }
+          }
+        ]
+      }
+    },
+    {
+      "created_at": "2026-03-12T12:16:53.714Z",
+      "updated_at": "2026-03-12T12:16:56.378Z",
+      "uid": "blta77d4b24cace786a",
+      "name": "DotNet Management SDK Stack",
+      "description": "Integration testing Stack for DotNet Management SDK",
+      "org_uid": "blt8d282118e2094bb8",
+      "api_key": "bltd87839f91f3e1448",
+      "master_locale": "en-us",
+      "is_asset_download_public": true,
+      "owner_uid": "blt1930fc55e5669df9",
+      "user_uids": [
+        "blt1930fc55e5669df9"
+      ],
+      "settings": {
+        "version": "2019-04-30",
+        "rte_version": 3,
+        "blockAuthQueryParams": true,
+        "allowedCDNTokens": [
+          "access_token"
+        ],
+        "branches": true,
+        "localesOptimization": false,
+        "webhook_enabled": true,
+        "visual_builder": {},
+        "timeline": {},
+        "live_preview": {},
+        "am_v2": {},
+        "entries": {},
+        "language_fallback": false,
+        "rte": {},
+        "workflow_stages": false,
+        "publishing_rules": false
+      },
+      "master_key": "bltb426e3b0f3a4c531",
+      "SYS_ACL": {
+        "others": {
+          "invite": false,
+          "sub_acl": {
+            "create": false,
+            "read": false,
+            "update": false,
+            "delete": false
+          }
+        },
+        "roles": [
+          {
+            "uid": "blt9abb917383970961",
+            "name": "Developer",
+            "invite": true,
+            "sub_acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true
+            }
+          },
+          {
+            "uid": "blt60539db603b6350b",
+            "name": "Admin",
+            "invite": true,
+            "sub_acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true
+            }
+          }
+        ]
+      }
+    },
+    {
+      "created_at": "2026-03-12T12:35:38.558Z",
+      "updated_at": "2026-03-12T12:35:41.085Z",
+      "uid": "bltf6dedbb54111facb",
+      "name": "DotNet Management SDK Stack",
+      "description": "Integration testing Stack for DotNet Management SDK",
+      "org_uid": "blt8d282118e2094bb8",
+      "api_key": "blt72045e49dc1aa085",
+      "master_locale": "en-us",
+      "is_asset_download_public": true,
+      "owner_uid": "blt1930fc55e5669df9",
+      "user_uids": [
+        "blt1930fc55e5669df9"
+      ],
+      "settings": {
+        "version": "2019-04-30",
+        "rte_version": 3,
+        "blockAuthQueryParams": true,
+        "allowedCDNTokens": [
+          "access_token"
+        ],
+        "branches": true,
+        "localesOptimization": false,
+        "webhook_enabled": true,
+        "visual_builder": {},
+        "timeline": {},
+        "live_preview": {},
+        "am_v2": {},
+        "entries": {},
+        "language_fallback": false,
+        "rte": {},
+        "workflow_stages": false,
+        "publishing_rules": false
+      },
+      "master_key": "blt5c25d00df8c449c8",
+      "SYS_ACL": {
+        "others": {
+          "invite": false,
+          "sub_acl": {
+            "create": false,
+            "read": false,
+            "update": false,
+            "delete": false
+          }
+        },
+        "roles": [
+          {
+            "uid": "blt006177335aae6cf8",
+            "name": "Developer",
+            "invite": true,
+            "sub_acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true
+            }
+          },
+          {
+            "uid": "blt96bdff8eb43af1b9",
+            "name": "Admin",
+            "invite": true,
+            "sub_acl": {
+              "create": true,
+              "read": true,
+              "update": true,
+              "delete": true
+            }
+          }
+        ]
+      }
+    }
+  ],
+  "count": 5
+}
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/stacks
+
Request Headers
authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/stacks' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:34 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-runtime: 23ms
+X-Request-ID: adb85936-fd7b-4b15-82ce-06e2b4b089c6
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{"stacks":[{"created_at":"2026-01-08T05:35:15.139Z","updated_at":"2026-02-03T09:46:34.542Z","uid":"blt5c0ec6f94a0a9fc2","name":"Interns 2026 - Jan","description":"This stack is for the interns joing us in Jan 2026","org_uid":"bltc27b596a90cf8edc","api_key":"blt2fe3288bcebfa8ae","master_locale":"en-us","is_asset_download_public":true,"owner_uid":"blt903aded41dff204d","user_uids":["blt903aded41dff204d","blt8001963599ba21f9","blt97cfbb0ce84fd2c5","blt01684de27f8ca841","cs001cad49eaaea4e0","cs745d1ab2a1560148","blt2fd21f9e9dbb26c9","blt1930fc55e5669df9","blt38b66ea00448e029","bltc15b42703fa590a5"],"settings":{"version":"2019-04-30","rte_version":3,"blockAuthQueryParams":true,"allowedCDNTokens":["access_token"],"branches":true,"localesOptimization":false,"webhook_enabled":true,"visual_builder":{},"timeline":{},"live_preview":{"enabled":true,"default-env":"bltd54a9c9664f7642e","default-url":"","is-always-open-in-new-tab":false,"lp-onboarding-setup-visible":true},"am_v2":{},"language_fallback":false},"SYS_ACL":{"others":{"invite":false,"sub_acl":{"create":false,"read":false,"update":false,"delete":false}},"roles":[{"uid":"blt3e4a83f62c3ed726","name":"Developer","invite":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true}},{"uid":"blte050fa9e897278d5","name":"Admin","invite":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true}}]}},{"created_at":"2026-03-06T15:18:49.878Z","updated_at":"2026-03-12T12:11:46.324Z","uid":"bltae6bacc186e4819f","name":"Copy of Dotnet CDA SDK internal test","org_uid":"blt8d282118e2094bb8","api_key":"blta23060d14351eb10","master_locale":"en-us","is_asset_download_public":true,"owner_uid":"blt4c60a7a861d77460","user_uids":["blt4c60a7a861d77460","blt1930fc55e5669df9"],"settings":{"version":"2019-04-30","rte_version":3,"blockAuthQueryParams":true,"allowedCDNTokens":["access_token"],"branches":true,"localesOptimization":false,"webhook_enabled":true,"visual_builder":{},"timeline":{},"live_preview":{"enabled":true,"default-env":"blta799e64ff18a4df3","default-url":""},"am_v2":{},"entries":{},"language_fallback":false},"SYS_ACL":{"others":{"invite":false,"sub_acl":{"create":false,"read":false,"update":false,"delete":false}},"roles":[{"uid":"bltd84b6b0132b0a0e5","name":"Developer","invite":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true}},{"uid":"blt167f15fb55232230","name":"Admin","invite":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true}}]}},{"created_at":"2026-03-07T06:14:15.241Z","updated_at":"2026-03-07T06:14:33.229Z","uid":"blt280e2f910a2197a9","name":"Copy of Interns 2026 - Jan","org_uid":"bltc27b596a90cf8edc","api_key":"blt24ae66d4b6dc2080","master_locale":"en-us","is_asset_download_public":true,"owner_uid":"blt1930fc55e5669df9","user_uids":["blt1930fc55e5669df9"],"settings":{"version":"2019-04-30","rte_version":3,"blockAuthQueryParams":true,"allowedCDNTokens":["access_token"],"branches":true,"localesOptimization":false,"webhook_enabled":true,"visual_b
+
+ Test Context + + + + +
TestScenarioReturnAllStacksAsync
+
Passed0.29s
+
✅ Test011_Add_Stack_Settings_Async
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "notice": "Stack settings updated successfully.",
+  "stack_settings": {
+    "rte": {
+      "cs_only_breakline": true
+    },
+    "stack_variables": {
+      "enforce_unique_urls": true,
+      "sys_rte_allowed_tags": "figure"
+    },
+    "discrete_variables": {
+      "cms": true,
+      "_version": 3
+    },
+    "live_preview": {},
+    "visual_builder": {},
+    "timeline": {},
+    "entries": {}
+  }
+}
+
+
+
+
AreEqual(Notice)
+
+
Expected:
Stack settings updated successfully.
+
Actual:
Stack settings updated successfully.
+
+
+
+
AreEqual(cs_only_breakline)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/stacks/settings
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 102
+Content-Type: application/json
+
Request Body
{"stack_settings":{"stack_variables":null,"discrete_variables":null,"rte":{"cs_only_breakline":true}}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks/settings' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 102' \
+  -H 'Content-Type: application/json' \
+  -d '{"stack_settings":{"stack_variables":null,"discrete_variables":null,"rte":{"cs_only_breakline":true}}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:37 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 22ms
+X-Request-ID: 5f0dca29-e0f5-4013-a22c-756e7d10dcdf
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Stack settings updated successfully.",
+  "stack_settings": {
+    "rte": {
+      "cs_only_breakline": true
+    },
+    "stack_variables": {
+      "enforce_unique_urls": true,
+      "sys_rte_allowed_tags": "figure"
+    },
+    "discrete_variables": {
+      "cms": true,
+      "_version": 3
+    },
+    "live_preview": {},
+    "visual_builder": {},
+    "timeline": {},
+    "entries": {}
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioAddStackSettingsAsync
StackApiKeyblt1bca31da998b57a9
+
Passed0.28s
+
✅ Test003_Should_Create_Stack
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "notice": "Stack created successfully.",
+  "stack": {
+    "cluster": "cs-internal",
+    "created_at": "2026-03-13T02:33:34.598Z",
+    "updated_at": "2026-03-13T02:33:34.701Z",
+    "uid": "bltcf56a6f05651f1d8",
+    "name": "DotNet Management Stack",
+    "org_uid": "blt8d282118e2094bb8",
+    "api_key": "blt1bca31da998b57a9",
+    "master_locale": "en-us",
+    "is_asset_download_public": true,
+    "owner_uid": "blt1930fc55e5669df9",
+    "user_uids": [
+      "blt1930fc55e5669df9"
+    ],
+    "settings": {
+      "version": "2019-04-30",
+      "rte_version": 3,
+      "blockAuthQueryParams": true,
+      "allowedCDNTokens": [
+        "access_token"
+      ],
+      "branches": true,
+      "localesOptimization": false,
+      "webhook_enabled": true,
+      "visual_builder": {},
+      "timeline": {},
+      "live_preview": {},
+      "am_v2": {},
+      "entries": {},
+      "language_fallback": false
+    },
+    "master_key": "bltb651649fc56dcfa8",
+    "SYS_ACL": {
+      "others": {
+        "invite": false,
+        "sub_acl": {
+          "create": false,
+          "read": false,
+          "update": false,
+          "delete": false
+        }
+      },
+      "roles": [
+        {
+          "uid": "blt5f456b9cfa69b697",
+          "name": "Developer",
+          "invite": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true
+          }
+        },
+        {
+          "uid": "blt1b7926e68b1b14b2",
+          "name": "Admin",
+          "invite": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true
+          }
+        }
+      ]
+    },
+    "discrete_variables": {
+      "cms": true,
+      "_version": 3,
+      "secret_key": "689488de7ee7fae3f2ce57afeaecfc03cf638e18"
+    }
+  }
+}
+
+
+
+
IsNull(model.Stack.Description)
+
+
Expected:
null
+
Actual:
null
+
+
+
+
AreEqual(StackName)
+
+
Expected:
DotNet Management Stack
+
Actual:
DotNet Management Stack
+
+
+
+
AreEqual(MasterLocale)
+
+
Expected:
en-us
+
Actual:
en-us
+
+
+
+
AreEqual(OrgUid)
+
+
Expected:
blt8d282118e2094bb8
+
Actual:
blt8d282118e2094bb8
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/stacks
+
Request Headers
organization_uid: blt8d282118e2094bb8
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 68
+Content-Type: application/json
+
Request Body
{"stack":{"name":"DotNet Management Stack","master_locale":"en-us"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks' \
+  -H 'organization_uid: blt8d282118e2094bb8' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 68' \
+  -H 'Content-Type: application/json' \
+  -d '{"stack":{"name":"DotNet Management Stack","master_locale":"en-us"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:34 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-ratelimit-reset: 60
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 151ms
+X-Request-ID: 8fcba118-f318-486e-adbd-ae65f79d770d
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Stack created successfully.",
+  "stack": {
+    "cluster": "cs-internal",
+    "created_at": "2026-03-13T02:33:34.598Z",
+    "updated_at": "2026-03-13T02:33:34.701Z",
+    "uid": "bltcf56a6f05651f1d8",
+    "name": "DotNet Management Stack",
+    "org_uid": "blt8d282118e2094bb8",
+    "api_key": "blt1bca31da998b57a9",
+    "master_locale": "en-us",
+    "is_asset_download_public": true,
+    "owner_uid": "blt1930fc55e5669df9",
+    "user_uids": [
+      "blt1930fc55e5669df9"
+    ],
+    "settings": {
+      "version": "2019-04-30",
+      "rte_version": 3,
+      "blockAuthQueryParams": true,
+      "allowedCDNTokens": [
+        "access_token"
+      ],
+      "branches": true,
+      "localesOptimization": false,
+      "webhook_enabled": true,
+      "visual_builder": {},
+      "timeline": {},
+      "live_preview": {},
+      "am_v2": {},
+      "entries": {},
+      "language_fallback": false
+    },
+    "master_key": "bltb651649fc56dcfa8",
+    "SYS_ACL": {
+      "others": {
+        "invite": false,
+        "sub_acl": {
+          "create": false,
+          "read": false,
+          "update": false,
+          "delete": false
+        }
+      },
+      "roles": [
+        {
+          "uid": "blt5f456b9cfa69b697",
+          "name": "Developer",
+          "invite": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true
+          }
+        },
+        {
+          "uid": "blt1b7926e68b1b14b2",
+          "name": "Admin",
+          "invite": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true
+          }
+        }
+      ]
+    },
+    "discrete_variables": {
+      "cms": true,
+      "_version": 3,
+      "secret_key": "689488de7ee7fae3f2ce57afeaecfc03cf638e18"
+    }
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioCreateStack
StackApiKeyblt1bca31da998b57a9
+
Passed0.42s
+
✅ Test005_Should_Update_Stack_Async
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
{
+  "notice": "Stack updated successfully.",
+  "stack": {
+    "created_at": "2026-03-13T02:33:34.598Z",
+    "updated_at": "2026-03-13T02:33:35.337Z",
+    "uid": "bltcf56a6f05651f1d8",
+    "name": "DotNet Management SDK Stack",
+    "description": "Integration testing Stack for DotNet Management SDK",
+    "org_uid": "blt8d282118e2094bb8",
+    "api_key": "blt1bca31da998b57a9",
+    "master_locale": "en-us",
+    "is_asset_download_public": true,
+    "owner_uid": "blt1930fc55e5669df9",
+    "user_uids": [
+      "blt1930fc55e5669df9"
+    ],
+    "settings": {
+      "version": "2019-04-30",
+      "rte_version": 3,
+      "blockAuthQueryParams": true,
+      "allowedCDNTokens": [
+        "access_token"
+      ],
+      "branches": true,
+      "localesOptimization": false,
+      "webhook_enabled": true,
+      "visual_builder": {},
+      "timeline": {},
+      "live_preview": {},
+      "am_v2": {},
+      "entries": {},
+      "language_fallback": false
+    },
+    "master_key": "bltb651649fc56dcfa8",
+    "SYS_ACL": {
+      "others": {
+        "invite": false,
+        "sub_acl": {
+          "create": false,
+          "read": false,
+          "update": false,
+          "delete": false
+        }
+      },
+      "roles": [
+        {
+          "uid": "blt5f456b9cfa69b697",
+          "name": "Developer",
+          "invite": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true
+          }
+        },
+        {
+          "uid": "blt1b7926e68b1b14b2",
+          "name": "Admin",
+          "invite": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true
+          }
+        }
+      ]
+    },
+    "stack_variables": {},
+    "discrete_variables": {
+      "cms": true,
+      "_version": 3,
+      "secret_key": "689488de7ee7fae3f2ce57afeaecfc03cf638e18"
+    }
+  }
+}
+
+
+
+
AreEqual(APIKey)
+
+
Expected:
blt1bca31da998b57a9
+
Actual:
blt1bca31da998b57a9
+
+
+
+
AreEqual(StackName)
+
+
Expected:
DotNet Management SDK Stack
+
Actual:
DotNet Management SDK Stack
+
+
+
+
AreEqual(MasterLocale)
+
+
Expected:
en-us
+
Actual:
en-us
+
+
+
+
AreEqual(Description)
+
+
Expected:
Integration testing Stack for DotNet Management SDK
+
Actual:
Integration testing Stack for DotNet Management SDK
+
+
+
+
AreEqual(OrgUid)
+
+
Expected:
blt8d282118e2094bb8
+
Actual:
blt8d282118e2094bb8
+
+

HTTP Transactions

+
+ +
PUThttps://api.contentstack.io/v3/stacks
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 116
+Content-Type: application/json
+
Request Body
{"stack":{"name":"DotNet Management SDK Stack","description":"Integration testing Stack for DotNet Management SDK"}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/stacks' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 116' \
+  -H 'Content-Type: application/json' \
+  -d '{"stack":{"name":"DotNet Management SDK Stack","description":"Integration testing Stack for DotNet Management SDK"}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:35 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 47ms
+X-Request-ID: d5545347-6c0d-42db-b7cd-6155c4e4c44c
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Stack updated successfully.",
+  "stack": {
+    "created_at": "2026-03-13T02:33:34.598Z",
+    "updated_at": "2026-03-13T02:33:35.337Z",
+    "uid": "bltcf56a6f05651f1d8",
+    "name": "DotNet Management SDK Stack",
+    "description": "Integration testing Stack for DotNet Management SDK",
+    "org_uid": "blt8d282118e2094bb8",
+    "api_key": "blt1bca31da998b57a9",
+    "master_locale": "en-us",
+    "is_asset_download_public": true,
+    "owner_uid": "blt1930fc55e5669df9",
+    "user_uids": [
+      "blt1930fc55e5669df9"
+    ],
+    "settings": {
+      "version": "2019-04-30",
+      "rte_version": 3,
+      "blockAuthQueryParams": true,
+      "allowedCDNTokens": [
+        "access_token"
+      ],
+      "branches": true,
+      "localesOptimization": false,
+      "webhook_enabled": true,
+      "visual_builder": {},
+      "timeline": {},
+      "live_preview": {},
+      "am_v2": {},
+      "entries": {},
+      "language_fallback": false
+    },
+    "master_key": "bltb651649fc56dcfa8",
+    "SYS_ACL": {
+      "others": {
+        "invite": false,
+        "sub_acl": {
+          "create": false,
+          "read": false,
+          "update": false,
+          "delete": false
+        }
+      },
+      "roles": [
+        {
+          "uid": "blt5f456b9cfa69b697",
+          "name": "Developer",
+          "invite": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true
+          }
+        },
+        {
+          "uid": "blt1b7926e68b1b14b2",
+          "name": "Admin",
+          "invite": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true
+          }
+        }
+      ]
+    },
+    "stack_variables": {},
+    "discrete_variables": {
+      "cms": true,
+      "_version": 3,
+      "secret_key": "689488de7ee7fae3f2ce57afeaecfc03cf638e18"
+    }
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioUpdateStackAsync
StackApiKeyblt1bca31da998b57a9
+
Passed0.32s
+
+
+ +
+
+
+ + Contentstack004_GlobalFieldTest +
+
+ 9 passed · + 0 failed · + 0 skipped · + 9 total +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Test NameStatusDuration
+
✅ Test004_Should_Update_Global_Field
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsNotNull(globalField)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Tests.Model.GlobalFieldModel
+
+
+
+
IsNotNull(globalField.Modelling)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.ContentModelling
+
+
+
+
AreEqual(Title)
+
+
Expected:
Updated title
+
Actual:
Updated title
+
+
+
+
AreEqual(Uid)
+
+
Expected:
first
+
Actual:
first
+
+
+
+
AreEqual(SchemaCount)
+
+
Expected:
2
+
Actual:
2
+
+

HTTP Transactions

+
+ +
PUThttps://api.contentstack.io/v3/global_fields/first
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 467
+Content-Type: application/json
+
Request Body
{"global_field": {"title":"Updated title","uid":"first","schema":[{"display_name":"Name","uid":"name","data_type":"text","multiple":false,"mandatory":false,"unique":false},{"display_name":"Rich text editor","uid":"description","data_type":"text","field_metadata":{"allow_rich_text":true,"description":"","multiline":false,"rich_text_type":"advanced","options":[],"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}]}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/global_fields/first' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 467' \
+  -H 'Content-Type: application/json' \
+  -d '{"global_field": {"title":"Updated title","uid":"first","schema":[{"display_name":"Name","uid":"name","data_type":"text","multiple":false,"mandatory":false,"unique":false},{"display_name":"Rich text editor","uid":"description","data_type":"text","field_metadata":{"allow_rich_text":true,"description":"","multiline":false,"rich_text_type":"advanced","options":[],"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}]}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:18 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+api_version: 3.2
+x-contentstack-organization: blt8d282118e2094bb8
+X-Request-ID: 6ba1e283-b227-4615-89e0-06ca430a867d
+x-runtime: 33
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 699
+
Response Body +
{
+  "notice": "Global Field updated successfully.",
+  "global_field": {
+    "title": "Updated title",
+    "uid": "first",
+    "description": "",
+    "schema": [
+      {
+        "display_name": "Name",
+        "uid": "name",
+        "data_type": "text",
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "display_name": "Rich text editor",
+        "uid": "description",
+        "data_type": "text",
+        "field_metadata": {
+          "allow_rich_text": true,
+          "description": "",
+          "multiline": false,
+          "rich_text_type": "advanced",
+          "options": [],
+          "version": 3
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      }
+    ],
+    "created_at": "2026-03-13T02:34:17.338Z",
+    "updated_at": "2026-03-13T02:34:18.507Z",
+    "_version": 2,
+    "inbuilt_class": false,
+    "last_activity": {},
+    "maintain_revisions": true
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioUpdateGlobalField
GlobalFieldfirst
+
Passed0.35s
+
✅ Test002_Should_Fetch_Global_Field
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsNotNull(globalField)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Tests.Model.GlobalFieldModel
+
+
+
+
IsNotNull(globalField.Modelling)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.ContentModelling
+
+
+
+
AreEqual(Title)
+
+
Expected:
First
+
Actual:
First
+
+
+
+
AreEqual(Uid)
+
+
Expected:
first
+
Actual:
first
+
+
+
+
AreEqual(SchemaCount)
+
+
Expected:
2
+
Actual:
2
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/global_fields/first
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/global_fields/first' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:17 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+surrogate-key: blt1bca31da998b57a9.global_fields blt1bca31da998b57a9.global_fields.first
+api_version: 3.2
+x-contentstack-organization: blt8d282118e2094bb8
+X-Request-ID: b37a738b-4083-4344-8296-47a228356d32
+x-runtime: 36
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 645
+
Response Body +
{
+  "global_field": {
+    "title": "First",
+    "uid": "first",
+    "description": "",
+    "schema": [
+      {
+        "display_name": "Name",
+        "uid": "name",
+        "data_type": "text",
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "display_name": "Rich text editor",
+        "uid": "description",
+        "data_type": "text",
+        "field_metadata": {
+          "allow_rich_text": true,
+          "description": "",
+          "multiline": false,
+          "rich_text_type": "advanced",
+          "options": [],
+          "version": 3
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      }
+    ],
+    "created_at": "2026-03-13T02:34:17.338Z",
+    "updated_at": "2026-03-13T02:34:17.338Z",
+    "_version": 1,
+    "inbuilt_class": false,
+    "last_activity": {},
+    "maintain_revisions": true
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioFetchGlobalField
GlobalFieldfirst
+
Passed0.33s
+
✅ Test001_Should_Create_Global_Field
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsNotNull(globalField)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Tests.Model.GlobalFieldModel
+
+
+
+
IsNotNull(globalField.Modelling)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.ContentModelling
+
+
+
+
AreEqual(Title)
+
+
Expected:
First
+
Actual:
First
+
+
+
+
AreEqual(Uid)
+
+
Expected:
first
+
Actual:
first
+
+
+
+
AreEqual(SchemaCount)
+
+
Expected:
2
+
Actual:
2
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/global_fields
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 459
+Content-Type: application/json
+
Request Body
{"global_field": {"title":"First","uid":"first","schema":[{"display_name":"Name","uid":"name","data_type":"text","multiple":false,"mandatory":false,"unique":false},{"display_name":"Rich text editor","uid":"description","data_type":"text","field_metadata":{"allow_rich_text":true,"description":"","multiline":false,"rich_text_type":"advanced","options":[],"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/global_fields' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 459' \
+  -H 'Content-Type: application/json' \
+  -d '{"global_field": {"title":"First","uid":"first","schema":[{"display_name":"Name","uid":"name","data_type":"text","multiple":false,"mandatory":false,"unique":false},{"display_name":"Rich text editor","uid":"description","data_type":"text","field_metadata":{"allow_rich_text":true,"description":"","multiline":false,"rich_text_type":"advanced","options":[],"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}]}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:17 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+api_version: 3.2
+x-contentstack-organization: blt8d282118e2094bb8
+X-Request-ID: eab07c8f-50e0-4aa3-9bf4-0f9a14442fea
+x-runtime: 216
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 691
+
Response Body +
{
+  "notice": "Global Field created successfully.",
+  "global_field": {
+    "title": "First",
+    "uid": "first",
+    "description": "",
+    "schema": [
+      {
+        "display_name": "Name",
+        "uid": "name",
+        "data_type": "text",
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "display_name": "Rich text editor",
+        "uid": "description",
+        "data_type": "text",
+        "field_metadata": {
+          "allow_rich_text": true,
+          "description": "",
+          "multiline": false,
+          "rich_text_type": "advanced",
+          "options": [],
+          "version": 3
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      }
+    ],
+    "created_at": "2026-03-13T02:34:17.338Z",
+    "updated_at": "2026-03-13T02:34:17.338Z",
+    "_version": 1,
+    "inbuilt_class": false,
+    "last_activity": {},
+    "maintain_revisions": true
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioCreateGlobalField
GlobalFieldfirst
+
Passed0.59s
+
✅ Test007_Should_Query_Async_Global_Field
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsNotNull(globalField)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Tests.Model.GlobalFieldsModel
+
+
+
+
IsNotNull(globalField.Modellings)
+
+
Expected:
NotNull
+
Actual:
System.Collections.Generic.List`1[Contentstack.Management.Core.Models.ContentModelling]
+
+
+
+
AreEqual(ModellingsCount)
+
+
Expected:
1
+
Actual:
1
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/global_fields
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/global_fields' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:20 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+surrogate-key: blt1bca31da998b57a9.global_fields
+api_version: 3.2
+x-contentstack-organization: blt8d282118e2094bb8
+X-Request-ID: d2ad04a0-4e82-4214-ab30-272af7c71ca9
+x-runtime: 21
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 654
+
Response Body +
{
+  "global_fields": [
+    {
+      "title": "First Async",
+      "uid": "first",
+      "description": "",
+      "schema": [
+        {
+          "display_name": "Name",
+          "uid": "name",
+          "data_type": "text",
+          "multiple": false,
+          "mandatory": false,
+          "unique": false,
+          "non_localizable": false
+        },
+        {
+          "display_name": "Rich text editor",
+          "uid": "description",
+          "data_type": "text",
+          "field_metadata": {
+            "allow_rich_text": true,
+            "description": "",
+            "multiline": false,
+            "rich_text_type": "advanced",
+            "options": [],
+            "version": 3
+          },
+          "multiple": false,
+          "mandatory": false,
+          "unique": false,
+          "non_localizable": false
+        }
+      ],
+      "created_at": "2026-03-13T02:34:17.338Z",
+      "updated_at": "2026-03-13T02:34:18.864Z",
+      "_version": 3,
+      "inbuilt_class": false,
+      "last_activity": {},
+      "maintain_revisions": true
+    }
+  ]
+}
+
+ Test Context + + + + +
TestScenarioQueryAsyncGlobalField
+
Passed0.30s
+
✅ Test003_Should_Fetch_Async_Global_Field
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsNotNull(globalField)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Tests.Model.GlobalFieldModel
+
+
+
+
IsNotNull(globalField.Modelling)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.ContentModelling
+
+
+
+
AreEqual(Title)
+
+
Expected:
First
+
Actual:
First
+
+
+
+
AreEqual(Uid)
+
+
Expected:
first
+
Actual:
first
+
+
+
+
AreEqual(SchemaCount)
+
+
Expected:
2
+
Actual:
2
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/global_fields/first
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/global_fields/first' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:18 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+surrogate-key: blt1bca31da998b57a9.global_fields blt1bca31da998b57a9.global_fields.first
+api_version: 3.2
+x-contentstack-organization: blt8d282118e2094bb8
+X-Request-ID: eaef4c8c-1310-4372-b306-20b1df3ab393
+x-runtime: 38
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 645
+
Response Body +
{
+  "global_field": {
+    "title": "First",
+    "uid": "first",
+    "description": "",
+    "schema": [
+      {
+        "display_name": "Name",
+        "uid": "name",
+        "data_type": "text",
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "display_name": "Rich text editor",
+        "uid": "description",
+        "data_type": "text",
+        "field_metadata": {
+          "allow_rich_text": true,
+          "description": "",
+          "multiline": false,
+          "rich_text_type": "advanced",
+          "options": [],
+          "version": 3
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      }
+    ],
+    "created_at": "2026-03-13T02:34:17.338Z",
+    "updated_at": "2026-03-13T02:34:17.338Z",
+    "_version": 1,
+    "inbuilt_class": false,
+    "last_activity": {},
+    "maintain_revisions": true
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioFetchAsyncGlobalField
GlobalFieldfirst
+
Passed0.34s
+
✅ Test007a_Should_Query_Async_Global_Field_With_ApiVersion
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsNotNull(globalField)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Tests.Model.GlobalFieldsModel
+
+
+
+
IsNotNull(globalField.Modellings)
+
+
Expected:
NotNull
+
Actual:
System.Collections.Generic.List`1[Contentstack.Management.Core.Models.ContentModelling]
+
+
+
+
AreEqual(ModellingsCount)
+
+
Expected:
1
+
Actual:
1
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/global_fields
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+api_version: 3.2
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/global_fields' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'api_version: 3.2' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:20 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+surrogate-key: blt1bca31da998b57a9.global_fields
+api_version: 3.2
+x-contentstack-organization: blt8d282118e2094bb8
+X-Request-ID: bcc64c43-861d-4d6b-b24f-c5bc4208c67d
+x-runtime: 18
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 654
+
Response Body +
{
+  "global_fields": [
+    {
+      "title": "First Async",
+      "uid": "first",
+      "description": "",
+      "schema": [
+        {
+          "display_name": "Name",
+          "uid": "name",
+          "data_type": "text",
+          "multiple": false,
+          "mandatory": false,
+          "unique": false,
+          "non_localizable": false
+        },
+        {
+          "display_name": "Rich text editor",
+          "uid": "description",
+          "data_type": "text",
+          "field_metadata": {
+            "allow_rich_text": true,
+            "description": "",
+            "multiline": false,
+            "rich_text_type": "advanced",
+            "options": [],
+            "version": 3
+          },
+          "multiple": false,
+          "mandatory": false,
+          "unique": false,
+          "non_localizable": false
+        }
+      ],
+      "created_at": "2026-03-13T02:34:17.338Z",
+      "updated_at": "2026-03-13T02:34:18.864Z",
+      "_version": 3,
+      "inbuilt_class": false,
+      "last_activity": {},
+      "maintain_revisions": true
+    }
+  ]
+}
+
+ Test Context + + + + +
TestScenarioQueryAsyncGlobalFieldWithApiVersion
+
Passed0.30s
+
✅ Test006_Should_Query_Global_Field
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsNotNull(globalField)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Tests.Model.GlobalFieldsModel
+
+
+
+
IsNotNull(globalField.Modellings)
+
+
Expected:
NotNull
+
Actual:
System.Collections.Generic.List`1[Contentstack.Management.Core.Models.ContentModelling]
+
+
+
+
AreEqual(ModellingsCount)
+
+
Expected:
1
+
Actual:
1
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/global_fields
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/global_fields' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:19 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+surrogate-key: blt1bca31da998b57a9.global_fields
+api_version: 3.2
+x-contentstack-organization: blt8d282118e2094bb8
+X-Request-ID: 865c4dad-42cf-4655-8a39-d3785a44a03b
+x-runtime: 18
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 654
+
Response Body +
{
+  "global_fields": [
+    {
+      "title": "First Async",
+      "uid": "first",
+      "description": "",
+      "schema": [
+        {
+          "display_name": "Name",
+          "uid": "name",
+          "data_type": "text",
+          "multiple": false,
+          "mandatory": false,
+          "unique": false,
+          "non_localizable": false
+        },
+        {
+          "display_name": "Rich text editor",
+          "uid": "description",
+          "data_type": "text",
+          "field_metadata": {
+            "allow_rich_text": true,
+            "description": "",
+            "multiline": false,
+            "rich_text_type": "advanced",
+            "options": [],
+            "version": 3
+          },
+          "multiple": false,
+          "mandatory": false,
+          "unique": false,
+          "non_localizable": false
+        }
+      ],
+      "created_at": "2026-03-13T02:34:17.338Z",
+      "updated_at": "2026-03-13T02:34:18.864Z",
+      "_version": 3,
+      "inbuilt_class": false,
+      "last_activity": {},
+      "maintain_revisions": true
+    }
+  ]
+}
+
+ Test Context + + + + +
TestScenarioQueryGlobalField
+
Passed0.49s
+
✅ Test006a_Should_Query_Global_Field_With_ApiVersion
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsNotNull(globalField)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Tests.Model.GlobalFieldsModel
+
+
+
+
IsNotNull(globalField.Modellings)
+
+
Expected:
NotNull
+
Actual:
System.Collections.Generic.List`1[Contentstack.Management.Core.Models.ContentModelling]
+
+
+
+
AreEqual(ModellingsCount)
+
+
Expected:
1
+
Actual:
1
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/global_fields
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+api_version: 3.2
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/global_fields' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'api_version: 3.2' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:19 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+surrogate-key: blt1bca31da998b57a9.global_fields
+api_version: 3.2
+x-contentstack-organization: blt8d282118e2094bb8
+X-Request-ID: 1cf6c7d8-1281-43e4-921e-a73619340a9e
+x-runtime: 21
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 654
+
Response Body +
{
+  "global_fields": [
+    {
+      "title": "First Async",
+      "uid": "first",
+      "description": "",
+      "schema": [
+        {
+          "display_name": "Name",
+          "uid": "name",
+          "data_type": "text",
+          "multiple": false,
+          "mandatory": false,
+          "unique": false,
+          "non_localizable": false
+        },
+        {
+          "display_name": "Rich text editor",
+          "uid": "description",
+          "data_type": "text",
+          "field_metadata": {
+            "allow_rich_text": true,
+            "description": "",
+            "multiline": false,
+            "rich_text_type": "advanced",
+            "options": [],
+            "version": 3
+          },
+          "multiple": false,
+          "mandatory": false,
+          "unique": false,
+          "non_localizable": false
+        }
+      ],
+      "created_at": "2026-03-13T02:34:17.338Z",
+      "updated_at": "2026-03-13T02:34:18.864Z",
+      "_version": 3,
+      "inbuilt_class": false,
+      "last_activity": {},
+      "maintain_revisions": true
+    }
+  ]
+}
+
+ Test Context + + + + +
TestScenarioQueryGlobalFieldWithApiVersion
+
Passed0.35s
+
✅ Test005_Should_Update_Async_Global_Field
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsNotNull(globalField)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Tests.Model.GlobalFieldModel
+
+
+
+
IsNotNull(globalField.Modelling)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.ContentModelling
+
+
+
+
AreEqual(Title)
+
+
Expected:
First Async
+
Actual:
First Async
+
+
+
+
AreEqual(Uid)
+
+
Expected:
first
+
Actual:
first
+
+
+
+
AreEqual(SchemaCount)
+
+
Expected:
2
+
Actual:
2
+
+

HTTP Transactions

+
+ +
PUThttps://api.contentstack.io/v3/global_fields/first
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 465
+Content-Type: application/json
+
Request Body
{"global_field": {"title":"First Async","uid":"first","schema":[{"display_name":"Name","uid":"name","data_type":"text","multiple":false,"mandatory":false,"unique":false},{"display_name":"Rich text editor","uid":"description","data_type":"text","field_metadata":{"allow_rich_text":true,"description":"","multiline":false,"rich_text_type":"advanced","options":[],"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}]}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/global_fields/first' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 465' \
+  -H 'Content-Type: application/json' \
+  -d '{"global_field": {"title":"First Async","uid":"first","schema":[{"display_name":"Name","uid":"name","data_type":"text","multiple":false,"mandatory":false,"unique":false},{"display_name":"Rich text editor","uid":"description","data_type":"text","field_metadata":{"allow_rich_text":true,"description":"","multiline":false,"rich_text_type":"advanced","options":[],"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}]}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:18 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+api_version: 3.2
+x-contentstack-organization: blt8d282118e2094bb8
+X-Request-ID: a6345a41-0dce-4d58-9bb6-d8f95ba9bb2f
+x-runtime: 38
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 697
+
Response Body +
{
+  "notice": "Global Field updated successfully.",
+  "global_field": {
+    "title": "First Async",
+    "uid": "first",
+    "description": "",
+    "schema": [
+      {
+        "display_name": "Name",
+        "uid": "name",
+        "data_type": "text",
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "display_name": "Rich text editor",
+        "uid": "description",
+        "data_type": "text",
+        "field_metadata": {
+          "allow_rich_text": true,
+          "description": "",
+          "multiline": false,
+          "rich_text_type": "advanced",
+          "options": [],
+          "version": 3
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      }
+    ],
+    "created_at": "2026-03-13T02:34:17.338Z",
+    "updated_at": "2026-03-13T02:34:18.864Z",
+    "_version": 3,
+    "inbuilt_class": false,
+    "last_activity": {},
+    "maintain_revisions": true
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioUpdateAsyncGlobalField
GlobalFieldfirst
+
Passed0.39s
+
+
+ +
+
+
+ + Contentstack004_ReleaseTest +
+
+ 22 passed · + 0 failed · + 0 skipped · + 22 total +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Test NameStatusDuration
+
✅ Test018_Should_Handle_Release_Not_Found_Async
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/releases/non_existent_release_uid_12345
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/releases/non_existent_release_uid_12345' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:13 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 458586ec-148b-4d81-bf82-ed712cf6ed09
+x-response-time: 23
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 95
+
Response Body +
{
+  "error_message": "Release does not exist.",
+  "error_code": 141,
+  "errors": {
+    "uid": [
+      "is not valid."
+    ]
+  }
+}
+
Passed0.30s
+
✅ Test006_Should_Fetch_Release_Async
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:52 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 2ba3a5a7-c88e-46f2-a504-3ed0a59dbea0
+x-response-time: 33
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 1",
+    "description": "Release created for .NET SDK integration testing (Number 1)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt9291650ea9629fd4",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:52.579Z",
+    "updated_at": "2026-03-13T02:33:52.579Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:52 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 81408948-8283-4f55-bbfd-e3a074571e99
+x-response-time: 34
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 2",
+    "description": "Release created for .NET SDK integration testing (Number 2)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt6dd1f2d09435f601",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:52.886Z",
+    "updated_at": "2026-03-13T02:33:52.886Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:53 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: e0266631-4c34-4b08-8add-205d1c3e90f5
+x-response-time: 33
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 3",
+    "description": "Release created for .NET SDK integration testing (Number 3)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt3054f2d2671039a0",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:53.195Z",
+    "updated_at": "2026-03-13T02:33:53.195Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:53 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 18c37670-27ac-435d-81f8-0ea14e7ac763
+x-response-time: 35
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 4",
+    "description": "Release created for .NET SDK integration testing (Number 4)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt799c72b9c29e34ad",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:53.504Z",
+    "updated_at": "2026-03-13T02:33:53.504Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:53 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 3d36ced3-30e1-4623-bf64-3e5fe4f08bd3
+x-response-time: 149
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 5",
+    "description": "Release created for .NET SDK integration testing (Number 5)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt571520303dfd9ef9",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:53.929Z",
+    "updated_at": "2026-03-13T02:33:53.929Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:54 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 4cef4653-bd76-4eef-addf-f5c56f066ff6
+x-response-time: 38
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 6",
+    "description": "Release created for .NET SDK integration testing (Number 6)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt14254daaebcec84d",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:54.234Z",
+    "updated_at": "2026-03-13T02:33:54.234Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/releases/blt571520303dfd9ef9
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/releases/blt571520303dfd9ef9' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:54 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 5fb9a512-d7eb-4251-87d6-946e897e4d37
+x-response-time: 20
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 391
+
Response Body +
{
+  "release": {
+    "name": "DotNet SDK Integration Test Release 5",
+    "description": "Release created for .NET SDK integration testing (Number 5)",
+    "locked": false,
+    "uid": "blt571520303dfd9ef9",
+    "items": [],
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:53.929Z",
+    "updated_at": "2026-03-13T02:33:53.929Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "_deploy_latest": false
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt9291650ea9629fd4
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt9291650ea9629fd4' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:54 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: d39f80ce-0499-4563-b60c-23289ae0d97b
+x-response-time: 45
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt6dd1f2d09435f601
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt6dd1f2d09435f601' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:55 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 4cde3267-2338-42f8-bf5d-9b8afdaf689f
+x-response-time: 37
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt3054f2d2671039a0
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt3054f2d2671039a0' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:55 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 26e828f8-ca39-44e6-bbd7-27b22abd57b4
+x-response-time: 40
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt799c72b9c29e34ad
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt799c72b9c29e34ad' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:55 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 0b5b0a9d-32a5-45f5-b796-db041352fd98
+x-response-time: 35
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt571520303dfd9ef9
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt571520303dfd9ef9' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:56 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: db928282-bafe-4a0e-a599-d5481e8dc1d1
+x-response-time: 45
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt14254daaebcec84d
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt14254daaebcec84d' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:56 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 8ce7e205-1457-4036-97e5-1c8b4e10cae0
+x-response-time: 41
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
Passed4.28s
+
✅ Test008_Should_Update_Release_Async
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 156
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 156' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:57 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 89e5784e-c866-4ec2-99b5-c43d8f0e44cc
+x-response-time: 35
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 472
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release",
+    "description": "Release created for .NET SDK integration testing",
+    "locked": false,
+    "archived": false,
+    "uid": "blt4f27e99ff9e341a7",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:57.805Z",
+    "updated_at": "2026-03-13T02:33:57.805Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
PUThttps://api.contentstack.io/v3/releases/blt4f27e99ff9e341a7
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 186
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release Updated Async","description":"Release created for .NET SDK integration testing (Updated Async)","locked":false,"archived":false}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/releases/blt4f27e99ff9e341a7' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 186' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release Updated Async","description":"Release created for .NET SDK integration testing (Updated Async)","locked":false,"archived":false}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:58 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 45c6f347-442f-4b81-9e14-cef4de2c6166
+x-response-time: 33
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 434
+
Response Body +
{
+  "notice": "Release updated successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release Updated Async",
+    "description": "Release created for .NET SDK integration testing (Updated Async)",
+    "locked": false,
+    "uid": "blt4f27e99ff9e341a7",
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:57.805Z",
+    "updated_at": "2026-03-13T02:33:58.188Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt4f27e99ff9e341a7
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt4f27e99ff9e341a7' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:58 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 69744904-5643-4478-ac8a-25cc05b96c52
+x-response-time: 47
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
Passed1.01s
+
✅ Test020_Should_Delete_Release_Async
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 197
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release For Deletion Async","description":"Release created for .NET SDK integration testing (To be deleted async)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 197' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release For Deletion Async","description":"Release created for .NET SDK integration testing (To be deleted async)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:14 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: d7866d4d-3ca0-4db3-b8b4-5aa1791ff100
+x-response-time: 41
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 513
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release For Deletion Async",
+    "description": "Release created for .NET SDK integration testing (To be deleted async)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt60ea988ef42b0256",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:14.691Z",
+    "updated_at": "2026-03-13T02:34:14.691Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt60ea988ef42b0256
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt60ea988ef42b0256' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:15 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 56db80d4-1e7a-4f2d-a6c6-fd37004672a0
+x-response-time: 41
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
Passed0.63s
+
✅ Test005_Should_Fetch_Release
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:48 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: e0501694-51cb-4e58-b906-b783e1f2b938
+x-response-time: 36
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 1",
+    "description": "Release created for .NET SDK integration testing (Number 1)",
+    "locked": false,
+    "archived": false,
+    "uid": "blta08e890c6dbdf585",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:48.326Z",
+    "updated_at": "2026-03-13T02:33:48.326Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:48 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 6e171a37-a91c-4278-a8e2-c51c57518a48
+x-response-time: 35
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 2",
+    "description": "Release created for .NET SDK integration testing (Number 2)",
+    "locked": false,
+    "archived": false,
+    "uid": "bltdb9128a53256d8e0",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:48.626Z",
+    "updated_at": "2026-03-13T02:33:48.626Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:48 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 1cb1f6c4-0046-4217-aeab-36ceb680ee5c
+x-response-time: 36
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 3",
+    "description": "Release created for .NET SDK integration testing (Number 3)",
+    "locked": false,
+    "archived": false,
+    "uid": "bltd9b09deb117ed76f",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:48.932Z",
+    "updated_at": "2026-03-13T02:33:48.932Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:49 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: f328cb0c-3822-46a9-9026-2052fb649d13
+x-response-time: 40
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 4",
+    "description": "Release created for .NET SDK integration testing (Number 4)",
+    "locked": false,
+    "archived": false,
+    "uid": "bltbb66ef53808fa4b7",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:49.237Z",
+    "updated_at": "2026-03-13T02:33:49.237Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:49 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 24959387-f347-4f72-92a3-419f8d09154e
+x-response-time: 109
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 5",
+    "description": "Release created for .NET SDK integration testing (Number 5)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt2c1102b1cc62ad71",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:49.626Z",
+    "updated_at": "2026-03-13T02:33:49.626Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:49 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 5ab12afc-5129-4609-bbef-2519b50e7b4f
+x-response-time: 44
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 6",
+    "description": "Release created for .NET SDK integration testing (Number 6)",
+    "locked": false,
+    "archived": false,
+    "uid": "bltba6f1db096411c83",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:49.940Z",
+    "updated_at": "2026-03-13T02:33:49.940Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/releases/bltd9b09deb117ed76f
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/releases/bltd9b09deb117ed76f' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:50 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: f72dff8f-3a91-4ea4-acc0-5790d3712591
+x-response-time: 27
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 391
+
Response Body +
{
+  "release": {
+    "name": "DotNet SDK Integration Test Release 3",
+    "description": "Release created for .NET SDK integration testing (Number 3)",
+    "locked": false,
+    "uid": "bltd9b09deb117ed76f",
+    "items": [],
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:48.932Z",
+    "updated_at": "2026-03-13T02:33:48.932Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "_deploy_latest": false
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blta08e890c6dbdf585
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blta08e890c6dbdf585' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:50 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: a68d73ab-a05a-490a-b19a-8305f1966427
+x-response-time: 223
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/bltdb9128a53256d8e0
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/bltdb9128a53256d8e0' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:51 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 0c6b0c60-6dc8-4a02-b9ae-345fca2e0d45
+x-response-time: 36
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/bltd9b09deb117ed76f
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/bltd9b09deb117ed76f' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:51 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: a037d8e7-8468-4523-88ea-30bc0646d98b
+x-response-time: 41
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/bltbb66ef53808fa4b7
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/bltbb66ef53808fa4b7' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:51 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: c58a6118-07f7-4c38-b1fd-a2ad3e2115eb
+x-response-time: 35
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt2c1102b1cc62ad71
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt2c1102b1cc62ad71' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:51 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: cec3c1b0-3487-4f43-8185-24ad98685360
+x-response-time: 45
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/bltba6f1db096411c83
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/bltba6f1db096411c83' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:52 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 7f1cf5cd-4180-4935-a25f-89abbca9a7f2
+x-response-time: 43
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
Passed4.26s
+
✅ Test022_Should_Delete_Release_Async_Without_Content_Type_Header
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 233
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release Delete Async Without Content-Type","description":"Release created for .NET SDK integration testing (Delete async without Content-Type header)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 233' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release Delete Async Without Content-Type","description":"Release created for .NET SDK integration testing (Delete async without Content-Type header)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:16 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 9a7ca23e-fa3a-4065-aef2-078c60253e1c
+x-response-time: 36
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 549
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release Delete Async Without Content-Type",
+    "description": "Release created for .NET SDK integration testing (Delete async without Content-Type header)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt568ebdd0a8c00d75",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:16.242Z",
+    "updated_at": "2026-03-13T02:34:16.242Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt568ebdd0a8c00d75
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt568ebdd0a8c00d75' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:16 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: b60b8c51-4734-4ab7-a3e8-1b20bc5f79ca
+x-response-time: 96
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
GEThttps://api.contentstack.io/v3/releases/blt568ebdd0a8c00d75
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/releases/blt568ebdd0a8c00d75' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:16 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 0b6f4529-7408-4539-aa3b-b03a11fac17a
+x-response-time: 29
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 95
+
Response Body +
{
+  "error_message": "Release does not exist.",
+  "error_code": 141,
+  "errors": {
+    "uid": [
+      "is not valid."
+    ]
+  }
+}
+
Passed0.98s
+
✅ Test011_Should_Query_Release_With_Parameters
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:01 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: ceffbca8-afb3-44c6-9432-e63a63ca5343
+x-response-time: 34
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 1",
+    "description": "Release created for .NET SDK integration testing (Number 1)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt663a37fb078107bf",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:01.369Z",
+    "updated_at": "2026-03-13T02:34:01.369Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:01 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 5f44f1fd-e9a1-4a98-b3e8-7ab5f010fcb3
+x-response-time: 37
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 2",
+    "description": "Release created for .NET SDK integration testing (Number 2)",
+    "locked": false,
+    "archived": false,
+    "uid": "bltc253439ececa2f22",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:01.688Z",
+    "updated_at": "2026-03-13T02:34:01.688Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:02 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 9db1ba90-e6f2-4442-a999-c312de22c8bb
+x-response-time: 43
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 3",
+    "description": "Release created for .NET SDK integration testing (Number 3)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt726470c6c2bb232c",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:02.022Z",
+    "updated_at": "2026-03-13T02:34:02.022Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:02 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: b962c590-d22e-4ae6-b482-50b6cd713bc2
+x-response-time: 111
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 4",
+    "description": "Release created for .NET SDK integration testing (Number 4)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt72513d1f0f925250",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:02.328Z",
+    "updated_at": "2026-03-13T02:34:02.328Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:02 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: f571c5cf-f4ea-4b97-966a-497d926c6145
+x-response-time: 58
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 5",
+    "description": "Release created for .NET SDK integration testing (Number 5)",
+    "locked": false,
+    "archived": false,
+    "uid": "bltb5a9d8d30cdd1628",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:02.711Z",
+    "updated_at": "2026-03-13T02:34:02.711Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:03 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: ea840b6a-eada-4c10-8144-f0c4694c6ffc
+x-response-time: 276
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 6",
+    "description": "Release created for .NET SDK integration testing (Number 6)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt9e2b5b0b77a6f80c",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:03.033Z",
+    "updated_at": "2026-03-13T02:34:03.033Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/releases?limit=5
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/releases?limit=5' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:03 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: f1d8aa53-7888-4be5-afb9-3bd81c7752df
+x-response-time: 44
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 1919
+
Response Body +
{
+  "releases": [
+    {
+      "name": "DotNet SDK Integration Test Release 6",
+      "description": "Release created for .NET SDK integration testing (Number 6)",
+      "locked": false,
+      "uid": "blt9e2b5b0b77a6f80c",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:34:03.033Z",
+      "updated_at": "2026-03-13T02:34:03.033Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    },
+    {
+      "name": "DotNet SDK Integration Test Release 5",
+      "description": "Release created for .NET SDK integration testing (Number 5)",
+      "locked": false,
+      "uid": "bltb5a9d8d30cdd1628",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:34:02.711Z",
+      "updated_at": "2026-03-13T02:34:02.711Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    },
+    {
+      "name": "DotNet SDK Integration Test Release 4",
+      "description": "Release created for .NET SDK integration testing (Number 4)",
+      "locked": false,
+      "uid": "blt72513d1f0f925250",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:34:02.328Z",
+      "updated_at": "2026-03-13T02:34:02.328Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    },
+    {
+      "name": "DotNet SDK Integration Test Release 3",
+      "description": "Release created for .NET SDK integration testing (Number 3)",
+      "locked": false,
+      "uid": "blt726470c6c2bb232c",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:34:02.022Z",
+      "updated_at": "2026-03-13T02:34:02.022Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    },
+    {
+      "name": "DotNet SDK Integration Test Release 2",
+      "description": "Release created for .NET SDK integration testing (Number 2)",
+      "locked": false,
+      "uid": "bltc253439ececa2f22",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:34:01.688Z",
+      "updated_at": "2026-03-13T02:34:01.688Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt663a37fb078107bf
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt663a37fb078107bf' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:03 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 6e77a8d2-8b73-4a82-b89a-22eb7fc0e064
+x-response-time: 45
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/bltc253439ececa2f22
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/bltc253439ececa2f22' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:04 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: e6b346c7-1d8f-4ac4-8fd8-7e6bc55fc2b1
+x-response-time: 40
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt726470c6c2bb232c
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt726470c6c2bb232c' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:04 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 306b8962-5687-4adb-a098-e0002ffb6563
+x-response-time: 34
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt72513d1f0f925250
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt72513d1f0f925250' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:04 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 83c2aad3-8e26-482c-b87b-8ca85577e71e
+x-response-time: 33
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/bltb5a9d8d30cdd1628
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/bltb5a9d8d30cdd1628' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:05 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 3e6107fb-296c-4a66-a308-46e4bd829438
+x-response-time: 38
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt9e2b5b0b77a6f80c
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt9e2b5b0b77a6f80c' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:05 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 5c5ff3e2-df89-4549-b572-2235bb6347b5
+x-response-time: 40
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
Passed4.37s
+
✅ Test019_Should_Delete_Release
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 185
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release For Deletion","description":"Release created for .NET SDK integration testing (To be deleted)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 185' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release For Deletion","description":"Release created for .NET SDK integration testing (To be deleted)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:14 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: d09f8f3d-79eb-445e-8742-16f332552fa3
+x-response-time: 33
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 501
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release For Deletion",
+    "description": "Release created for .NET SDK integration testing (To be deleted)",
+    "locked": false,
+    "archived": false,
+    "uid": "bltf16a3c42820c89b7",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:14.067Z",
+    "updated_at": "2026-03-13T02:34:14.067Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/bltf16a3c42820c89b7
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/bltf16a3c42820c89b7' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:14 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 28ddcacd-4806-4699-ae74-46dc345ae4b4
+x-response-time: 37
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
Passed0.62s
+
✅ Test002_Should_Create_Release_Async
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 156
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 156' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:38 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 7b87a6e6-6424-40b2-bf75-9f317239a5f7
+x-response-time: 42
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 472
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release",
+    "description": "Release created for .NET SDK integration testing",
+    "locked": false,
+    "archived": false,
+    "uid": "blt6a44a60f71864e22",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:38.917Z",
+    "updated_at": "2026-03-13T02:33:38.917Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/releases/blt6a44a60f71864e22
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/releases/blt6a44a60f71864e22' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:39 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: de72539e-a93a-4b92-8f86-bc9172ae3791
+x-response-time: 25
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 378
+
Response Body +
{
+  "release": {
+    "name": "DotNet SDK Integration Test Release",
+    "description": "Release created for .NET SDK integration testing",
+    "locked": false,
+    "uid": "blt6a44a60f71864e22",
+    "items": [],
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:38.917Z",
+    "updated_at": "2026-03-13T02:33:38.917Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "_deploy_latest": false
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt6a44a60f71864e22
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt6a44a60f71864e22' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:39 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 7f6e94be-35f7-4f27-b10a-d69d80cf7614
+x-response-time: 44
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
Passed0.95s
+
✅ Test016_Should_Get_Release_Items_Async
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 156
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 156' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:12 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 920df1d9-d89b-42cb-8e6a-e51ed9a20228
+x-response-time: 127
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 472
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release",
+    "description": "Release created for .NET SDK integration testing",
+    "locked": false,
+    "archived": false,
+    "uid": "bltc620d68865660fb6",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:12.528Z",
+    "updated_at": "2026-03-13T02:34:12.528Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/releases/bltc620d68865660fb6/items
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/releases/bltc620d68865660fb6/items' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:12 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 4f624059-ff4b-4fd0-bb55-84d7ce5490c8
+x-response-time: 28
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 12
+
Response Body +
{
+  "items": []
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/bltc620d68865660fb6
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/bltc620d68865660fb6' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:13 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 36aa81c4-46e4-4ab4-9ae4-3b96f23eca9a
+x-response-time: 41
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
Passed1.01s
+
✅ Test001_Should_Create_Release
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 156
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 156' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:38 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 49c82390-be00-40d8-bacd-4ff9a38ea321
+x-response-time: 120
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 472
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release",
+    "description": "Release created for .NET SDK integration testing",
+    "locked": false,
+    "archived": false,
+    "uid": "blt6bef0a6dc36fc482",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:37.926Z",
+    "updated_at": "2026-03-13T02:33:37.926Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/releases/blt6bef0a6dc36fc482
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/releases/blt6bef0a6dc36fc482' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:38 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 3d6c0bcb-7b0c-400a-ad97-87c0621c1719
+x-response-time: 21
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 378
+
Response Body +
{
+  "release": {
+    "name": "DotNet SDK Integration Test Release",
+    "description": "Release created for .NET SDK integration testing",
+    "locked": false,
+    "uid": "blt6bef0a6dc36fc482",
+    "items": [],
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:37.926Z",
+    "updated_at": "2026-03-13T02:33:37.926Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "_deploy_latest": false
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt6bef0a6dc36fc482
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt6bef0a6dc36fc482' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:38 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: c89dc8b6-d9b0-41e0-9865-882534730b7e
+x-response-time: 41
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
Passed0.99s
+
✅ Test004_Should_Query_All_Releases_Async
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:44 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 7c7e1308-cc3a-4147-a701-b3b215451f22
+x-response-time: 45
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 1",
+    "description": "Release created for .NET SDK integration testing (Number 1)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt85a94ddcba83c1ce",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:44.087Z",
+    "updated_at": "2026-03-13T02:33:44.087Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:44 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: baa924ee-5112-4af7-aeeb-e539467fcfca
+x-response-time: 32
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 2",
+    "description": "Release created for .NET SDK integration testing (Number 2)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt955bf2f232eb60b4",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:44.403Z",
+    "updated_at": "2026-03-13T02:33:44.403Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:44 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 58036fe5-de82-4ab5-a5b6-a977c4b21db1
+x-response-time: 45
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 3",
+    "description": "Release created for .NET SDK integration testing (Number 3)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt0d83445b0740a4a1",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:44.720Z",
+    "updated_at": "2026-03-13T02:33:44.720Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:45 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: a495f567-4658-4b07-9af6-26307b6040dc
+x-response-time: 33
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 4",
+    "description": "Release created for .NET SDK integration testing (Number 4)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt6717186ae89c2fca",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:45.021Z",
+    "updated_at": "2026-03-13T02:33:45.021Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:45 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 565cfe68-f3a8-48d9-bd79-5b6b46eab393
+x-response-time: 32
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 5",
+    "description": "Release created for .NET SDK integration testing (Number 5)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt1bffeda5fd47953f",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:45.312Z",
+    "updated_at": "2026-03-13T02:33:45.312Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:45 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 6ca85827-6fcf-453a-b7de-eb4c6abf8d4e
+x-response-time: 37
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 6",
+    "description": "Release created for .NET SDK integration testing (Number 6)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt8cd9af016e5679b2",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:45.612Z",
+    "updated_at": "2026-03-13T02:33:45.612Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:45 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 1d2b9e62-1f22-4f9d-9a42-899339bbdc6f
+x-response-time: 37
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 2300
+
Response Body +
{
+  "releases": [
+    {
+      "name": "DotNet SDK Integration Test Release 6",
+      "description": "Release created for .NET SDK integration testing (Number 6)",
+      "locked": false,
+      "uid": "blt8cd9af016e5679b2",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:33:45.612Z",
+      "updated_at": "2026-03-13T02:33:45.612Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    },
+    {
+      "name": "DotNet SDK Integration Test Release 5",
+      "description": "Release created for .NET SDK integration testing (Number 5)",
+      "locked": false,
+      "uid": "blt1bffeda5fd47953f",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:33:45.312Z",
+      "updated_at": "2026-03-13T02:33:45.312Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    },
+    {
+      "name": "DotNet SDK Integration Test Release 4",
+      "description": "Release created for .NET SDK integration testing (Number 4)",
+      "locked": false,
+      "uid": "blt6717186ae89c2fca",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:33:45.021Z",
+      "updated_at": "2026-03-13T02:33:45.021Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    },
+    {
+      "name": "DotNet SDK Integration Test Release 3",
+      "description": "Release created for .NET SDK integration testing (Number 3)",
+      "locked": false,
+      "uid": "blt0d83445b0740a4a1",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:33:44.720Z",
+      "updated_at": "2026-03-13T02:33:44.720Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    },
+    {
+      "name": "DotNet SDK Integration Test Release 2",
+      "description": "Release created for .NET SDK integration testing (Number 2)",
+      "locked": false,
+      "uid": "blt955bf2f232eb60b4",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:33:44.403Z",
+      "updated_at": "2026-03-13T02:33:44.403Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    },
+    {
+      "name": "DotNet SDK Integration Test Release 1",
+      "description": "Release created for .NET SDK integration testing (Number 1)",
+      "locked": false,
+      "uid": "blt85a94ddcba83c1ce",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:33:44.087Z",
+      "updated_at": "2026-03-13T02:33:44.087Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt85a94ddcba83c1ce
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt85a94ddcba83c1ce' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:46 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: d7758ca9-89fd-4afa-8a32-0bcb4e058b7b
+x-response-time: 33
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt955bf2f232eb60b4
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt955bf2f232eb60b4' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:46 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 7a9f4e5a-7b38-4aa2-8c06-9c309518dbec
+x-response-time: 41
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt0d83445b0740a4a1
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt0d83445b0740a4a1' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:46 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: e8015c26-4eb7-41e2-ac28-ac533e371efa
+x-response-time: 39
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt6717186ae89c2fca
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt6717186ae89c2fca' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:47 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 04aed9c9-7864-45a0-a2b3-6b907249c878
+x-response-time: 34
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt1bffeda5fd47953f
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt1bffeda5fd47953f' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:47 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 7b1902a7-68c8-4c97-9cba-57c6cf0be0a0
+x-response-time: 191
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt8cd9af016e5679b2
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt8cd9af016e5679b2' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:48 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 92c2582d-4054-952d-969c-090685efe81c
+x-response-time: 118
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
Passed4.25s
+
✅ Test021_Should_Delete_Release_Without_Content_Type_Header
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 221
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release Delete Without Content-Type","description":"Release created for .NET SDK integration testing (Delete without Content-Type header)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 221' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release Delete Without Content-Type","description":"Release created for .NET SDK integration testing (Delete without Content-Type header)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:15 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 5b002f9e-44dd-49c4-960c-710c3dcb8e44
+x-response-time: 32
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 537
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release Delete Without Content-Type",
+    "description": "Release created for .NET SDK integration testing (Delete without Content-Type header)",
+    "locked": false,
+    "archived": false,
+    "uid": "bltea6bb1d95b3b84d8",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:15.313Z",
+    "updated_at": "2026-03-13T02:34:15.313Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/bltea6bb1d95b3b84d8
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/bltea6bb1d95b3b84d8' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:15 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 16a5b670-e5d5-4a9f-b15f-a9d692a280ca
+x-response-time: 33
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
GEThttps://api.contentstack.io/v3/releases/bltea6bb1d95b3b84d8
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/releases/bltea6bb1d95b3b84d8' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:15 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: ce2b081e-fd93-43c1-acbe-500d3f3d3cff
+x-response-time: 25
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 95
+
Response Body +
{
+  "error_message": "Release does not exist.",
+  "error_code": 141,
+  "errors": {
+    "uid": [
+      "is not valid."
+    ]
+  }
+}
+
Passed0.93s
+
✅ Test017_Should_Handle_Release_Not_Found
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/releases/non_existent_release_uid_12345
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/releases/non_existent_release_uid_12345' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:13 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 978f369e-9607-4a23-a0c3-446e492cead4
+x-response-time: 18
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 95
+
Response Body +
{
+  "error_message": "Release does not exist.",
+  "error_code": 141,
+  "errors": {
+    "uid": [
+      "is not valid."
+    ]
+  }
+}
+
Passed0.31s
+
✅ Test014_Should_Create_Release_With_ParameterCollection_Async
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/releases?include_count=true
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 198
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release With Params Async","description":"Release created for .NET SDK integration testing (With Parameters Async)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases?include_count=true' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 198' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release With Params Async","description":"Release created for .NET SDK integration testing (With Parameters Async)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:10 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 7d1aeae4-76db-4eb7-ac06-addce888ae24
+x-response-time: 33
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 514
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release With Params Async",
+    "description": "Release created for .NET SDK integration testing (With Parameters Async)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt6f326a40f2db0303",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:10.664Z",
+    "updated_at": "2026-03-13T02:34:10.664Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt6f326a40f2db0303
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt6f326a40f2db0303' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:11 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 8334f461-8bf1-4429-a918-4544a4b8807c
+x-response-time: 43
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
Passed0.71s
+
✅ Test015_Should_Get_Release_Items
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 156
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 156' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:11 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: ab5232b5-844f-48db-86b5-0268f88050cc
+x-response-time: 37
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 472
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release",
+    "description": "Release created for .NET SDK integration testing",
+    "locked": false,
+    "archived": false,
+    "uid": "blte0a4f7b6fd4a97d6",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:11.343Z",
+    "updated_at": "2026-03-13T02:34:11.343Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/releases/blte0a4f7b6fd4a97d6/items
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/releases/blte0a4f7b6fd4a97d6/items' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:11 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 95e418fb-5f31-47cf-81b8-325b91f8a69b
+x-response-time: 138
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 12
+
Response Body +
{
+  "items": []
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blte0a4f7b6fd4a97d6
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blte0a4f7b6fd4a97d6' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:12 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 2718416a-0d6d-44f5-a0e1-63df21ebdd17
+x-response-time: 46
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
Passed1.08s
+
✅ Test012_Should_Query_Release_With_Parameters_Async
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:05 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: c2c0e914-c6a8-4782-99f8-f15dadb73c48
+x-response-time: 44
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 1",
+    "description": "Release created for .NET SDK integration testing (Number 1)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt773f5b263e9657e4",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:05.752Z",
+    "updated_at": "2026-03-13T02:34:05.752Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:06 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: fbd44b27-257b-4a35-a77c-765b767eadf5
+x-response-time: 41
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 2",
+    "description": "Release created for .NET SDK integration testing (Number 2)",
+    "locked": false,
+    "archived": false,
+    "uid": "bltfae026db5af12d0a",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:06.057Z",
+    "updated_at": "2026-03-13T02:34:06.057Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:06 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 56f10182-caf2-4000-9aa4-e9f640652640
+x-response-time: 30
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 3",
+    "description": "Release created for .NET SDK integration testing (Number 3)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt5e154776b5ba2034",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:06.360Z",
+    "updated_at": "2026-03-13T02:34:06.360Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:06 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 0f311bbc-4367-4c88-a95e-e4f6c2d35150
+x-response-time: 45
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 4",
+    "description": "Release created for .NET SDK integration testing (Number 4)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt8af4f206fe64912e",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:06.674Z",
+    "updated_at": "2026-03-13T02:34:06.674Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:07 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: fba7207f-c0bb-4eef-8e23-db80434fce2f
+x-response-time: 102
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 5",
+    "description": "Release created for .NET SDK integration testing (Number 5)",
+    "locked": false,
+    "archived": false,
+    "uid": "bltea169ae8cdd68b66",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:07.030Z",
+    "updated_at": "2026-03-13T02:34:07.030Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:07 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 3261485f-0558-4d4d-ab16-d9c25d155064
+x-response-time: 33
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 6",
+    "description": "Release created for .NET SDK integration testing (Number 6)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt326713324f192f4c",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:07.349Z",
+    "updated_at": "2026-03-13T02:34:07.349Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/releases?limit=5
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/releases?limit=5' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:07 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 7d3c4f81-8729-480a-82b6-7324e43a3f67
+x-response-time: 35
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 1919
+
Response Body +
{
+  "releases": [
+    {
+      "name": "DotNet SDK Integration Test Release 6",
+      "description": "Release created for .NET SDK integration testing (Number 6)",
+      "locked": false,
+      "uid": "blt326713324f192f4c",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:34:07.349Z",
+      "updated_at": "2026-03-13T02:34:07.349Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    },
+    {
+      "name": "DotNet SDK Integration Test Release 5",
+      "description": "Release created for .NET SDK integration testing (Number 5)",
+      "locked": false,
+      "uid": "bltea169ae8cdd68b66",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:34:07.030Z",
+      "updated_at": "2026-03-13T02:34:07.030Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    },
+    {
+      "name": "DotNet SDK Integration Test Release 4",
+      "description": "Release created for .NET SDK integration testing (Number 4)",
+      "locked": false,
+      "uid": "blt8af4f206fe64912e",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:34:06.674Z",
+      "updated_at": "2026-03-13T02:34:06.674Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    },
+    {
+      "name": "DotNet SDK Integration Test Release 3",
+      "description": "Release created for .NET SDK integration testing (Number 3)",
+      "locked": false,
+      "uid": "blt5e154776b5ba2034",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:34:06.360Z",
+      "updated_at": "2026-03-13T02:34:06.360Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    },
+    {
+      "name": "DotNet SDK Integration Test Release 2",
+      "description": "Release created for .NET SDK integration testing (Number 2)",
+      "locked": false,
+      "uid": "bltfae026db5af12d0a",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:34:06.057Z",
+      "updated_at": "2026-03-13T02:34:06.057Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt773f5b263e9657e4
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt773f5b263e9657e4' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:07 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 8b8bd811-cb60-4ed9-96f6-053fbbb61a2d
+x-response-time: 32
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/bltfae026db5af12d0a
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/bltfae026db5af12d0a' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:08 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: f1d0ac1a-75de-49e8-9ce9-1677d4934ad2
+x-response-time: 33
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt5e154776b5ba2034
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt5e154776b5ba2034' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:08 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 1c8a84ac-e72f-448a-90b9-fc41b26568a8
+x-response-time: 34
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt8af4f206fe64912e
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt8af4f206fe64912e' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:08 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: fed78337-df83-4242-b68e-39c84e8f2282
+x-response-time: 40
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/bltea169ae8cdd68b66
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/bltea169ae8cdd68b66' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:09 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 8ca56fa1-a0fa-4692-8a06-6adb97e33ba4
+x-response-time: 42
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt326713324f192f4c
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt326713324f192f4c' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:09 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 22659e7b-374e-4c14-bbd2-1401a31106ea
+x-response-time: 45
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
Passed4.19s
+
✅ Test009_Should_Clone_Release
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 156
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 156' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:58 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: ff497a1a-144d-4f71-90b2-4fb2b5e02fe2
+x-response-time: 46
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 472
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release",
+    "description": "Release created for .NET SDK integration testing",
+    "locked": false,
+    "archived": false,
+    "uid": "blte29359c369ea9cdd",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:58.829Z",
+    "updated_at": "2026-03-13T02:33:58.829Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases/blte29359c369ea9cdd/clone
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 140
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release Cloned","desctiption":"Release created for .NET SDK integration testing (Cloned)"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases/blte29359c369ea9cdd/clone' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 140' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release Cloned","desctiption":"Release created for .NET SDK integration testing (Cloned)"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:59 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 1ebbcde2-be5e-4a1f-9842-0399258b60dc
+x-response-time: 46
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 470
+
Response Body +
{
+  "notice": "Release cloned successfully.",
+  "release": {
+    "uid": "bltaf66bb91539973a8",
+    "name": "DotNet SDK Integration Test Release Cloned",
+    "desctiption": "Release created for .NET SDK integration testing (Cloned)",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "locked": false,
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:59.163Z",
+    "updated_at": "2026-03-13T02:33:59.163Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/bltaf66bb91539973a8
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/bltaf66bb91539973a8' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:59 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: ddd5d932-05a9-4e0c-b224-189119cfa574
+x-response-time: 40
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blte29359c369ea9cdd
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blte29359c369ea9cdd' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:59 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: a7323cd3-2576-4efa-b8e9-c5cdd1568d96
+x-response-time: 34
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
Passed1.32s
+
✅ Test003_Should_Query_All_Releases
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:39 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 7f9fdafa-ed3c-4892-8c18-704155ce5a3d
+x-response-time: 41
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 1",
+    "description": "Release created for .NET SDK integration testing (Number 1)",
+    "locked": false,
+    "archived": false,
+    "uid": "bltb1af7a87357ab7f2",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:39.871Z",
+    "updated_at": "2026-03-13T02:33:39.871Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:40 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 3e12b168-eb5a-4f42-b0b8-26e5ceebb7cf
+x-response-time: 60
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 2",
+    "description": "Release created for .NET SDK integration testing (Number 2)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt2f7dc91f7c58e9d8",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:40.185Z",
+    "updated_at": "2026-03-13T02:33:40.185Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:40 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 5c4994e5-ec65-4474-bf30-233cd93de57f
+x-response-time: 40
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 3",
+    "description": "Release created for .NET SDK integration testing (Number 3)",
+    "locked": false,
+    "archived": false,
+    "uid": "bltf6e7f1b80423a779",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:40.504Z",
+    "updated_at": "2026-03-13T02:33:40.504Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:40 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 63de0d21-4e1c-42d2-bd6a-803d0097de15
+x-response-time: 41
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 4",
+    "description": "Release created for .NET SDK integration testing (Number 4)",
+    "locked": false,
+    "archived": false,
+    "uid": "blt9eaf1a97a694ea39",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:40.811Z",
+    "updated_at": "2026-03-13T02:33:40.811Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:41 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 07fa7806-4123-4407-8c9e-d2aea565fb36
+x-response-time: 38
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 5",
+    "description": "Release created for .NET SDK integration testing (Number 5)",
+    "locked": false,
+    "archived": false,
+    "uid": "bltfb0b88efec17af85",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:41.117Z",
+    "updated_at": "2026-03-13T02:33:41.117Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 169
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 169' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:41 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 8ff490bd-26d7-4532-91fb-619d655718ec
+x-response-time: 35
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 485
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release 6",
+    "description": "Release created for .NET SDK integration testing (Number 6)",
+    "locked": false,
+    "archived": false,
+    "uid": "bltd98a67d51cbeae87",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:41.423Z",
+    "updated_at": "2026-03-13T02:33:41.423Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:41 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 455bcfa4-49e4-486e-b256-cdc9749485c6
+x-response-time: 39
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 2300
+
Response Body +
{
+  "releases": [
+    {
+      "name": "DotNet SDK Integration Test Release 6",
+      "description": "Release created for .NET SDK integration testing (Number 6)",
+      "locked": false,
+      "uid": "bltd98a67d51cbeae87",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:33:41.423Z",
+      "updated_at": "2026-03-13T02:33:41.423Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    },
+    {
+      "name": "DotNet SDK Integration Test Release 5",
+      "description": "Release created for .NET SDK integration testing (Number 5)",
+      "locked": false,
+      "uid": "bltfb0b88efec17af85",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:33:41.117Z",
+      "updated_at": "2026-03-13T02:33:41.117Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    },
+    {
+      "name": "DotNet SDK Integration Test Release 4",
+      "description": "Release created for .NET SDK integration testing (Number 4)",
+      "locked": false,
+      "uid": "blt9eaf1a97a694ea39",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:33:40.811Z",
+      "updated_at": "2026-03-13T02:33:40.811Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    },
+    {
+      "name": "DotNet SDK Integration Test Release 3",
+      "description": "Release created for .NET SDK integration testing (Number 3)",
+      "locked": false,
+      "uid": "bltf6e7f1b80423a779",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:33:40.504Z",
+      "updated_at": "2026-03-13T02:33:40.504Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    },
+    {
+      "name": "DotNet SDK Integration Test Release 2",
+      "description": "Release created for .NET SDK integration testing (Number 2)",
+      "locked": false,
+      "uid": "blt2f7dc91f7c58e9d8",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:33:40.185Z",
+      "updated_at": "2026-03-13T02:33:40.185Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    },
+    {
+      "name": "DotNet SDK Integration Test Release 1",
+      "description": "Release created for .NET SDK integration testing (Number 1)",
+      "locked": false,
+      "uid": "bltb1af7a87357ab7f2",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:33:39.871Z",
+      "updated_at": "2026-03-13T02:33:39.871Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/bltb1af7a87357ab7f2
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/bltb1af7a87357ab7f2' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:42 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: debf5dae-5af2-4546-b9e7-068137f378e1
+x-response-time: 187
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt2f7dc91f7c58e9d8
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt2f7dc91f7c58e9d8' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:42 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 618e6c07-bb33-485c-83bf-368334256766
+x-response-time: 43
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/bltf6e7f1b80423a779
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/bltf6e7f1b80423a779' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:42 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 71f4515c-5966-4d5a-90b2-d386890786a0
+x-response-time: 39
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt9eaf1a97a694ea39
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt9eaf1a97a694ea39' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:43 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 916f6d2c-b7d2-4d8b-9d81-9bf924e6da61
+x-response-time: 44
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/bltfb0b88efec17af85
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/bltfb0b88efec17af85' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:43 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: a3d6815b-bd0e-4f9b-9793-06f3f2b8fb4d
+x-response-time: 33
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/bltd98a67d51cbeae87
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/bltd98a67d51cbeae87' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:43 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 18c29ef5-7230-417c-b632-7e2262222ab5
+x-response-time: 40
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
Passed4.21s
+
✅ Test010_Should_Clone_Release_Async
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 156
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 156' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:00 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 12b5873c-63cd-4326-80df-90d5f8f85aaa
+x-response-time: 44
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 472
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release",
+    "description": "Release created for .NET SDK integration testing",
+    "locked": false,
+    "archived": false,
+    "uid": "bltfaad7783dbb389ce",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:00.147Z",
+    "updated_at": "2026-03-13T02:34:00.147Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases/bltfaad7783dbb389ce/clone
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 152
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release Cloned Async","desctiption":"Release created for .NET SDK integration testing (Cloned Async)"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases/bltfaad7783dbb389ce/clone' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 152' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release Cloned Async","desctiption":"Release created for .NET SDK integration testing (Cloned Async)"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:00 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 194938f6-82cf-4d41-9be8-4df00aaf7a1d
+x-response-time: 45
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 482
+
Response Body +
{
+  "notice": "Release cloned successfully.",
+  "release": {
+    "uid": "blt48c31ecedaf4df73",
+    "name": "DotNet SDK Integration Test Release Cloned Async",
+    "desctiption": "Release created for .NET SDK integration testing (Cloned Async)",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "locked": false,
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:00.477Z",
+    "updated_at": "2026-03-13T02:34:00.477Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt48c31ecedaf4df73
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt48c31ecedaf4df73' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:00 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: bf87aa7b-07a8-41d1-af8f-bb10fa552c02
+x-response-time: 45
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/bltfaad7783dbb389ce
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/bltfaad7783dbb389ce' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:01 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: ac4a0187-b68e-49bd-83bf-45667bef75f4
+x-response-time: 33
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
Passed1.24s
+
✅ Test013_Should_Create_Release_With_ParameterCollection
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/releases?include_count=true
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 186
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release With Params","description":"Release created for .NET SDK integration testing (With Parameters)","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases?include_count=true' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 186' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release With Params","description":"Release created for .NET SDK integration testing (With Parameters)","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:09 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: c7a30a64-873b-456a-811f-be2e5f2295be
+x-response-time: 31
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 502
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release With Params",
+    "description": "Release created for .NET SDK integration testing (With Parameters)",
+    "locked": false,
+    "archived": false,
+    "uid": "blte4ad558e56f9d4b4",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:09.930Z",
+    "updated_at": "2026-03-13T02:34:09.930Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blte4ad558e56f9d4b4
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blte4ad558e56f9d4b4' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:10 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 37b0eea1-0985-4843-af76-1230fd14961d
+x-response-time: 40
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
Passed0.70s
+
✅ Test007_Should_Update_Release
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 156
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 156' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:56 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 7f4d8cb9-3fff-44aa-ad70-b034b27df16a
+x-response-time: 35
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 472
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release",
+    "description": "Release created for .NET SDK integration testing",
+    "locked": false,
+    "archived": false,
+    "uid": "blt7165b60cb8ea3bd2",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:56.888Z",
+    "updated_at": "2026-03-13T02:33:56.888Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
PUThttps://api.contentstack.io/v3/releases/blt7165b60cb8ea3bd2
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 174
+Content-Type: application/json
+
Request Body
{"release": {"name":"DotNet SDK Integration Test Release Updated","description":"Release created for .NET SDK integration testing (Updated)","locked":false,"archived":false}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/releases/blt7165b60cb8ea3bd2' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 174' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"DotNet SDK Integration Test Release Updated","description":"Release created for .NET SDK integration testing (Updated)","locked":false,"archived":false}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:57 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 840919dd-c935-456b-941b-8e6997c12b0f
+x-response-time: 34
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 422
+
Response Body +
{
+  "notice": "Release updated successfully.",
+  "release": {
+    "name": "DotNet SDK Integration Test Release Updated",
+    "description": "Release created for .NET SDK integration testing (Updated)",
+    "locked": false,
+    "uid": "blt7165b60cb8ea3bd2",
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:33:56.888Z",
+    "updated_at": "2026-03-13T02:33:57.210Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/blt7165b60cb8ea3bd2
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/blt7165b60cb8ea3bd2' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:33:57 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 435f9e20-8809-4338-a58f-b4a7475ecc7d
+x-response-time: 37
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 42
+
Response Body +
{
+  "notice": "Release deleted successfully."
+}
+
Passed0.94s
+
+
+ +
+
+
+ + Contentstack005_ContentTypeTest +
+
+ 8 passed · + 0 failed · + 0 skipped · + 8 total +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Test NameStatusDuration
+
✅ Test007_Should_Query_Content_Type
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsNotNull(ContentType)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Tests.Model.ContentTypesModel
+
+
+
+
IsNotNull(ContentType.Modellings)
+
+
Expected:
NotNull
+
Actual:
System.Collections.Generic.List`1[Contentstack.Management.Core.Models.ContentModelling]
+
+
+
+
AreEqual(ModellingsCount)
+
+
Expected:
2
+
Actual:
2
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/content_types
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/content_types' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:22 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+surrogate-key: blt1bca31da998b57a9.content_types
+cache-tag: blt1bca31da998b57a9.content_types
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 21ms
+X-Request-ID: 4106389c-1ffe-47fa-b77a-4f74cfe8a62e
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{"content_types":[{"created_at":"2026-03-13T02:34:20.692Z","updated_at":"2026-03-13T02:34:20.692Z","title":"Single Page","uid":"single_page","_version":1,"inbuilt_class":false,"schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true,"non_localizable":false},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":true,"allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"instruction":"","ref_multiple":false},"multiple":false,"mandatory":true,"unique":false,"non_localizable":false}],"last_activity":{},"maintain_revisions":true,"description":"","DEFAULT_ACL":{"others":{"read":false,"create":false},"users":[{"read":true,"sub_acl":{"read":true},"uid":"blt99daf6332b695c38"}],"management_token":{"read":true}},"SYS_ACL":{"roles":[{"uid":"blt5f456b9cfa69b697","read":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true,"publish":true},"update":true,"delete":true},{"uid":"bltd7ebbaea63551cf9","read":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true,"publish":true}},{"uid":"blt1b7926e68b1b14b2","read":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true,"publish":true},"update":true,"delete":true}],"others":{"read":false,"create":false,"update":false,"delete":false,"sub_acl":{"read":false,"create":false,"update":false,"delete":false,"publish":false}}},"options":{"title":"title","sub_title":[],"singleton":false,"is_page":true,"url_pattern":"/:title","url_prefix":"/"},"abilities":{"get_one_object":true,"get_all_objects":true,"create_object":true,"update_object":true,"delete_object":true,"delete_all_objects":true}},{"created_at":"2026-03-13T02:34:21.019Z","updated_at":"2026-03-13T02:34:22.293Z","title":"Multi page","uid":"multi_page","_version":3,"inbuilt_class":false,"schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true,"non_localizable":false},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":true,"allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":false,"non_localizable":false},{"display_name":"Single line textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false,"non_localizable":false},{"display_name":"Multi line textbox","uid":"multi_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":true,"version":3,"markdown":false,"ref_multipl
+
+ Test Context + + + + +
TestScenarioQueryContentType
+
Passed0.30s
+
✅ Test002_Should_Create_Content_Type
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsNotNull(ContentType)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Tests.Model.ContentTypeModel
+
+
+
+
IsNotNull(ContentType.Modelling)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.ContentModelling
+
+
+
+
AreEqual(Title)
+
+
Expected:
Multi page
+
Actual:
Multi page
+
+
+
+
AreEqual(Uid)
+
+
Expected:
multi_page
+
Actual:
multi_page
+
+
+
+
AreEqual(SchemaCount)
+
+
Expected:
2
+
Actual:
2
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/content_types
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 638
+Content-Type: application/json
+
Request Body
{"content_type": {"title":"Multi page","uid":"multi_page","schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}],"options":{"title":"title","sub_title":[],"singleton":false,"is_page":true,"url_pattern":"/:title"}}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/content_types' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 638' \
+  -H 'Content-Type: application/json' \
+  -d '{"content_type": {"title":"Multi page","uid":"multi_page","schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}],"options":{"title":"title","sub_title":[],"singleton":false,"is_page":true,"url_pattern":"/:title"}}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:21 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 67ms
+X-Request-ID: 6b0d35b9-84c6-4f61-8bae-e10804e56f44
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Content Type created successfully.",
+  "content_type": {
+    "created_at": "2026-03-13T02:34:21.019Z",
+    "updated_at": "2026-03-13T02:34:21.019Z",
+    "title": "Multi page",
+    "uid": "multi_page",
+    "_version": 1,
+    "inbuilt_class": false,
+    "schema": [
+      {
+        "display_name": "Title",
+        "uid": "title",
+        "data_type": "text",
+        "field_metadata": {
+          "_default": "True",
+          "allow_rich_text": false,
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": true,
+        "unique": true,
+        "non_localizable": false
+      },
+      {
+        "display_name": "URL",
+        "uid": "url",
+        "data_type": "text",
+        "field_metadata": {
+          "_default": true,
+          "allow_rich_text": false,
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      }
+    ],
+    "last_activity": {},
+    "maintain_revisions": true,
+    "description": "",
+    "DEFAULT_ACL": {
+      "others": {
+        "read": false,
+        "create": false
+      },
+      "users": [
+        {
+          "read": true,
+          "sub_acl": {
+            "read": true
+          },
+          "uid": "blt99daf6332b695c38"
+        }
+      ],
+      "management_token": {
+        "read": true
+      }
+    },
+    "SYS_ACL": {
+      "roles": [],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "options": {
+      "title": "title",
+      "sub_title": [],
+      "singleton": false,
+      "is_page": true,
+      "url_pattern": "/:title",
+      "url_prefix": "/"
+    },
+    "abilities": {
+      "get_one_object": true,
+      "get_all_objects": true,
+      "create_object": true,
+      "update_object": true,
+      "delete_object": true,
+      "delete_all_objects": true
+    }
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioCreateContentType_MultiPage
ContentTypemulti_page
+
Passed0.33s
+
✅ Test005_Should_Update_Content_Type
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsNotNull(ContentType)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Tests.Model.ContentTypeModel
+
+
+
+
IsNotNull(ContentType.Modelling)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.ContentModelling
+
+
+
+
AreEqual(Title)
+
+
Expected:
Multi page
+
Actual:
Multi page
+
+
+
+
AreEqual(Uid)
+
+
Expected:
multi_page
+
Actual:
multi_page
+
+
+
+
AreEqual(SchemaCount)
+
+
Expected:
5
+
Actual:
5
+
+

HTTP Transactions

+
+ +
PUThttps://api.contentstack.io/v3/content_types/multi_page
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 1425
+Content-Type: application/json
+
Request Body
{"content_type": {"title":"Multi page","uid":"multi_page","schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":false},{"display_name":"Single line textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"display_name":"Multi line textbox","uid":"multi_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":true,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"display_name":"Markdown","uid":"markdown","data_type":"text","field_metadata":{"allow_rich_text":false,"description":"","multiline":false,"version":0,"markdown":true,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}],"options":{"title":"title","sub_title":[],"singleton":false,"is_page":true,"url_pattern":"/:title"}}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/content_types/multi_page' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 1425' \
+  -H 'Content-Type: application/json' \
+  -d '{"content_type": {"title":"Multi page","uid":"multi_page","schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":false},{"display_name":"Single line textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"display_name":"Multi line textbox","uid":"multi_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":true,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"display_name":"Markdown","uid":"markdown","data_type":"text","field_metadata":{"allow_rich_text":false,"description":"","multiline":false,"version":0,"markdown":true,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}],"options":{"title":"title","sub_title":[],"singleton":false,"is_page":true,"url_pattern":"/:title"}}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:21 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 56ms
+X-Request-ID: 111dd38f-1630-4ed0-aff8-9ab6507d379a
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Content Type updated successfully.",
+  "content_type": {
+    "created_at": "2026-03-13T02:34:21.019Z",
+    "updated_at": "2026-03-13T02:34:21.951Z",
+    "title": "Multi page",
+    "uid": "multi_page",
+    "_version": 2,
+    "inbuilt_class": false,
+    "schema": [
+      {
+        "display_name": "Title",
+        "uid": "title",
+        "data_type": "text",
+        "field_metadata": {
+          "_default": "True",
+          "allow_rich_text": false,
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": true,
+        "unique": true,
+        "non_localizable": false
+      },
+      {
+        "display_name": "URL",
+        "uid": "url",
+        "data_type": "text",
+        "field_metadata": {
+          "_default": true,
+          "allow_rich_text": false,
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": true,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "display_name": "Single line textbox",
+        "uid": "single_line",
+        "data_type": "text",
+        "field_metadata": {
+          "default_value": "",
+          "allow_rich_text": false,
+          "description": "",
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "display_name": "Multi line textbox",
+        "uid": "multi_line",
+        "data_type": "text",
+        "field_metadata": {
+          "default_value": "",
+          "allow_rich_text": false,
+          "description": "",
+          "multiline": true,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "display_name": "Markdown",
+        "uid": "markdown",
+        "data_type": "text",
+        "field_metadata": {
+          "allow_rich_text": false,
+          "description": "",
+          "multiline": false,
+          "version": 3,
+          "markdown": true,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      }
+    ],
+    "last_activity": {},
+    "maintain_revisions": true,
+    "description": "",
+    "DEFAULT_ACL": {
+      "others": {
+        "read": false,
+        "create": false
+      },
+      "users": [
+        {
+          "uid": "blt99daf6332b695c38",
+          "read": true,
+          "sub_acl": {
+            "read": true
+          }
+        }
+      ]
+    },
+    "SYS_ACL": {
+      "roles": [],
+      "others": {
+        "read": false,
+        "create
+
+ Test Context + + + + + + + + +
TestScenarioUpdateContentType
ContentTypemulti_page
+
Passed0.34s
+
✅ Test006_Should_Update_Async_Content_Type
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsNotNull(ContentType)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Tests.Model.ContentTypeModel
+
+
+
+
IsNotNull(ContentType.Modelling)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.ContentModelling
+
+
+
+
AreEqual(Uid)
+
+
Expected:
multi_page
+
Actual:
multi_page
+
+
+
+
AreEqual(SchemaCount)
+
+
Expected:
6
+
Actual:
6
+
+

HTTP Transactions

+
+ +
PUThttps://api.contentstack.io/v3/content_types/multi_page
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 1726
+Content-Type: application/json
+
Request Body
{"content_type": {"title":"Multi page","uid":"multi_page","schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":false},{"display_name":"Single line textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"display_name":"Multi line textbox","uid":"multi_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":true,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"display_name":"Markdown","uid":"markdown","data_type":"text","field_metadata":{"allow_rich_text":false,"description":"","multiline":false,"version":0,"markdown":true,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"display_name":"New Text Field","uid":"new_text_field","data_type":"text","field_metadata":{"allow_rich_text":false,"description":"A new text field added during async update test","multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}],"options":{"title":"title","sub_title":[],"singleton":false,"is_page":true,"url_pattern":"/:title"}}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/content_types/multi_page' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 1726' \
+  -H 'Content-Type: application/json' \
+  -d '{"content_type": {"title":"Multi page","uid":"multi_page","schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":false},{"display_name":"Single line textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"display_name":"Multi line textbox","uid":"multi_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":true,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"display_name":"Markdown","uid":"markdown","data_type":"text","field_metadata":{"allow_rich_text":false,"description":"","multiline":false,"version":0,"markdown":true,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"display_name":"New Text Field","uid":"new_text_field","data_type":"text","field_metadata":{"allow_rich_text":false,"description":"A new text field added during async update test","multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}],"options":{"title":"title","sub_title":[],"singleton":false,"is_page":true,"url_pattern":"/:title"}}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:22 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 58ms
+X-Request-ID: 04bf1a89-f028-4eac-8fd8-c8bafdce9f25
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Content Type updated successfully.",
+  "content_type": {
+    "created_at": "2026-03-13T02:34:21.019Z",
+    "updated_at": "2026-03-13T02:34:22.293Z",
+    "title": "Multi page",
+    "uid": "multi_page",
+    "_version": 3,
+    "inbuilt_class": false,
+    "schema": [
+      {
+        "display_name": "Title",
+        "uid": "title",
+        "data_type": "text",
+        "field_metadata": {
+          "_default": "True",
+          "allow_rich_text": false,
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": true,
+        "unique": true,
+        "non_localizable": false
+      },
+      {
+        "display_name": "URL",
+        "uid": "url",
+        "data_type": "text",
+        "field_metadata": {
+          "_default": true,
+          "allow_rich_text": false,
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": true,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "display_name": "Single line textbox",
+        "uid": "single_line",
+        "data_type": "text",
+        "field_metadata": {
+          "default_value": "",
+          "allow_rich_text": false,
+          "description": "",
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "display_name": "Multi line textbox",
+        "uid": "multi_line",
+        "data_type": "text",
+        "field_metadata": {
+          "default_value": "",
+          "allow_rich_text": false,
+          "description": "",
+          "multiline": true,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "display_name": "Markdown",
+        "uid": "markdown",
+        "data_type": "text",
+        "field_metadata": {
+          "allow_rich_text": false,
+          "description": "",
+          "multiline": false,
+          "version": 3,
+          "markdown": true,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "display_name": "New Text Field",
+        "uid": "new_text_field",
+        "data_type": "text",
+        "field_metadata": {
+          "allow_rich_text": false,
+          "description": "A new text field added during async update test",
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique"
+
+ Test Context + + + + + + + + +
TestScenarioUpdateAsyncContentType
ContentTypemulti_page
+
Passed0.35s
+
✅ Test001_Should_Create_Content_Type
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsNotNull(ContentType)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Tests.Model.ContentTypeModel
+
+
+
+
IsNotNull(ContentType.Modelling)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.ContentModelling
+
+
+
+
AreEqual(Title)
+
+
Expected:
Single Page
+
Actual:
Single Page
+
+
+
+
AreEqual(Uid)
+
+
Expected:
single_page
+
Actual:
single_page
+
+
+
+
AreEqual(SchemaCount)
+
+
Expected:
2
+
Actual:
2
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/content_types
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 632
+Content-Type: application/json
+
Request Body
{"content_type": {"title":"Single Page","uid":"single_page","schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":0,"markdown":false,"instruction":"","ref_multiple":false},"multiple":false,"mandatory":true,"unique":false}],"options":{"title":"title","sub_title":[],"singleton":false,"is_page":true}}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/content_types' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 632' \
+  -H 'Content-Type: application/json' \
+  -d '{"content_type": {"title":"Single Page","uid":"single_page","schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":0,"markdown":false,"instruction":"","ref_multiple":false},"multiple":false,"mandatory":true,"unique":false}],"options":{"title":"title","sub_title":[],"singleton":false,"is_page":true}}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:20 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 53ms
+X-Request-ID: b9084d16-cb50-4f24-b8da-6c893e276470
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Content Type created successfully.",
+  "content_type": {
+    "created_at": "2026-03-13T02:34:20.692Z",
+    "updated_at": "2026-03-13T02:34:20.692Z",
+    "title": "Single Page",
+    "uid": "single_page",
+    "_version": 1,
+    "inbuilt_class": false,
+    "schema": [
+      {
+        "display_name": "Title",
+        "uid": "title",
+        "data_type": "text",
+        "field_metadata": {
+          "_default": "True",
+          "allow_rich_text": false,
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": true,
+        "unique": true,
+        "non_localizable": false
+      },
+      {
+        "display_name": "URL",
+        "uid": "url",
+        "data_type": "text",
+        "field_metadata": {
+          "_default": true,
+          "allow_rich_text": false,
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "instruction": "",
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": true,
+        "unique": false,
+        "non_localizable": false
+      }
+    ],
+    "last_activity": {},
+    "maintain_revisions": true,
+    "description": "",
+    "DEFAULT_ACL": {
+      "others": {
+        "read": false,
+        "create": false
+      },
+      "users": [
+        {
+          "read": true,
+          "sub_acl": {
+            "read": true
+          },
+          "uid": "blt99daf6332b695c38"
+        }
+      ],
+      "management_token": {
+        "read": true
+      }
+    },
+    "SYS_ACL": {
+      "roles": [],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "options": {
+      "title": "title",
+      "sub_title": [],
+      "singleton": false,
+      "is_page": true,
+      "url_pattern": "/:title",
+      "url_prefix": "/"
+    },
+    "abilities": {
+      "get_one_object": true,
+      "get_all_objects": true,
+      "create_object": true,
+      "update_object": true,
+      "delete_object": true,
+      "delete_all_objects": true
+    }
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioCreateContentType_SinglePage
ContentTypesingle_page
+
Passed0.33s
+
✅ Test008_Should_Query_Async_Content_Type
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsNotNull(ContentType)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Tests.Model.ContentTypesModel
+
+
+
+
IsNotNull(ContentType.Modellings)
+
+
Expected:
NotNull
+
Actual:
System.Collections.Generic.List`1[Contentstack.Management.Core.Models.ContentModelling]
+
+
+
+
AreEqual(ModellingsCount)
+
+
Expected:
2
+
Actual:
2
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/content_types
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/content_types' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:22 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+surrogate-key: blt1bca31da998b57a9.content_types
+cache-tag: blt1bca31da998b57a9.content_types
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 22ms
+X-Request-ID: 8e0c9792-f920-4030-a4f2-f179306d65eb
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{"content_types":[{"created_at":"2026-03-13T02:34:20.692Z","updated_at":"2026-03-13T02:34:20.692Z","title":"Single Page","uid":"single_page","_version":1,"inbuilt_class":false,"schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true,"non_localizable":false},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":true,"allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"instruction":"","ref_multiple":false},"multiple":false,"mandatory":true,"unique":false,"non_localizable":false}],"last_activity":{},"maintain_revisions":true,"description":"","DEFAULT_ACL":{"others":{"read":false,"create":false},"users":[{"read":true,"sub_acl":{"read":true},"uid":"blt99daf6332b695c38"}],"management_token":{"read":true}},"SYS_ACL":{"roles":[{"uid":"blt5f456b9cfa69b697","read":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true,"publish":true},"update":true,"delete":true},{"uid":"bltd7ebbaea63551cf9","read":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true,"publish":true}},{"uid":"blt1b7926e68b1b14b2","read":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true,"publish":true},"update":true,"delete":true}],"others":{"read":false,"create":false,"update":false,"delete":false,"sub_acl":{"read":false,"create":false,"update":false,"delete":false,"publish":false}}},"options":{"title":"title","sub_title":[],"singleton":false,"is_page":true,"url_pattern":"/:title","url_prefix":"/"},"abilities":{"get_one_object":true,"get_all_objects":true,"create_object":true,"update_object":true,"delete_object":true,"delete_all_objects":true}},{"created_at":"2026-03-13T02:34:21.019Z","updated_at":"2026-03-13T02:34:22.293Z","title":"Multi page","uid":"multi_page","_version":3,"inbuilt_class":false,"schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true,"non_localizable":false},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":true,"allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":false,"non_localizable":false},{"display_name":"Single line textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false,"non_localizable":false},{"display_name":"Multi line textbox","uid":"multi_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":true,"version":3,"markdown":false,"ref_multipl
+
+ Test Context + + + + +
TestScenarioQueryAsyncContentType
+
Passed0.30s
+
✅ Test004_Should_Fetch_Async_Content_Type
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsNotNull(ContentType)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Tests.Model.ContentTypeModel
+
+
+
+
IsNotNull(ContentType.Modelling)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.ContentModelling
+
+
+
+
AreEqual(Title)
+
+
Expected:
Single Page
+
Actual:
Single Page
+
+
+
+
AreEqual(Uid)
+
+
Expected:
single_page
+
Actual:
single_page
+
+
+
+
AreEqual(SchemaCount)
+
+
Expected:
2
+
Actual:
2
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/content_types/single_page
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/content_types/single_page' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:21 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+surrogate-key: blt1bca31da998b57a9.content_types blt1bca31da998b57a9.content_types.single_page
+cache-tag: blt1bca31da998b57a9.content_types blt1bca31da998b57a9.content_types.single_page
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 27ms
+X-Request-ID: 4078a636-af2b-412e-b58d-32e28d71311e
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "content_type": {
+    "created_at": "2026-03-13T02:34:20.692Z",
+    "updated_at": "2026-03-13T02:34:20.692Z",
+    "title": "Single Page",
+    "uid": "single_page",
+    "_version": 1,
+    "inbuilt_class": false,
+    "schema": [
+      {
+        "display_name": "Title",
+        "uid": "title",
+        "data_type": "text",
+        "field_metadata": {
+          "_default": "True",
+          "allow_rich_text": false,
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": true,
+        "unique": true,
+        "non_localizable": false
+      },
+      {
+        "display_name": "URL",
+        "uid": "url",
+        "data_type": "text",
+        "field_metadata": {
+          "_default": true,
+          "allow_rich_text": false,
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "instruction": "",
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": true,
+        "unique": false,
+        "non_localizable": false
+      }
+    ],
+    "last_activity": {},
+    "maintain_revisions": true,
+    "description": "",
+    "DEFAULT_ACL": {
+      "others": {
+        "read": false,
+        "create": false
+      },
+      "users": [
+        {
+          "read": true,
+          "sub_acl": {
+            "read": true
+          },
+          "uid": "blt99daf6332b695c38"
+        }
+      ],
+      "management_token": {
+        "read": true
+      }
+    },
+    "SYS_ACL": {
+      "roles": [
+        {
+          "uid": "blt5f456b9cfa69b697",
+          "read": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true,
+            "publish": true
+          },
+          "update": true,
+          "delete": true
+        },
+        {
+          "uid": "bltd7ebbaea63551cf9",
+          "read": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true,
+            "publish": true
+          }
+        },
+        {
+          "uid": "blt1b7926e68b1b14b2",
+          "read": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true,
+            "publish": true
+          },
+          "update": true,
+          "delete": true
+        }
+      ],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "options": {
+      "title": "title",
+      "sub_title": [],
+      "singleton": false,
+      "is_page": true,
+      "url_pattern": "/:title",
+      "url_prefix": "/"
+    },
+    "abilities": {
+      "get_one_object": true,
+      "get_all_objects
+
+ Test Context + + + + + + + + +
TestScenarioFetchAsyncContentType
ContentTypesingle_page
+
Passed0.30s
+
✅ Test003_Should_Fetch_Content_Type
+

Assertions

+
+
IsNotNull(response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsNotNull(ContentType)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Tests.Model.ContentTypeModel
+
+
+
+
IsNotNull(ContentType.Modelling)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.ContentModelling
+
+
+
+
AreEqual(Title)
+
+
Expected:
Multi page
+
Actual:
Multi page
+
+
+
+
AreEqual(Uid)
+
+
Expected:
multi_page
+
Actual:
multi_page
+
+
+
+
AreEqual(SchemaCount)
+
+
Expected:
2
+
Actual:
2
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/content_types/multi_page
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/content_types/multi_page' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:21 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+surrogate-key: blt1bca31da998b57a9.content_types blt1bca31da998b57a9.content_types.multi_page
+cache-tag: blt1bca31da998b57a9.content_types blt1bca31da998b57a9.content_types.multi_page
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 25ms
+X-Request-ID: 01a92927-a273-4ee9-9228-a5b2e0134dec
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "content_type": {
+    "created_at": "2026-03-13T02:34:21.019Z",
+    "updated_at": "2026-03-13T02:34:21.019Z",
+    "title": "Multi page",
+    "uid": "multi_page",
+    "_version": 1,
+    "inbuilt_class": false,
+    "schema": [
+      {
+        "display_name": "Title",
+        "uid": "title",
+        "data_type": "text",
+        "field_metadata": {
+          "_default": "True",
+          "allow_rich_text": false,
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": true,
+        "unique": true,
+        "non_localizable": false
+      },
+      {
+        "display_name": "URL",
+        "uid": "url",
+        "data_type": "text",
+        "field_metadata": {
+          "_default": true,
+          "allow_rich_text": false,
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      }
+    ],
+    "last_activity": {},
+    "maintain_revisions": true,
+    "description": "",
+    "DEFAULT_ACL": {
+      "others": {
+        "read": false,
+        "create": false
+      },
+      "users": [
+        {
+          "read": true,
+          "sub_acl": {
+            "read": true
+          },
+          "uid": "blt99daf6332b695c38"
+        }
+      ],
+      "management_token": {
+        "read": true
+      }
+    },
+    "SYS_ACL": {
+      "roles": [
+        {
+          "uid": "blt5f456b9cfa69b697",
+          "read": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true,
+            "publish": true
+          },
+          "update": true,
+          "delete": true
+        },
+        {
+          "uid": "bltd7ebbaea63551cf9",
+          "read": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true,
+            "publish": true
+          }
+        },
+        {
+          "uid": "blt1b7926e68b1b14b2",
+          "read": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true,
+            "publish": true
+          },
+          "update": true,
+          "delete": true
+        }
+      ],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "options": {
+      "title": "title",
+      "sub_title": [],
+      "singleton": false,
+      "is_page": true,
+      "url_pattern": "/:title",
+      "url_prefix": "/"
+    },
+    "abilities": {
+      "get_one_object": true,
+      "get_all_objects": true,
+      "create_object"
+
+ Test Context + + + + + + + + +
TestScenarioFetchContentType
ContentTypemulti_page
+
Passed0.30s
+
+
+ +
+
+
+ + Contentstack006_AssetTest +
+
+ 26 passed · + 0 failed · + 0 skipped · + 26 total +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Test NameStatusDuration
+
✅ Test005_Should_Create_Asset_Async
+

Assertions

+
+
AreEqual(CreateAssetAsync_StatusCode)
+
+
Expected:
Created
+
Actual:
Created
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/assets
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg
+Content-Type: multipart/form-data; boundary="8650e59b-ece9-41a1-8872-99896096ff8c"
+
Request Body
--8650e59b-ece9-41a1-8872-99896096ff8c
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8''async_asset.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--8650e59b-ece9-41a1-8872-99896096ff8c
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+Async Asset
+--8650e59b-ece9-41a1-8872-99896096ff8c
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+async test asset
+--8650e59b-ece9-41a1-8872-99896096ff8c
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+async,test
+--8650e59b-ece9-41a1-8872-99896096ff8c--
+
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/assets' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg' \
+  -H 'Content-Type: multipart/form-data; boundary="8650e59b-ece9-41a1-8872-99896096ff8c"' \
+  -d '--8650e59b-ece9-41a1-8872-99896096ff8c
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8'\'''\''async_asset.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--8650e59b-ece9-41a1-8872-99896096ff8c
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+Async Asset
+--8650e59b-ece9-41a1-8872-99896096ff8c
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+async test asset
+--8650e59b-ece9-41a1-8872-99896096ff8c
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+async,test
+--8650e59b-ece9-41a1-8872-99896096ff8c--
+'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:27 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 128ms
+X-Request-ID: 4e27366205818fabcccc8f09b6d189b7
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Asset created successfully.",
+  "asset": {
+    "uid": "blt9676221935fa638d",
+    "created_at": "2026-03-13T02:34:27.747Z",
+    "updated_at": "2026-03-13T02:34:27.747Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "async",
+      "test"
+    ],
+    "filename": "async_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt9676221935fa638d/69b377b35a9c0e27a035ff10/async_asset.json",
+    "ACL": {},
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 1,
+    "title": "Async Asset",
+    "description": "async test asset"
+  }
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioCreateAssetAsync
StackAPIKeyblt1bca31da998b57a9
AssetUIDblt9676221935fa638d
+
Passed0.53s
+
✅ Test010_Should_Query_Assets
+

Assertions

+
+
AreEqual(QueryAssets_StatusCode)
+
+
Expected:
OK
+
Actual:
OK
+
+
+
+
IsNotNull(QueryAssets_ResponseContainsAssets)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "uid": "blt2e420180c49b97d1",
+    "created_at": "2026-03-13T02:34:30.71Z",
+    "updated_at": "2026-03-13T02:34:31.14Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "async",
+      "updated",
+      "test"
+    ],
+    "filename": "async_updated_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2e420180c49b97d1/69b377b7b2e2a87a96adc169/async_updated_asset.json",
+    "ACL": {
+      "roles": [],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 2,
+    "title": "Async Updated Asset",
+    "description": "async updated test asset"
+  },
+  {
+    "uid": "bltc01c5126ad87ad39",
+    "created_at": "2026-03-13T02:34:29.829Z",
+    "updated_at": "2026-03-13T02:34:30.289Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "updated",
+      "test"
+    ],
+    "filename": "updated_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/bltc01c5126ad87ad39/69b377b6bf5153293e7b212e/updated_asset.json",
+    "ACL": {
+      "roles": [],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 2,
+    "title": "Updated Asset",
+    "description": "updated test asset"
+  },
+  {
+    "uid": "blt2c699da2d244de83",
+    "created_at": "2026-03-13T02:34:29.113Z",
+    "updated_at": "2026-03-13T02:34:29.113Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "async",
+      "test"
+    ],
+    "filename": "async_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2c699da2d244de83/69b377b5b1f4aa06332600f8/async_asset.json",
+    "ACL": {
+      "roles": [],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 1,
+    "title": "Async Asset",
+    "description": "async test asset"
+  },
+  {
+    "uid": "blt26b93606f6f75c7f",
+    "created_at": "2026-03-13T02:34:28.284Z",
+    "updated_at": "2026-03-13T02:34:28.284Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "async",
+      "test"
+    ],
+    "filename": "async_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt26b93606f6f75c7f/69b377b4e681b9842ab788ee/async_asset.json",
+    "ACL": {
+      "roles": [],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 1,
+    "title": "Async Asset",
+    "description": "async test asset"
+  },
+  {
+    "uid": "blt9676221935fa638d",
+    "created_at": "2026-03-13T02:34:27.747Z",
+    "updated_at": "2026-03-13T02:34:27.747Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "async",
+      "test"
+    ],
+    "filename": "async_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt9676221935fa638d/69b377b35a9c0e27a035ff10/async_asset.json",
+    "ACL": {
+      "roles": [],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 1,
+    "title": "Async Asset",
+    "description": "async test asset"
+  },
+  {
+    "uid": "blt519b0e8d8e93d82a",
+    "created_at": "2026-03-13T02:34:26.178Z",
+    "updated_at": "2026-03-13T02:34:26.178Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "one",
+      "two"
+    ],
+    "filename": "contentTypeSchema.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt519b0e8d8e93d82a/69b377b2b2e2a810aeadc167/contentTypeSchema.json",
+    "ACL": {
+      "roles": [],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 1,
+    "title": "New.json",
+    "description": "new test desc"
+  }
+]
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/assets
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/assets' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:31 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 28ms
+X-Request-ID: 1e21c45984d009769bbb76b2dbb1011d
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{"assets":[{"uid":"blt2e420180c49b97d1","created_at":"2026-03-13T02:34:30.710Z","updated_at":"2026-03-13T02:34:31.140Z","created_by":"blt1930fc55e5669df9","updated_by":"blt1930fc55e5669df9","content_type":"application/json","file_size":"1572","tags":["async","updated","test"],"filename":"async_updated_asset.json","url":"https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2e420180c49b97d1/69b377b7b2e2a87a96adc169/async_updated_asset.json","ACL":{"roles":[],"others":{"read":false,"create":false,"update":false,"delete":false,"sub_acl":{"read":false,"create":false,"update":false,"delete":false,"publish":false}}},"is_dir":false,"parent_uid":null,"_version":2,"title":"Async Updated Asset","description":"async updated test asset"},{"uid":"bltc01c5126ad87ad39","created_at":"2026-03-13T02:34:29.829Z","updated_at":"2026-03-13T02:34:30.289Z","created_by":"blt1930fc55e5669df9","updated_by":"blt1930fc55e5669df9","content_type":"application/json","file_size":"1572","tags":["updated","test"],"filename":"updated_asset.json","url":"https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/bltc01c5126ad87ad39/69b377b6bf5153293e7b212e/updated_asset.json","ACL":{"roles":[],"others":{"read":false,"create":false,"update":false,"delete":false,"sub_acl":{"read":false,"create":false,"update":false,"delete":false,"publish":false}}},"is_dir":false,"parent_uid":null,"_version":2,"title":"Updated Asset","description":"updated test asset"},{"uid":"blt2c699da2d244de83","created_at":"2026-03-13T02:34:29.113Z","updated_at":"2026-03-13T02:34:29.113Z","created_by":"blt1930fc55e5669df9","updated_by":"blt1930fc55e5669df9","content_type":"application/json","file_size":"1572","tags":["async","test"],"filename":"async_asset.json","url":"https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2c699da2d244de83/69b377b5b1f4aa06332600f8/async_asset.json","ACL":{"roles":[],"others":{"read":false,"create":false,"update":false,"delete":false,"sub_acl":{"read":false,"create":false,"update":false,"delete":false,"publish":false}}},"is_dir":false,"parent_uid":null,"_version":1,"title":"Async Asset","description":"async test asset"},{"uid":"blt26b93606f6f75c7f","created_at":"2026-03-13T02:34:28.284Z","updated_at":"2026-03-13T02:34:28.284Z","created_by":"blt1930fc55e5669df9","updated_by":"blt1930fc55e5669df9","content_type":"application/json","file_size":"1572","tags":["async","test"],"filename":"async_asset.json","url":"https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt26b93606f6f75c7f/69b377b4e681b9842ab788ee/async_asset.json","ACL":{"roles":[],"others":{"read":false,"create":false,"update":false,"delete":false,"sub_acl":{"read":false,"create":false,"update":false,"delete":false,"publish":false}}},"is_dir":false,"parent_uid":null,"_version":1,"title":"Async Asset","description":"async test asset"},{"uid":"blt9676221935fa638d","created_at":"2026-03-13T02:34:27.747Z","updated_at":"2026-03-13T02:34:27.747Z","created_by":"blt1930fc55e5669df9","updated_by":"blt1930
+
+ Test Context + + + + + + + + +
TestScenarioQueryAssets
StackAPIKeyblt1bca31da998b57a9
+
Passed0.33s
+
✅ Test014_Should_Create_Folder
+

Assertions

+
+
AreEqual(CreateFolder_StatusCode)
+
+
Expected:
Created
+
Actual:
Created
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/assets/folders
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 32
+Content-Type: application/json
+
Request Body
{"asset":{"name":"Test Folder"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/assets/folders' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 32' \
+  -H 'Content-Type: application/json' \
+  -d '{"asset":{"name":"Test Folder"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:34 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 38ms
+X-Request-ID: 1497a2aa266e330060a4d67a1740e31c
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Folder created successfully.",
+  "asset": {
+    "uid": "bltee1a28c57ff1c5cd",
+    "created_at": "2026-03-13T02:34:34.629Z",
+    "updated_at": "2026-03-13T02:34:34.629Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/vnd.contenstack.folder",
+    "tags": [],
+    "name": "Test Folder",
+    "ACL": {},
+    "is_dir": true,
+    "parent_uid": null,
+    "_version": 1
+  }
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioCreateFolder
StackAPIKeyblt1bca31da998b57a9
FolderUIDbltee1a28c57ff1c5cd
+
Passed0.35s
+
✅ Test023_Should_Delete_Folder_Async
+

Assertions

+
+
AreEqual(DeleteFolderAsync_StatusCode)
+
+
Expected:
OK
+
Actual:
OK
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/assets/folders
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 39
+Content-Type: application/json
+
Request Body
{"asset":{"name":"Delete Test Folder"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/assets/folders' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 39' \
+  -H 'Content-Type: application/json' \
+  -d '{"asset":{"name":"Delete Test Folder"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:38 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 35ms
+X-Request-ID: 0a7e34de6ea56b360993ebe37cfa41b6
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Folder created successfully.",
+  "asset": {
+    "uid": "blt3d3439b18705d1ef",
+    "created_at": "2026-03-13T02:34:38.751Z",
+    "updated_at": "2026-03-13T02:34:38.751Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/vnd.contenstack.folder",
+    "tags": [],
+    "name": "Delete Test Folder",
+    "ACL": {},
+    "is_dir": true,
+    "parent_uid": null,
+    "_version": 1
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/assets/folders/blt3d3439b18705d1ef
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/assets/folders/blt3d3439b18705d1ef' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:39 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 38ms
+X-Request-ID: b1f2b79b8293a5407615a662a051f577
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Folder deleted successfully."
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioDeleteFolderAsync
StackAPIKeyblt1bca31da998b57a9
FolderUIDblt3d3439b18705d1ef
+
Passed0.68s
+
✅ Test004_Should_Create_Custom_field
+

Assertions

+
+
AreEqual(CreateCustomField_StatusCode)
+
+
Expected:
Created
+
Actual:
Created
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/extensions
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Type: multipart/form-data; boundary="593e8f12-dc16-4a06-a7fd-dbfb3a262ec5"
+
Request Body
--593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
+Content-Type: text/html
+Content-Disposition: form-data; name="extension[upload]"; filename="Custom field Upload"; filename*=utf-8''Custom%20field%20Upload
+
+<html>
+<head>
+    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
+    <script
+        src="https://unpkg.com/@contentstack/ui-extensions-sdk@2.2.3/dist/ui-extension-sdk.js"
+        integrity="sha512-LMktiFAj7j/AUFctMlgY8qmLrLIQVctwwCsnCXIWnvgF9JlanilvFbZxOCtPNB5eO3vp2Nhw9ED1UsWa+ltSvQ=="
+        crossorigin="anonymous"
+    ></script>
+    <link
+        rel="stylesheet"
+        type="text/css"
+        href="https://unpkg.com/@contentstack/ui-extensions-sdk/dist/ui-extension-sdk.css"
+        integrity="sha512-yPPI/jWiqPr0HIh+1A2QPP5p58sSYqbPoBykxIuBckT1vzGwNbrOmwYM03qGI4ffnxd7q4kkoDys0kdZzxYn9A=="
+        crossorigin="anonymous"
+    />
+</head>
+<body>
+    <input type="color" id="html5colorpicker" onchange="colorChange()">
+    <script>
+      // initialise Field Extension 
+      window.extensionField = {};
+      // find color input element 
+      var colorPickerElement = document.getElementById("html5colorpicker");
+      ContentstackUIExtension.init().then(function(extension) {
+          // make extension object globally available
+          extensionField = extension;
+          // Get current color field value from Contentstack and update the color picker input element
+          colorPickerElement.value = extensionField.field.getData();
+      }).catch(function(error) {
+          console.log(error);
+      });
+        // On color change event, pass new value to Contentstack
+        function colorChange(){
+          extensionField.field.setData(colorPickerElement.value);      
+        }        
+    </script>
+</body>
+</html>
+--593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[title]"
+
+Custom field Upload
+--593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[data_type]"
+
+text
+--593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[tags]"
+
+one,two
+--593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[multiple]"
+
+false
+--593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[type]"
+
+field
+--593e8f12-dc16-4a06-a7fd-dbfb3a262ec5--
+
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/extensions' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Type: multipart/form-data; boundary="593e8f12-dc16-4a06-a7fd-dbfb3a262ec5"' \
+  -d '--593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
+Content-Type: text/html
+Content-Disposition: form-data; name="extension[upload]"; filename="Custom field Upload"; filename*=utf-8'\'''\''Custom%20field%20Upload
+
+<html>
+<head>
+    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
+    <script
+        src="https://unpkg.com/@contentstack/ui-extensions-sdk@2.2.3/dist/ui-extension-sdk.js"
+        integrity="sha512-LMktiFAj7j/AUFctMlgY8qmLrLIQVctwwCsnCXIWnvgF9JlanilvFbZxOCtPNB5eO3vp2Nhw9ED1UsWa+ltSvQ=="
+        crossorigin="anonymous"
+    ></script>
+    <link
+        rel="stylesheet"
+        type="text/css"
+        href="https://unpkg.com/@contentstack/ui-extensions-sdk/dist/ui-extension-sdk.css"
+        integrity="sha512-yPPI/jWiqPr0HIh+1A2QPP5p58sSYqbPoBykxIuBckT1vzGwNbrOmwYM03qGI4ffnxd7q4kkoDys0kdZzxYn9A=="
+        crossorigin="anonymous"
+    />
+</head>
+<body>
+    <input type="color" id="html5colorpicker" onchange="colorChange()">
+    <script>
+      // initialise Field Extension 
+      window.extensionField = {};
+      // find color input element 
+      var colorPickerElement = document.getElementById("html5colorpicker");
+      ContentstackUIExtension.init().then(function(extension) {
+          // make extension object globally available
+          extensionField = extension;
+          // Get current color field value from Contentstack and update the color picker input element
+          colorPickerElement.value = extensionField.field.getData();
+      }).catch(function(error) {
+          console.log(error);
+      });
+        // On color change event, pass new value to Contentstack
+        function colorChange(){
+          extensionField.field.setData(colorPickerElement.value);      
+        }        
+    </script>
+</body>
+</html>
+--593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[title]"
+
+Custom field Upload
+--593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[data_type]"
+
+text
+--593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[tags]"
+
+one,two
+--593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[multiple]"
+
+false
+--593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[type]"
+
+field
+--593e8f12-dc16-4a06-a7fd-dbfb3a262ec5--
+'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:27 GMT
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 57ms
+X-Request-ID: 3edf774d-8349-49b7-a6d2-449afdaf96d1
+x-server-name: extensions-microservice
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Server: contentstack
+Content-Type: application/json; charset=utf-8
+Content-Length: 2004
+
Response Body +
{
+  "notice": "Extension created successfully.",
+  "extension": {
+    "uid": "blt8f54df1ed19663c4",
+    "created_at": "2026-03-13T02:34:27.386Z",
+    "updated_at": "2026-03-13T02:34:27.386Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "tags": [
+      "one",
+      "two"
+    ],
+    "_version": 1,
+    "title": "Custom field Upload",
+    "config": {},
+    "type": "field",
+    "data_type": "text",
+    "multiple": false,
+    "srcdoc": "<html>\n<head>\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"/>\n    <script\n        src=\"https://unpkg.com/@contentstack/ui-extensions-sdk@2.2.3/dist/ui-extension-sdk.js\"\n        integrity=\"sha512-LMktiFAj7j/AUFctMlgY8qmLrLIQVctwwCsnCXIWnvgF9JlanilvFbZxOCtPNB5eO3vp2Nhw9ED1UsWa+ltSvQ==\"\n        crossorigin=\"anonymous\"\n    ></script>\n    <link\n        rel=\"stylesheet\"\n        type=\"text/css\"\n        href=\"https://unpkg.com/@contentstack/ui-extensions-sdk/dist/ui-extension-sdk.css\"\n        integrity=\"sha512-yPPI/jWiqPr0HIh+1A2QPP5p58sSYqbPoBykxIuBckT1vzGwNbrOmwYM03qGI4ffnxd7q4kkoDys0kdZzxYn9A==\"\n        crossorigin=\"anonymous\"\n    />\n</head>\n<body>\n    <input type=\"color\" id=\"html5colorpicker\" onchange=\"colorChange()\">\n    <script>\n      // initialise Field Extension \n      window.extensionField = {};\n      // find color input element \n      var colorPickerElement = document.getElementById(\"html5colorpicker\");\n      ContentstackUIExtension.init().then(function(extension) {\n          // make extension object globally available\n          extensionField = extension;\n          // Get current color field value from Contentstack and update the color picker input element\n          colorPickerElement.value = extensionField.field.getData();\n      }).catch(function(error) {\n          console.log(error);\n      });\n        // On color change event, pass new value to Contentstack\n        function colorChange(){\n          extensionField.field.setData(colorPickerElement.value);      \n        }        \n    </script>\n</body>\n</html>"
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioCreateCustomField
StackAPIKeyblt1bca31da998b57a9
+
Passed0.36s
+
✅ Test015_Should_Create_Subfolder
+

Assertions

+
+
AreEqual(CreateFolder_StatusCode)
+
+
Expected:
Created
+
Actual:
Created
+
+
+
+
AreEqual(CreateSubfolder_StatusCode)
+
+
Expected:
Created
+
Actual:
Created
+
+
+
+
IsNotNull(CreateSubfolder_ResponseContainsFolder)
+
+
Expected:
NotNull
+
Actual:
{
+  "uid": "bltabb2b39dd1836f57",
+  "created_at": "2026-03-13T02:34:35.352Z",
+  "updated_at": "2026-03-13T02:34:35.352Z",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "content_type": "application/vnd.contenstack.folder",
+  "tags": [],
+  "name": "Test Subfolder",
+  "ACL": {},
+  "is_dir": true,
+  "parent_uid": "blt5982a5db820bba21",
+  "_version": 1
+}
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/assets/folders
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 32
+Content-Type: application/json
+
Request Body
{"asset":{"name":"Test Folder"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/assets/folders' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 32' \
+  -H 'Content-Type: application/json' \
+  -d '{"asset":{"name":"Test Folder"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:34 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 43ms
+X-Request-ID: 1672bde84b009eef07c2bb4311f470f6
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Folder created successfully.",
+  "asset": {
+    "uid": "blt5982a5db820bba21",
+    "created_at": "2026-03-13T02:34:34.979Z",
+    "updated_at": "2026-03-13T02:34:34.979Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/vnd.contenstack.folder",
+    "tags": [],
+    "name": "Test Folder",
+    "ACL": {},
+    "is_dir": true,
+    "parent_uid": null,
+    "_version": 1
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/assets/folders
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 70
+Content-Type: application/json
+
Request Body
{"asset":{"name":"Test Subfolder","parent_uid":"blt5982a5db820bba21"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/assets/folders' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 70' \
+  -H 'Content-Type: application/json' \
+  -d '{"asset":{"name":"Test Subfolder","parent_uid":"blt5982a5db820bba21"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:35 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 42ms
+X-Request-ID: aaf2f4edeeac50c5d4e2a62a32c6f14c
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Folder created successfully.",
+  "asset": {
+    "uid": "bltabb2b39dd1836f57",
+    "created_at": "2026-03-13T02:34:35.352Z",
+    "updated_at": "2026-03-13T02:34:35.352Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/vnd.contenstack.folder",
+    "tags": [],
+    "name": "Test Subfolder",
+    "ACL": {},
+    "is_dir": true,
+    "parent_uid": "blt5982a5db820bba21",
+    "_version": 1
+  }
+}
+
+ Test Context + + + + + + + + + + + + + + + + + + + + +
TestScenarioCreateSubfolder
TestScenarioCreateFolder
StackAPIKeyblt1bca31da998b57a9
FolderUIDblt5982a5db820bba21
FolderUIDblt5982a5db820bba21
+
Passed0.68s
+
✅ Test006_Should_Fetch_Asset
+

Assertions

+
+
AreEqual(CreateAssetAsync_StatusCode)
+
+
Expected:
Created
+
Actual:
Created
+
+
+
+
AreEqual(FetchAsset_StatusCode)
+
+
Expected:
OK
+
Actual:
OK
+
+
+
+
IsNotNull(FetchAsset_ResponseContainsAsset)
+
+
Expected:
NotNull
+
Actual:
{
+  "uid": "blt26b93606f6f75c7f",
+  "created_at": "2026-03-13T02:34:28.284Z",
+  "updated_at": "2026-03-13T02:34:28.284Z",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "content_type": "application/json",
+  "file_size": "1572",
+  "tags": [
+    "async",
+    "test"
+  ],
+  "filename": "async_asset.json",
+  "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt26b93606f6f75c7f/69b377b4e681b9842ab788ee/async_asset.json",
+  "ACL": {
+    "roles": [],
+    "others": {
+      "read": false,
+      "create": false,
+      "update": false,
+      "delete": false,
+      "sub_acl": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "publish": false
+      }
+    }
+  },
+  "is_dir": false,
+  "parent_uid": null,
+  "_version": 1,
+  "title": "Async Asset",
+  "description": "async test asset"
+}
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/assets
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg
+Content-Type: multipart/form-data; boundary="acc46eb5-8afc-4885-8f3c-dbc93fb46e64"
+
Request Body
--acc46eb5-8afc-4885-8f3c-dbc93fb46e64
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8''async_asset.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--acc46eb5-8afc-4885-8f3c-dbc93fb46e64
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+Async Asset
+--acc46eb5-8afc-4885-8f3c-dbc93fb46e64
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+async test asset
+--acc46eb5-8afc-4885-8f3c-dbc93fb46e64
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+async,test
+--acc46eb5-8afc-4885-8f3c-dbc93fb46e64--
+
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/assets' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg' \
+  -H 'Content-Type: multipart/form-data; boundary="acc46eb5-8afc-4885-8f3c-dbc93fb46e64"' \
+  -d '--acc46eb5-8afc-4885-8f3c-dbc93fb46e64
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8'\'''\''async_asset.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--acc46eb5-8afc-4885-8f3c-dbc93fb46e64
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+Async Asset
+--acc46eb5-8afc-4885-8f3c-dbc93fb46e64
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+async test asset
+--acc46eb5-8afc-4885-8f3c-dbc93fb46e64
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+async,test
+--acc46eb5-8afc-4885-8f3c-dbc93fb46e64--
+'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:28 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 115ms
+X-Request-ID: 92f890fbe19fc347dca493ceb39cba51
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Asset created successfully.",
+  "asset": {
+    "uid": "blt26b93606f6f75c7f",
+    "created_at": "2026-03-13T02:34:28.284Z",
+    "updated_at": "2026-03-13T02:34:28.284Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "async",
+      "test"
+    ],
+    "filename": "async_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt26b93606f6f75c7f/69b377b4e681b9842ab788ee/async_asset.json",
+    "ACL": {},
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 1,
+    "title": "Async Asset",
+    "description": "async test asset"
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/assets/blt26b93606f6f75c7f
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/assets/blt26b93606f6f75c7f' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:28 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 26ms
+X-Request-ID: b1c1c3ead1280bd7092fdb1a8cd2a371
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "asset": {
+    "uid": "blt26b93606f6f75c7f",
+    "created_at": "2026-03-13T02:34:28.284Z",
+    "updated_at": "2026-03-13T02:34:28.284Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "async",
+      "test"
+    ],
+    "filename": "async_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt26b93606f6f75c7f/69b377b4e681b9842ab788ee/async_asset.json",
+    "ACL": {
+      "roles": [],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 1,
+    "title": "Async Asset",
+    "description": "async test asset"
+  }
+}
+
+ Test Context + + + + + + + + + + + + + + + + + + + + +
TestScenarioFetchAsset
TestScenarioCreateAssetAsync
StackAPIKeyblt1bca31da998b57a9
AssetUIDblt26b93606f6f75c7f
AssetUIDblt26b93606f6f75c7f
+
Passed0.83s
+
✅ Test003_Should_Create_Custom_Widget
+

Assertions

+
+
AreEqual(CreateCustomWidget_StatusCode)
+
+
Expected:
Created
+
Actual:
Created
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/extensions
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Type: multipart/form-data; boundary="da605e99-83ec-4d70-8004-6b868bfc1ad2"
+
Request Body
--da605e99-83ec-4d70-8004-6b868bfc1ad2
+Content-Type: text/html
+Content-Disposition: form-data; name="extension[upload]"; filename="Custom widget Upload"; filename*=utf-8''Custom%20widget%20Upload
+
+<html>
+<head>
+    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
+    <script
+        src="https://unpkg.com/@contentstack/ui-extensions-sdk@2.2.3/dist/ui-extension-sdk.js"
+        integrity="sha512-LMktiFAj7j/AUFctMlgY8qmLrLIQVctwwCsnCXIWnvgF9JlanilvFbZxOCtPNB5eO3vp2Nhw9ED1UsWa+ltSvQ=="
+        crossorigin="anonymous"
+    ></script>
+    <link
+        rel="stylesheet"
+        type="text/css"
+        href="https://unpkg.com/@contentstack/ui-extensions-sdk/dist/ui-extension-sdk.css"
+        integrity="sha512-yPPI/jWiqPr0HIh+1A2QPP5p58sSYqbPoBykxIuBckT1vzGwNbrOmwYM03qGI4ffnxd7q4kkoDys0kdZzxYn9A=="
+        crossorigin="anonymous"
+    />
+</head>
+<body>
+    <input type="color" id="html5colorpicker" onchange="colorChange()">
+    <script>
+      // initialise Field Extension 
+      window.extensionField = {};
+      // find color input element 
+      var colorPickerElement = document.getElementById("html5colorpicker");
+      ContentstackUIExtension.init().then(function(extension) {
+          // make extension object globally available
+          extensionField = extension;
+          // Get current color field value from Contentstack and update the color picker input element
+          colorPickerElement.value = extensionField.field.getData();
+      }).catch(function(error) {
+          console.log(error);
+      });
+        // On color change event, pass new value to Contentstack
+        function colorChange(){
+          extensionField.field.setData(colorPickerElement.value);      
+        }        
+    </script>
+</body>
+</html>
+--da605e99-83ec-4d70-8004-6b868bfc1ad2
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[title]"
+
+Custom widget Upload
+--da605e99-83ec-4d70-8004-6b868bfc1ad2
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[tags]"
+
+one,two
+--da605e99-83ec-4d70-8004-6b868bfc1ad2
+Content-Type: application/json
+Content-Disposition: form-data
+
+{"content_types":["single_page"]}
+--da605e99-83ec-4d70-8004-6b868bfc1ad2
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[type]"
+
+widget
+--da605e99-83ec-4d70-8004-6b868bfc1ad2--
+
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/extensions' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Type: multipart/form-data; boundary="da605e99-83ec-4d70-8004-6b868bfc1ad2"' \
+  -d '--da605e99-83ec-4d70-8004-6b868bfc1ad2
+Content-Type: text/html
+Content-Disposition: form-data; name="extension[upload]"; filename="Custom widget Upload"; filename*=utf-8'\'''\''Custom%20widget%20Upload
+
+<html>
+<head>
+    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
+    <script
+        src="https://unpkg.com/@contentstack/ui-extensions-sdk@2.2.3/dist/ui-extension-sdk.js"
+        integrity="sha512-LMktiFAj7j/AUFctMlgY8qmLrLIQVctwwCsnCXIWnvgF9JlanilvFbZxOCtPNB5eO3vp2Nhw9ED1UsWa+ltSvQ=="
+        crossorigin="anonymous"
+    ></script>
+    <link
+        rel="stylesheet"
+        type="text/css"
+        href="https://unpkg.com/@contentstack/ui-extensions-sdk/dist/ui-extension-sdk.css"
+        integrity="sha512-yPPI/jWiqPr0HIh+1A2QPP5p58sSYqbPoBykxIuBckT1vzGwNbrOmwYM03qGI4ffnxd7q4kkoDys0kdZzxYn9A=="
+        crossorigin="anonymous"
+    />
+</head>
+<body>
+    <input type="color" id="html5colorpicker" onchange="colorChange()">
+    <script>
+      // initialise Field Extension 
+      window.extensionField = {};
+      // find color input element 
+      var colorPickerElement = document.getElementById("html5colorpicker");
+      ContentstackUIExtension.init().then(function(extension) {
+          // make extension object globally available
+          extensionField = extension;
+          // Get current color field value from Contentstack and update the color picker input element
+          colorPickerElement.value = extensionField.field.getData();
+      }).catch(function(error) {
+          console.log(error);
+      });
+        // On color change event, pass new value to Contentstack
+        function colorChange(){
+          extensionField.field.setData(colorPickerElement.value);      
+        }        
+    </script>
+</body>
+</html>
+--da605e99-83ec-4d70-8004-6b868bfc1ad2
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[title]"
+
+Custom widget Upload
+--da605e99-83ec-4d70-8004-6b868bfc1ad2
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[tags]"
+
+one,two
+--da605e99-83ec-4d70-8004-6b868bfc1ad2
+Content-Type: application/json
+Content-Disposition: form-data
+
+{"content_types":["single_page"]}
+--da605e99-83ec-4d70-8004-6b868bfc1ad2
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[type]"
+
+widget
+--da605e99-83ec-4d70-8004-6b868bfc1ad2--
+'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:27 GMT
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 49ms
+X-Request-ID: e88ac621-ccf7-482b-9b37-461d25abfbb9
+x-server-name: extensions-microservice
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Server: contentstack
+Content-Type: application/json; charset=utf-8
+Content-Length: 2005
+
Response Body +
{
+  "notice": "Extension created successfully.",
+  "extension": {
+    "uid": "bltc06a7b6a06412597",
+    "created_at": "2026-03-13T02:34:27.053Z",
+    "updated_at": "2026-03-13T02:34:27.053Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "tags": [
+      "one",
+      "two"
+    ],
+    "_version": 1,
+    "title": "Custom widget Upload",
+    "config": {},
+    "type": "widget",
+    "scope": {
+      "content_types": [
+        "$all"
+      ]
+    },
+    "srcdoc": "<html>\n<head>\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"/>\n    <script\n        src=\"https://unpkg.com/@contentstack/ui-extensions-sdk@2.2.3/dist/ui-extension-sdk.js\"\n        integrity=\"sha512-LMktiFAj7j/AUFctMlgY8qmLrLIQVctwwCsnCXIWnvgF9JlanilvFbZxOCtPNB5eO3vp2Nhw9ED1UsWa+ltSvQ==\"\n        crossorigin=\"anonymous\"\n    ></script>\n    <link\n        rel=\"stylesheet\"\n        type=\"text/css\"\n        href=\"https://unpkg.com/@contentstack/ui-extensions-sdk/dist/ui-extension-sdk.css\"\n        integrity=\"sha512-yPPI/jWiqPr0HIh+1A2QPP5p58sSYqbPoBykxIuBckT1vzGwNbrOmwYM03qGI4ffnxd7q4kkoDys0kdZzxYn9A==\"\n        crossorigin=\"anonymous\"\n    />\n</head>\n<body>\n    <input type=\"color\" id=\"html5colorpicker\" onchange=\"colorChange()\">\n    <script>\n      // initialise Field Extension \n      window.extensionField = {};\n      // find color input element \n      var colorPickerElement = document.getElementById(\"html5colorpicker\");\n      ContentstackUIExtension.init().then(function(extension) {\n          // make extension object globally available\n          extensionField = extension;\n          // Get current color field value from Contentstack and update the color picker input element\n          colorPickerElement.value = extensionField.field.getData();\n      }).catch(function(error) {\n          console.log(error);\n      });\n        // On color change event, pass new value to Contentstack\n        function colorChange(){\n          extensionField.field.setData(colorPickerElement.value);      \n        }        \n    </script>\n</body>\n</html>"
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioCreateCustomWidget
StackAPIKeyblt1bca31da998b57a9
+
Passed0.35s
+
✅ Test016_Should_Fetch_Folder
+

Assertions

+
+
AreEqual(CreateFolder_StatusCode)
+
+
Expected:
Created
+
Actual:
Created
+
+
+
+
AreEqual(FetchFolder_StatusCode)
+
+
Expected:
OK
+
Actual:
OK
+
+
+
+
IsNotNull(FetchFolder_ResponseContainsFolder)
+
+
Expected:
NotNull
+
Actual:
{
+  "uid": "blt4ced123bdfbf0299",
+  "created_at": "2026-03-13T02:34:35.674Z",
+  "updated_at": "2026-03-13T02:34:35.674Z",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "content_type": "application/vnd.contenstack.folder",
+  "tags": [],
+  "name": "Test Folder",
+  "ACL": {
+    "roles": [],
+    "others": {
+      "read": false,
+      "create": false,
+      "update": false,
+      "delete": false,
+      "sub_acl": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "publish": false
+      }
+    }
+  },
+  "is_dir": true,
+  "parent_uid": null,
+  "_version": 1
+}
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/assets/folders
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 32
+Content-Type: application/json
+
Request Body
{"asset":{"name":"Test Folder"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/assets/folders' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 32' \
+  -H 'Content-Type: application/json' \
+  -d '{"asset":{"name":"Test Folder"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:35 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 37ms
+X-Request-ID: b4d7e538695210176c66893f0d5b09bd
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Folder created successfully.",
+  "asset": {
+    "uid": "blt4ced123bdfbf0299",
+    "created_at": "2026-03-13T02:34:35.674Z",
+    "updated_at": "2026-03-13T02:34:35.674Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/vnd.contenstack.folder",
+    "tags": [],
+    "name": "Test Folder",
+    "ACL": {},
+    "is_dir": true,
+    "parent_uid": null,
+    "_version": 1
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/assets/folders/blt4ced123bdfbf0299
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/assets/folders/blt4ced123bdfbf0299' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:35 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 20ms
+X-Request-ID: 8b96e00dfb325d21d4f35c47a6269ec2
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "asset": {
+    "uid": "blt4ced123bdfbf0299",
+    "created_at": "2026-03-13T02:34:35.674Z",
+    "updated_at": "2026-03-13T02:34:35.674Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/vnd.contenstack.folder",
+    "tags": [],
+    "name": "Test Folder",
+    "ACL": {
+      "roles": [],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "is_dir": true,
+    "parent_uid": null,
+    "_version": 1
+  }
+}
+
+ Test Context + + + + + + + + + + + + + + + + + + + + +
TestScenarioFetchFolder
TestScenarioCreateFolder
StackAPIKeyblt1bca31da998b57a9
FolderUIDblt4ced123bdfbf0299
FolderUIDblt4ced123bdfbf0299
+
Passed0.61s
+
✅ Test011_Should_Query_Assets_With_Parameters
+

Assertions

+
+
AreEqual(QueryAssetsWithParams_StatusCode)
+
+
Expected:
OK
+
Actual:
OK
+
+
+
+
IsNotNull(QueryAssetsWithParams_ResponseContainsAssets)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "uid": "blt2e420180c49b97d1",
+    "created_at": "2026-03-13T02:34:30.71Z",
+    "updated_at": "2026-03-13T02:34:31.14Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "async",
+      "updated",
+      "test"
+    ],
+    "filename": "async_updated_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2e420180c49b97d1/69b377b7b2e2a87a96adc169/async_updated_asset.json",
+    "ACL": {
+      "roles": [],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 2,
+    "title": "Async Updated Asset",
+    "description": "async updated test asset"
+  },
+  {
+    "uid": "bltc01c5126ad87ad39",
+    "created_at": "2026-03-13T02:34:29.829Z",
+    "updated_at": "2026-03-13T02:34:30.289Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "updated",
+      "test"
+    ],
+    "filename": "updated_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/bltc01c5126ad87ad39/69b377b6bf5153293e7b212e/updated_asset.json",
+    "ACL": {
+      "roles": [],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 2,
+    "title": "Updated Asset",
+    "description": "updated test asset"
+  },
+  {
+    "uid": "blt2c699da2d244de83",
+    "created_at": "2026-03-13T02:34:29.113Z",
+    "updated_at": "2026-03-13T02:34:29.113Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "async",
+      "test"
+    ],
+    "filename": "async_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2c699da2d244de83/69b377b5b1f4aa06332600f8/async_asset.json",
+    "ACL": {
+      "roles": [],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 1,
+    "title": "Async Asset",
+    "description": "async test asset"
+  },
+  {
+    "uid": "blt26b93606f6f75c7f",
+    "created_at": "2026-03-13T02:34:28.284Z",
+    "updated_at": "2026-03-13T02:34:28.284Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "async",
+      "test"
+    ],
+    "filename": "async_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt26b93606f6f75c7f/69b377b4e681b9842ab788ee/async_asset.json",
+    "ACL": {
+      "roles": [],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 1,
+    "title": "Async Asset",
+    "description": "async test asset"
+  },
+  {
+    "uid": "blt9676221935fa638d",
+    "created_at": "2026-03-13T02:34:27.747Z",
+    "updated_at": "2026-03-13T02:34:27.747Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "async",
+      "test"
+    ],
+    "filename": "async_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt9676221935fa638d/69b377b35a9c0e27a035ff10/async_asset.json",
+    "ACL": {
+      "roles": [],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 1,
+    "title": "Async Asset",
+    "description": "async test asset"
+  }
+]
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/assets?limit=5&skip=0
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/assets?limit=5&skip=0' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:31 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 25ms
+X-Request-ID: 985792d7f855d752a94fff34fb21acd7
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{"assets":[{"uid":"blt2e420180c49b97d1","created_at":"2026-03-13T02:34:30.710Z","updated_at":"2026-03-13T02:34:31.140Z","created_by":"blt1930fc55e5669df9","updated_by":"blt1930fc55e5669df9","content_type":"application/json","file_size":"1572","tags":["async","updated","test"],"filename":"async_updated_asset.json","url":"https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2e420180c49b97d1/69b377b7b2e2a87a96adc169/async_updated_asset.json","ACL":{"roles":[],"others":{"read":false,"create":false,"update":false,"delete":false,"sub_acl":{"read":false,"create":false,"update":false,"delete":false,"publish":false}}},"is_dir":false,"parent_uid":null,"_version":2,"title":"Async Updated Asset","description":"async updated test asset"},{"uid":"bltc01c5126ad87ad39","created_at":"2026-03-13T02:34:29.829Z","updated_at":"2026-03-13T02:34:30.289Z","created_by":"blt1930fc55e5669df9","updated_by":"blt1930fc55e5669df9","content_type":"application/json","file_size":"1572","tags":["updated","test"],"filename":"updated_asset.json","url":"https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/bltc01c5126ad87ad39/69b377b6bf5153293e7b212e/updated_asset.json","ACL":{"roles":[],"others":{"read":false,"create":false,"update":false,"delete":false,"sub_acl":{"read":false,"create":false,"update":false,"delete":false,"publish":false}}},"is_dir":false,"parent_uid":null,"_version":2,"title":"Updated Asset","description":"updated test asset"},{"uid":"blt2c699da2d244de83","created_at":"2026-03-13T02:34:29.113Z","updated_at":"2026-03-13T02:34:29.113Z","created_by":"blt1930fc55e5669df9","updated_by":"blt1930fc55e5669df9","content_type":"application/json","file_size":"1572","tags":["async","test"],"filename":"async_asset.json","url":"https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2c699da2d244de83/69b377b5b1f4aa06332600f8/async_asset.json","ACL":{"roles":[],"others":{"read":false,"create":false,"update":false,"delete":false,"sub_acl":{"read":false,"create":false,"update":false,"delete":false,"publish":false}}},"is_dir":false,"parent_uid":null,"_version":1,"title":"Async Asset","description":"async test asset"},{"uid":"blt26b93606f6f75c7f","created_at":"2026-03-13T02:34:28.284Z","updated_at":"2026-03-13T02:34:28.284Z","created_by":"blt1930fc55e5669df9","updated_by":"blt1930fc55e5669df9","content_type":"application/json","file_size":"1572","tags":["async","test"],"filename":"async_asset.json","url":"https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt26b93606f6f75c7f/69b377b4e681b9842ab788ee/async_asset.json","ACL":{"roles":[],"others":{"read":false,"create":false,"update":false,"delete":false,"sub_acl":{"read":false,"create":false,"update":false,"delete":false,"publish":false}}},"is_dir":false,"parent_uid":null,"_version":1,"title":"Async Asset","description":"async test asset"},{"uid":"blt9676221935fa638d","created_at":"2026-03-13T02:34:27.747Z","updated_at":"2026-03-13T02:34:27.747Z","created_by":"blt1930fc55e5669df9","updated_by":"blt1930
+
+ Test Context + + + + + + + + +
TestScenarioQueryAssetsWithParameters
StackAPIKeyblt1bca31da998b57a9
+
Passed0.37s
+
✅ Test012_Should_Delete_Asset
+

Assertions

+
+
AreEqual(CreateAssetAsync_StatusCode)
+
+
Expected:
Created
+
Actual:
Created
+
+
+
+
AreEqual(DeleteAsset_StatusCode)
+
+
Expected:
OK
+
Actual:
OK
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/assets
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Type: multipart/form-data; boundary="8a106e61-89f8-410f-b173-c007b0536b13"
+
Request Body
--8a106e61-89f8-410f-b173-c007b0536b13
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8''async_asset.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--8a106e61-89f8-410f-b173-c007b0536b13
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+Async Asset
+--8a106e61-89f8-410f-b173-c007b0536b13
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+async test asset
+--8a106e61-89f8-410f-b173-c007b0536b13
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+async,test
+--8a106e61-89f8-410f-b173-c007b0536b13--
+
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/assets' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Type: multipart/form-data; boundary="8a106e61-89f8-410f-b173-c007b0536b13"' \
+  -d '--8a106e61-89f8-410f-b173-c007b0536b13
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8'\'''\''async_asset.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--8a106e61-89f8-410f-b173-c007b0536b13
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+Async Asset
+--8a106e61-89f8-410f-b173-c007b0536b13
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+async test asset
+--8a106e61-89f8-410f-b173-c007b0536b13
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+async,test
+--8a106e61-89f8-410f-b173-c007b0536b13--
+'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:32 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 118ms
+X-Request-ID: 7d790ba0589238dc32cb201c137e5815
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Asset created successfully.",
+  "asset": {
+    "uid": "blt921c1f03ec1e9c52",
+    "created_at": "2026-03-13T02:34:32.249Z",
+    "updated_at": "2026-03-13T02:34:32.249Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "async",
+      "test"
+    ],
+    "filename": "async_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt921c1f03ec1e9c52/69b377b8ad2a75109667a6e5/async_asset.json",
+    "ACL": {},
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 1,
+    "title": "Async Asset",
+    "description": "async test asset"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/assets/blt921c1f03ec1e9c52
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/assets/blt921c1f03ec1e9c52' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:33 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 59ms
+X-Request-ID: ea3855da29f370f300e4c6ae3ac25944
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Asset deleted successfully."
+}
+
+ Test Context + + + + + + + + + + + + + + + + + + + + +
TestScenarioDeleteAsset
TestScenarioCreateAssetAsync
StackAPIKeyblt1bca31da998b57a9
AssetUIDblt921c1f03ec1e9c52
AssetUIDblt921c1f03ec1e9c52
+
Passed1.15s
+
✅ Test019_Should_Update_Folder_Async
+

Assertions

+
+
AreEqual(CreateFolder_StatusCode)
+
+
Expected:
Created
+
Actual:
Created
+
+
+
+
AreEqual(UpdateFolderAsync_StatusCode)
+
+
Expected:
Created
+
Actual:
Created
+
+
+
+
IsNotNull(UpdateFolderAsync_ResponseContainsFolder)
+
+
Expected:
NotNull
+
Actual:
{
+  "uid": "blt39c32a858165c368",
+  "created_at": "2026-03-13T02:34:37.802Z",
+  "updated_at": "2026-03-13T02:34:37.802Z",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "content_type": "application/vnd.contenstack.folder",
+  "tags": [],
+  "name": "Async Updated Test Folder",
+  "ACL": {},
+  "is_dir": true,
+  "parent_uid": null,
+  "_version": 1
+}
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/assets/folders
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 32
+Content-Type: application/json
+
Request Body
{"asset":{"name":"Test Folder"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/assets/folders' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 32' \
+  -H 'Content-Type: application/json' \
+  -d '{"asset":{"name":"Test Folder"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:37 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 33ms
+X-Request-ID: f0ee147ee89ddc59d44147b053d3f4d7
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Folder created successfully.",
+  "asset": {
+    "uid": "blt341b893a19bab016",
+    "created_at": "2026-03-13T02:34:37.494Z",
+    "updated_at": "2026-03-13T02:34:37.494Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/vnd.contenstack.folder",
+    "tags": [],
+    "name": "Test Folder",
+    "ACL": {},
+    "is_dir": true,
+    "parent_uid": null,
+    "_version": 1
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/assets/folders
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 46
+Content-Type: application/json
+
Request Body
{"asset":{"name":"Async Updated Test Folder"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/assets/folders' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 46' \
+  -H 'Content-Type: application/json' \
+  -d '{"asset":{"name":"Async Updated Test Folder"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:37 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 33ms
+X-Request-ID: 8a1d2a7d23f3aeeb05f49491eb84cc56
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Folder created successfully.",
+  "asset": {
+    "uid": "blt39c32a858165c368",
+    "created_at": "2026-03-13T02:34:37.802Z",
+    "updated_at": "2026-03-13T02:34:37.802Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/vnd.contenstack.folder",
+    "tags": [],
+    "name": "Async Updated Test Folder",
+    "ACL": {},
+    "is_dir": true,
+    "parent_uid": null,
+    "_version": 1
+  }
+}
+
+ Test Context + + + + + + + + + + + + + + + + + + + + +
TestScenarioUpdateFolderAsync
TestScenarioCreateFolder
StackAPIKeyblt1bca31da998b57a9
FolderUIDblt341b893a19bab016
FolderUIDblt341b893a19bab016
+
Passed0.62s
+
✅ Test030_Should_Handle_Empty_Query_Results
+

Assertions

+
+
AreEqual(EmptyQuery_StatusCode)
+
+
Expected:
OK
+
Actual:
OK
+
+
+
+
IsNotNull(EmptyQuery_ResponseContainsAssets)
+
+
Expected:
NotNull
+
Actual:
[]
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/assets?limit=1&skip=999999
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/assets?limit=1&skip=999999' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:41 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 24ms
+X-Request-ID: eee36e8f60362016cd01750b887883bb
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "assets": []
+}
+
+ Test Context + + + + + + + + +
TestScenarioHandleEmptyQueryResults
StackAPIKeyblt1bca31da998b57a9
+
Passed0.30s
+
✅ Test001_Should_Create_Asset
+

Assertions

+
+
AreEqual(CreateAsset_StatusCode)
+
+
Expected:
Created
+
Actual:
Created
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/assets
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Type: multipart/form-data; boundary="ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39"
+
Request Body
--ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=contentTypeSchema.json; filename*=utf-8''contentTypeSchema.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+New.json
+--ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+new test desc
+--ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+one,two
+--ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39--
+
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/assets' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Type: multipart/form-data; boundary="ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39"' \
+  -d '--ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=contentTypeSchema.json; filename*=utf-8'\'''\''contentTypeSchema.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+New.json
+--ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+new test desc
+--ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+one,two
+--ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39--
+'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:26 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 235ms
+X-Request-ID: 3996abef01c763f593596fa9ddd2d08a
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Asset created successfully.",
+  "asset": {
+    "uid": "blt519b0e8d8e93d82a",
+    "created_at": "2026-03-13T02:34:26.178Z",
+    "updated_at": "2026-03-13T02:34:26.178Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "one",
+      "two"
+    ],
+    "filename": "contentTypeSchema.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt519b0e8d8e93d82a/69b377b2b2e2a810aeadc167/contentTypeSchema.json",
+    "ACL": {},
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 1,
+    "title": "New.json",
+    "description": "new test desc"
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioCreateAsset
StackAPIKeyblt1bca31da998b57a9
+
Passed0.52s
+
✅ Test022_Should_Delete_Folder
+

Assertions

+
+
AreEqual(CreateFolder_StatusCode)
+
+
Expected:
Created
+
Actual:
Created
+
+
+
+
AreEqual(DeleteFolder_StatusCode)
+
+
Expected:
OK
+
Actual:
OK
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/assets/folders
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 32
+Content-Type: application/json
+
Request Body
{"asset":{"name":"Test Folder"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/assets/folders' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 32' \
+  -H 'Content-Type: application/json' \
+  -d '{"asset":{"name":"Test Folder"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:38 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 31ms
+X-Request-ID: da9d44934febc49fd9885946ee52b89d
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Folder created successfully.",
+  "asset": {
+    "uid": "bltb806354a4dbcafc7",
+    "created_at": "2026-03-13T02:34:38.116Z",
+    "updated_at": "2026-03-13T02:34:38.116Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/vnd.contenstack.folder",
+    "tags": [],
+    "name": "Test Folder",
+    "ACL": {},
+    "is_dir": true,
+    "parent_uid": null,
+    "_version": 1
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/assets/folders/bltb806354a4dbcafc7
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/assets/folders/bltb806354a4dbcafc7' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:38 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 60ms
+X-Request-ID: e572756cf178c0f456b7f48dc2b0294e
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Folder deleted successfully."
+}
+
+ Test Context + + + + + + + + + + + + + + + + + + + + +
TestScenarioDeleteFolder
TestScenarioCreateFolder
StackAPIKeyblt1bca31da998b57a9
FolderUIDbltb806354a4dbcafc7
FolderUIDbltb806354a4dbcafc7
+
Passed0.63s
+
✅ Test007_Should_Fetch_Asset_Async
+

Assertions

+
+
AreEqual(CreateAssetAsync_StatusCode)
+
+
Expected:
Created
+
Actual:
Created
+
+
+
+
AreEqual(FetchAssetAsync_StatusCode)
+
+
Expected:
OK
+
Actual:
OK
+
+
+
+
IsNotNull(FetchAssetAsync_ResponseContainsAsset)
+
+
Expected:
NotNull
+
Actual:
{
+  "uid": "blt2c699da2d244de83",
+  "created_at": "2026-03-13T02:34:29.113Z",
+  "updated_at": "2026-03-13T02:34:29.113Z",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "content_type": "application/json",
+  "file_size": "1572",
+  "tags": [
+    "async",
+    "test"
+  ],
+  "filename": "async_asset.json",
+  "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2c699da2d244de83/69b377b5b1f4aa06332600f8/async_asset.json",
+  "ACL": {
+    "roles": [],
+    "others": {
+      "read": false,
+      "create": false,
+      "update": false,
+      "delete": false,
+      "sub_acl": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "publish": false
+      }
+    }
+  },
+  "is_dir": false,
+  "parent_uid": null,
+  "_version": 1,
+  "title": "Async Asset",
+  "description": "async test asset"
+}
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/assets
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg
+Content-Type: multipart/form-data; boundary="474c2ce4-0273-4aae-b27e-60d89aa3e1f2"
+
Request Body
--474c2ce4-0273-4aae-b27e-60d89aa3e1f2
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8''async_asset.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--474c2ce4-0273-4aae-b27e-60d89aa3e1f2
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+Async Asset
+--474c2ce4-0273-4aae-b27e-60d89aa3e1f2
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+async test asset
+--474c2ce4-0273-4aae-b27e-60d89aa3e1f2
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+async,test
+--474c2ce4-0273-4aae-b27e-60d89aa3e1f2--
+
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/assets' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Type: multipart/form-data; boundary="474c2ce4-0273-4aae-b27e-60d89aa3e1f2"' \
+  -d '--474c2ce4-0273-4aae-b27e-60d89aa3e1f2
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8'\'''\''async_asset.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--474c2ce4-0273-4aae-b27e-60d89aa3e1f2
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+Async Asset
+--474c2ce4-0273-4aae-b27e-60d89aa3e1f2
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+async test asset
+--474c2ce4-0273-4aae-b27e-60d89aa3e1f2
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+async,test
+--474c2ce4-0273-4aae-b27e-60d89aa3e1f2--
+'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:29 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 125ms
+X-Request-ID: cfe0394ab3a2fe28e555ced0b2f18ae1
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Asset created successfully.",
+  "asset": {
+    "uid": "blt2c699da2d244de83",
+    "created_at": "2026-03-13T02:34:29.113Z",
+    "updated_at": "2026-03-13T02:34:29.113Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "async",
+      "test"
+    ],
+    "filename": "async_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2c699da2d244de83/69b377b5b1f4aa06332600f8/async_asset.json",
+    "ACL": {},
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 1,
+    "title": "Async Asset",
+    "description": "async test asset"
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/assets/blt2c699da2d244de83
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/assets/blt2c699da2d244de83' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:29 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 28ms
+X-Request-ID: 02147ef4b2f04db55d2f7763a743922e
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "asset": {
+    "uid": "blt2c699da2d244de83",
+    "created_at": "2026-03-13T02:34:29.113Z",
+    "updated_at": "2026-03-13T02:34:29.113Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "async",
+      "test"
+    ],
+    "filename": "async_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2c699da2d244de83/69b377b5b1f4aa06332600f8/async_asset.json",
+    "ACL": {
+      "roles": [],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 1,
+    "title": "Async Asset",
+    "description": "async test asset"
+  }
+}
+
+ Test Context + + + + + + + + + + + + + + + + + + + + +
TestScenarioFetchAssetAsync
TestScenarioCreateAssetAsync
StackAPIKeyblt1bca31da998b57a9
AssetUIDblt2c699da2d244de83
AssetUIDblt2c699da2d244de83
+
Passed0.70s
+
✅ Test027_Should_Handle_Asset_Creation_With_Invalid_File
+

Assertions

+
+
IsTrue(InvalidFileAsset_ExceptionMessage)
+
+
Expected:
True
+
Actual:
True
+
+
+
+ Test Context + + + + + + + + +
TestScenarioHandleAssetCreationWithInvalidFile
InvalidFilePath/Users/om.pawar/Desktop/SDKs/contentstack-management-dotnet/Contentstack.Management.Core.Tests/bin/Debug/net7.0/non_existent_file.json
+
Passed0.00s
+
✅ Test013_Should_Delete_Asset_Async
+

Assertions

+
+
AreEqual(DeleteAssetAsync_StatusCode)
+
+
Expected:
OK
+
Actual:
OK
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/assets
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Type: multipart/form-data; boundary="f17dd384-ce60-4393-9b15-d22429ff2a83"
+
Request Body
--f17dd384-ce60-4393-9b15-d22429ff2a83
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=delete_asset.json; filename*=utf-8''delete_asset.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--f17dd384-ce60-4393-9b15-d22429ff2a83
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+Delete Asset
+--f17dd384-ce60-4393-9b15-d22429ff2a83
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+asset for deletion
+--f17dd384-ce60-4393-9b15-d22429ff2a83
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+delete,test
+--f17dd384-ce60-4393-9b15-d22429ff2a83--
+
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/assets' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Type: multipart/form-data; boundary="f17dd384-ce60-4393-9b15-d22429ff2a83"' \
+  -d '--f17dd384-ce60-4393-9b15-d22429ff2a83
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=delete_asset.json; filename*=utf-8'\'''\''delete_asset.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--f17dd384-ce60-4393-9b15-d22429ff2a83
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+Delete Asset
+--f17dd384-ce60-4393-9b15-d22429ff2a83
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+asset for deletion
+--f17dd384-ce60-4393-9b15-d22429ff2a83
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+delete,test
+--f17dd384-ce60-4393-9b15-d22429ff2a83--
+'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:33 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 122ms
+X-Request-ID: a37821d44ea233dc6a1b646a7d9b2505
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Asset created successfully.",
+  "asset": {
+    "uid": "blt073200223249ec51",
+    "created_at": "2026-03-13T02:34:33.792Z",
+    "updated_at": "2026-03-13T02:34:33.792Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "delete",
+      "test"
+    ],
+    "filename": "delete_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt073200223249ec51/69b377b9eb0dcfe99915e77d/delete_asset.json",
+    "ACL": {},
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 1,
+    "title": "Delete Asset",
+    "description": "asset for deletion"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/assets/blt073200223249ec51
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/assets/blt073200223249ec51' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:34 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 51ms
+X-Request-ID: 3424f3251478da56d032535e1baf6ca4
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Asset deleted successfully."
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioDeleteAssetAsync
StackAPIKeyblt1bca31da998b57a9
AssetUIDblt073200223249ec51
+
Passed1.23s
+
✅ Test002_Should_Create_Dashboard
+

Assertions

+
+
AreEqual(CreateDashboard_StatusCode)
+
+
Expected:
Created
+
Actual:
Created
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/extensions
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Type: multipart/form-data; boundary="be4f78e6-b073-4a34-aedc-3334f2b34a8b"
+
Request Body
--be4f78e6-b073-4a34-aedc-3334f2b34a8b
+Content-Type: text/html
+Content-Disposition: form-data; name="extension[upload]"; filename=Dashboard; filename*=utf-8''Dashboard
+
+<html>
+<head>
+    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
+    <script
+        src="https://unpkg.com/@contentstack/ui-extensions-sdk@2.2.3/dist/ui-extension-sdk.js"
+        integrity="sha512-LMktiFAj7j/AUFctMlgY8qmLrLIQVctwwCsnCXIWnvgF9JlanilvFbZxOCtPNB5eO3vp2Nhw9ED1UsWa+ltSvQ=="
+        crossorigin="anonymous"
+    ></script>
+    <link
+        rel="stylesheet"
+        type="text/css"
+        href="https://unpkg.com/@contentstack/ui-extensions-sdk/dist/ui-extension-sdk.css"
+        integrity="sha512-yPPI/jWiqPr0HIh+1A2QPP5p58sSYqbPoBykxIuBckT1vzGwNbrOmwYM03qGI4ffnxd7q4kkoDys0kdZzxYn9A=="
+        crossorigin="anonymous"
+    />
+</head>
+<body>
+    <input type="color" id="html5colorpicker" onchange="colorChange()">
+    <script>
+      // initialise Field Extension 
+      window.extensionField = {};
+      // find color input element 
+      var colorPickerElement = document.getElementById("html5colorpicker");
+      ContentstackUIExtension.init().then(function(extension) {
+          // make extension object globally available
+          extensionField = extension;
+          // Get current color field value from Contentstack and update the color picker input element
+          colorPickerElement.value = extensionField.field.getData();
+      }).catch(function(error) {
+          console.log(error);
+      });
+        // On color change event, pass new value to Contentstack
+        function colorChange(){
+          extensionField.field.setData(colorPickerElement.value);      
+        }        
+    </script>
+</body>
+</html>
+--be4f78e6-b073-4a34-aedc-3334f2b34a8b
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[title]"
+
+Dashboard
+--be4f78e6-b073-4a34-aedc-3334f2b34a8b
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[tags]"
+
+one,two
+--be4f78e6-b073-4a34-aedc-3334f2b34a8b
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[default_width]"
+
+half
+--be4f78e6-b073-4a34-aedc-3334f2b34a8b
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[enable]"
+
+true
+--be4f78e6-b073-4a34-aedc-3334f2b34a8b
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[type]"
+
+dashboard
+--be4f78e6-b073-4a34-aedc-3334f2b34a8b--
+
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/extensions' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Type: multipart/form-data; boundary="be4f78e6-b073-4a34-aedc-3334f2b34a8b"' \
+  -d '--be4f78e6-b073-4a34-aedc-3334f2b34a8b
+Content-Type: text/html
+Content-Disposition: form-data; name="extension[upload]"; filename=Dashboard; filename*=utf-8'\'''\''Dashboard
+
+<html>
+<head>
+    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
+    <script
+        src="https://unpkg.com/@contentstack/ui-extensions-sdk@2.2.3/dist/ui-extension-sdk.js"
+        integrity="sha512-LMktiFAj7j/AUFctMlgY8qmLrLIQVctwwCsnCXIWnvgF9JlanilvFbZxOCtPNB5eO3vp2Nhw9ED1UsWa+ltSvQ=="
+        crossorigin="anonymous"
+    ></script>
+    <link
+        rel="stylesheet"
+        type="text/css"
+        href="https://unpkg.com/@contentstack/ui-extensions-sdk/dist/ui-extension-sdk.css"
+        integrity="sha512-yPPI/jWiqPr0HIh+1A2QPP5p58sSYqbPoBykxIuBckT1vzGwNbrOmwYM03qGI4ffnxd7q4kkoDys0kdZzxYn9A=="
+        crossorigin="anonymous"
+    />
+</head>
+<body>
+    <input type="color" id="html5colorpicker" onchange="colorChange()">
+    <script>
+      // initialise Field Extension 
+      window.extensionField = {};
+      // find color input element 
+      var colorPickerElement = document.getElementById("html5colorpicker");
+      ContentstackUIExtension.init().then(function(extension) {
+          // make extension object globally available
+          extensionField = extension;
+          // Get current color field value from Contentstack and update the color picker input element
+          colorPickerElement.value = extensionField.field.getData();
+      }).catch(function(error) {
+          console.log(error);
+      });
+        // On color change event, pass new value to Contentstack
+        function colorChange(){
+          extensionField.field.setData(colorPickerElement.value);      
+        }        
+    </script>
+</body>
+</html>
+--be4f78e6-b073-4a34-aedc-3334f2b34a8b
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[title]"
+
+Dashboard
+--be4f78e6-b073-4a34-aedc-3334f2b34a8b
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[tags]"
+
+one,two
+--be4f78e6-b073-4a34-aedc-3334f2b34a8b
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[default_width]"
+
+half
+--be4f78e6-b073-4a34-aedc-3334f2b34a8b
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[enable]"
+
+true
+--be4f78e6-b073-4a34-aedc-3334f2b34a8b
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="extension[type]"
+
+dashboard
+--be4f78e6-b073-4a34-aedc-3334f2b34a8b--
+'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:26 GMT
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 53ms
+X-Request-ID: 43fcffee-72bc-4507-95b5-06a89c6e3cc0
+x-server-name: extensions-microservice
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Server: contentstack
+Content-Type: application/json; charset=utf-8
+Content-Length: 1999
+
Response Body +
{
+  "notice": "Extension created successfully.",
+  "extension": {
+    "uid": "blt46b330ae484cc40a",
+    "created_at": "2026-03-13T02:34:26.707Z",
+    "updated_at": "2026-03-13T02:34:26.707Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "tags": [
+      "one",
+      "two"
+    ],
+    "_version": 1,
+    "title": "Dashboard",
+    "config": {},
+    "type": "dashboard",
+    "enable": true,
+    "default_width": "half",
+    "srcdoc": "<html>\n<head>\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"/>\n    <script\n        src=\"https://unpkg.com/@contentstack/ui-extensions-sdk@2.2.3/dist/ui-extension-sdk.js\"\n        integrity=\"sha512-LMktiFAj7j/AUFctMlgY8qmLrLIQVctwwCsnCXIWnvgF9JlanilvFbZxOCtPNB5eO3vp2Nhw9ED1UsWa+ltSvQ==\"\n        crossorigin=\"anonymous\"\n    ></script>\n    <link\n        rel=\"stylesheet\"\n        type=\"text/css\"\n        href=\"https://unpkg.com/@contentstack/ui-extensions-sdk/dist/ui-extension-sdk.css\"\n        integrity=\"sha512-yPPI/jWiqPr0HIh+1A2QPP5p58sSYqbPoBykxIuBckT1vzGwNbrOmwYM03qGI4ffnxd7q4kkoDys0kdZzxYn9A==\"\n        crossorigin=\"anonymous\"\n    />\n</head>\n<body>\n    <input type=\"color\" id=\"html5colorpicker\" onchange=\"colorChange()\">\n    <script>\n      // initialise Field Extension \n      window.extensionField = {};\n      // find color input element \n      var colorPickerElement = document.getElementById(\"html5colorpicker\");\n      ContentstackUIExtension.init().then(function(extension) {\n          // make extension object globally available\n          extensionField = extension;\n          // Get current color field value from Contentstack and update the color picker input element\n          colorPickerElement.value = extensionField.field.getData();\n      }).catch(function(error) {\n          console.log(error);\n      });\n        // On color change event, pass new value to Contentstack\n        function colorChange(){\n          extensionField.field.setData(colorPickerElement.value);      \n        }        \n    </script>\n</body>\n</html>"
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioCreateDashboard
StackAPIKeyblt1bca31da998b57a9
+
Passed0.35s
+
✅ Test026_Should_Handle_Invalid_Folder_Operations
+

Assertions

+
+
IsTrue(InvalidFolderFetch_ExceptionThrown)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/assets/folders/invalid_folder_uid_12345
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/assets/folders/invalid_folder_uid_12345' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
404 Not Found
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:40 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 23ms
+X-Request-ID: 17eaa6d5155a0e21a789e834364cb471
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Folder was not found",
+  "error_code": 145,
+  "errors": {
+    "uid": [
+      "is not valid."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/assets/folders
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 35
+Content-Type: application/json
+
Request Body
{"asset":{"name":"Invalid Folder"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/assets/folders' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 35' \
+  -H 'Content-Type: application/json' \
+  -d '{"asset":{"name":"Invalid Folder"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:40 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 39ms
+X-Request-ID: 45b8487448f8a445971422b44fa15fc3
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Folder created successfully.",
+  "asset": {
+    "uid": "blt878f6a7e3ce90604",
+    "created_at": "2026-03-13T02:34:40.670Z",
+    "updated_at": "2026-03-13T02:34:40.670Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/vnd.contenstack.folder",
+    "tags": [],
+    "name": "Invalid Folder",
+    "ACL": {},
+    "is_dir": true,
+    "parent_uid": null,
+    "_version": 1
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/assets/folders/invalid_folder_uid_12345
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/assets/folders/invalid_folder_uid_12345' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
404 Not Found
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:40 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 21ms
+X-Request-ID: 6be5c7b63ab9fdbfb1ef2147d3d12860
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Folder was not found",
+  "error_code": 145,
+  "errors": {
+    "uid": [
+      "is not valid."
+    ]
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioHandleInvalidFolderOperations
InvalidFolderUIDinvalid_folder_uid_12345
+
Passed0.91s
+
✅ Test018_Should_Update_Folder
+

Assertions

+
+
AreEqual(CreateFolder_StatusCode)
+
+
Expected:
Created
+
Actual:
Created
+
+
+
+
AreEqual(UpdateFolder_StatusCode)
+
+
Expected:
Created
+
Actual:
Created
+
+
+
+
IsNotNull(UpdateFolder_ResponseContainsFolder)
+
+
Expected:
NotNull
+
Actual:
{
+  "uid": "blt4c021e5cf2fe04fc",
+  "created_at": "2026-03-13T02:34:37.178Z",
+  "updated_at": "2026-03-13T02:34:37.178Z",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "content_type": "application/vnd.contenstack.folder",
+  "tags": [],
+  "name": "Updated Test Folder",
+  "ACL": {},
+  "is_dir": true,
+  "parent_uid": null,
+  "_version": 1
+}
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/assets/folders
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 32
+Content-Type: application/json
+
Request Body
{"asset":{"name":"Test Folder"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/assets/folders' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 32' \
+  -H 'Content-Type: application/json' \
+  -d '{"asset":{"name":"Test Folder"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:36 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 34ms
+X-Request-ID: 052c60931cbdadaa176a0c5ca73934c7
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Folder created successfully.",
+  "asset": {
+    "uid": "blt779c4ae5d1f1625e",
+    "created_at": "2026-03-13T02:34:36.874Z",
+    "updated_at": "2026-03-13T02:34:36.874Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/vnd.contenstack.folder",
+    "tags": [],
+    "name": "Test Folder",
+    "ACL": {},
+    "is_dir": true,
+    "parent_uid": null,
+    "_version": 1
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/assets/folders
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 40
+Content-Type: application/json
+
Request Body
{"asset":{"name":"Updated Test Folder"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/assets/folders' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 40' \
+  -H 'Content-Type: application/json' \
+  -d '{"asset":{"name":"Updated Test Folder"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:37 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 46ms
+X-Request-ID: 73897713d6dbbfd78cfb06741532ac77
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Folder created successfully.",
+  "asset": {
+    "uid": "blt4c021e5cf2fe04fc",
+    "created_at": "2026-03-13T02:34:37.178Z",
+    "updated_at": "2026-03-13T02:34:37.178Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/vnd.contenstack.folder",
+    "tags": [],
+    "name": "Updated Test Folder",
+    "ACL": {},
+    "is_dir": true,
+    "parent_uid": null,
+    "_version": 1
+  }
+}
+
+ Test Context + + + + + + + + + + + + + + + + + + + + +
TestScenarioUpdateFolder
TestScenarioCreateFolder
StackAPIKeyblt1bca31da998b57a9
FolderUIDblt779c4ae5d1f1625e
FolderUIDblt779c4ae5d1f1625e
+
Passed0.62s
+
✅ Test008_Should_Update_Asset
+

Assertions

+
+
AreEqual(CreateAssetAsync_StatusCode)
+
+
Expected:
Created
+
Actual:
Created
+
+
+
+
AreEqual(UpdateAsset_StatusCode)
+
+
Expected:
OK
+
Actual:
OK
+
+
+
+
IsNotNull(UpdateAsset_ResponseContainsAsset)
+
+
Expected:
NotNull
+
Actual:
{
+  "uid": "bltc01c5126ad87ad39",
+  "created_at": "2026-03-13T02:34:29.829Z",
+  "updated_at": "2026-03-13T02:34:30.289Z",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "content_type": "application/json",
+  "file_size": "1572",
+  "tags": [
+    "updated",
+    "test"
+  ],
+  "filename": "updated_asset.json",
+  "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/bltc01c5126ad87ad39/69b377b6bf5153293e7b212e/updated_asset.json",
+  "ACL": {},
+  "is_dir": false,
+  "parent_uid": null,
+  "_version": 2,
+  "title": "Updated Asset",
+  "description": "updated test asset"
+}
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/assets
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Type: multipart/form-data; boundary="556098ff-7227-4c2c-814a-f3f17250d258"
+
Request Body
--556098ff-7227-4c2c-814a-f3f17250d258
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8''async_asset.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--556098ff-7227-4c2c-814a-f3f17250d258
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+Async Asset
+--556098ff-7227-4c2c-814a-f3f17250d258
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+async test asset
+--556098ff-7227-4c2c-814a-f3f17250d258
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+async,test
+--556098ff-7227-4c2c-814a-f3f17250d258--
+
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/assets' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Type: multipart/form-data; boundary="556098ff-7227-4c2c-814a-f3f17250d258"' \
+  -d '--556098ff-7227-4c2c-814a-f3f17250d258
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8'\'''\''async_asset.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--556098ff-7227-4c2c-814a-f3f17250d258
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+Async Asset
+--556098ff-7227-4c2c-814a-f3f17250d258
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+async test asset
+--556098ff-7227-4c2c-814a-f3f17250d258
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+async,test
+--556098ff-7227-4c2c-814a-f3f17250d258--
+'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:29 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 163ms
+X-Request-ID: ed3993467ef70d61d0f7a941c8a38fe5
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Asset created successfully.",
+  "asset": {
+    "uid": "bltc01c5126ad87ad39",
+    "created_at": "2026-03-13T02:34:29.829Z",
+    "updated_at": "2026-03-13T02:34:29.829Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "async",
+      "test"
+    ],
+    "filename": "async_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/bltc01c5126ad87ad39/69b377b519d88a3f00ca1181/async_asset.json",
+    "ACL": {},
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 1,
+    "title": "Async Asset",
+    "description": "async test asset"
+  }
+}
+
+ +
PUThttps://api.contentstack.io/v3/assets/bltc01c5126ad87ad39
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Type: multipart/form-data; boundary="1ad0f07a-c1c3-49a3-9425-fdd288cef898"
+
Request Body
--1ad0f07a-c1c3-49a3-9425-fdd288cef898
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=updated_asset.json; filename*=utf-8''updated_asset.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--1ad0f07a-c1c3-49a3-9425-fdd288cef898
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+Updated Asset
+--1ad0f07a-c1c3-49a3-9425-fdd288cef898
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+updated test asset
+--1ad0f07a-c1c3-49a3-9425-fdd288cef898
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+updated,test
+--1ad0f07a-c1c3-49a3-9425-fdd288cef898--
+
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/assets/bltc01c5126ad87ad39' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Type: multipart/form-data; boundary="1ad0f07a-c1c3-49a3-9425-fdd288cef898"' \
+  -d '--1ad0f07a-c1c3-49a3-9425-fdd288cef898
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=updated_asset.json; filename*=utf-8'\'''\''updated_asset.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--1ad0f07a-c1c3-49a3-9425-fdd288cef898
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+Updated Asset
+--1ad0f07a-c1c3-49a3-9425-fdd288cef898
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+updated test asset
+--1ad0f07a-c1c3-49a3-9425-fdd288cef898
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+updated,test
+--1ad0f07a-c1c3-49a3-9425-fdd288cef898--
+'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:30 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 103ms
+X-Request-ID: 895b554247bce8c6a51419e3bb464194
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Asset updated successfully.",
+  "asset": {
+    "uid": "bltc01c5126ad87ad39",
+    "created_at": "2026-03-13T02:34:29.829Z",
+    "updated_at": "2026-03-13T02:34:30.289Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "updated",
+      "test"
+    ],
+    "filename": "updated_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/bltc01c5126ad87ad39/69b377b6bf5153293e7b212e/updated_asset.json",
+    "ACL": {},
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 2,
+    "title": "Updated Asset",
+    "description": "updated test asset"
+  }
+}
+
+ Test Context + + + + + + + + + + + + + + + + + + + + +
TestScenarioUpdateAsset
TestScenarioCreateAssetAsync
StackAPIKeyblt1bca31da998b57a9
AssetUIDbltc01c5126ad87ad39
AssetUIDbltc01c5126ad87ad39
+
Passed0.89s
+
✅ Test017_Should_Fetch_Folder_Async
+

Assertions

+
+
AreEqual(CreateFolder_StatusCode)
+
+
Expected:
Created
+
Actual:
Created
+
+
+
+
AreEqual(FetchFolderAsync_StatusCode)
+
+
Expected:
OK
+
Actual:
OK
+
+
+
+
IsNotNull(FetchFolderAsync_ResponseContainsFolder)
+
+
Expected:
NotNull
+
Actual:
{
+  "uid": "blt1e8abff3fca4aa54",
+  "created_at": "2026-03-13T02:34:36.274Z",
+  "updated_at": "2026-03-13T02:34:36.274Z",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "content_type": "application/vnd.contenstack.folder",
+  "tags": [],
+  "name": "Test Folder",
+  "ACL": {
+    "roles": [],
+    "others": {
+      "read": false,
+      "create": false,
+      "update": false,
+      "delete": false,
+      "sub_acl": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "publish": false
+      }
+    }
+  },
+  "is_dir": true,
+  "parent_uid": null,
+  "_version": 1
+}
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/assets/folders
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 32
+Content-Type: application/json
+
Request Body
{"asset":{"name":"Test Folder"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/assets/folders' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 32' \
+  -H 'Content-Type: application/json' \
+  -d '{"asset":{"name":"Test Folder"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:36 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 40ms
+X-Request-ID: 9356a280b3753ed6a98e0c3da3587263
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Folder created successfully.",
+  "asset": {
+    "uid": "blt1e8abff3fca4aa54",
+    "created_at": "2026-03-13T02:34:36.274Z",
+    "updated_at": "2026-03-13T02:34:36.274Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/vnd.contenstack.folder",
+    "tags": [],
+    "name": "Test Folder",
+    "ACL": {},
+    "is_dir": true,
+    "parent_uid": null,
+    "_version": 1
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/assets/folders/blt1e8abff3fca4aa54
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/assets/folders/blt1e8abff3fca4aa54' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:36 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 25ms
+X-Request-ID: 413b68629b5140a3b1fdf902fdc6f0c3
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "asset": {
+    "uid": "blt1e8abff3fca4aa54",
+    "created_at": "2026-03-13T02:34:36.274Z",
+    "updated_at": "2026-03-13T02:34:36.274Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/vnd.contenstack.folder",
+    "tags": [],
+    "name": "Test Folder",
+    "ACL": {
+      "roles": [],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "is_dir": true,
+    "parent_uid": null,
+    "_version": 1
+  }
+}
+
+ Test Context + + + + + + + + + + + + + + + + + + + + +
TestScenarioFetchFolderAsync
TestScenarioCreateFolder
StackAPIKeyblt1bca31da998b57a9
FolderUIDblt1e8abff3fca4aa54
FolderUIDblt1e8abff3fca4aa54
+
Passed0.60s
+
✅ Test009_Should_Update_Asset_Async
+

Assertions

+
+
AreEqual(CreateAssetAsync_StatusCode)
+
+
Expected:
Created
+
Actual:
Created
+
+
+
+
AreEqual(UpdateAssetAsync_StatusCode)
+
+
Expected:
OK
+
Actual:
OK
+
+
+
+
IsNotNull(UpdateAssetAsync_ResponseContainsAsset)
+
+
Expected:
NotNull
+
Actual:
{
+  "uid": "blt2e420180c49b97d1",
+  "created_at": "2026-03-13T02:34:30.71Z",
+  "updated_at": "2026-03-13T02:34:31.14Z",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "content_type": "application/json",
+  "file_size": "1572",
+  "tags": [
+    "async",
+    "updated",
+    "test"
+  ],
+  "filename": "async_updated_asset.json",
+  "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2e420180c49b97d1/69b377b7b2e2a87a96adc169/async_updated_asset.json",
+  "ACL": {},
+  "is_dir": false,
+  "parent_uid": null,
+  "_version": 2,
+  "title": "Async Updated Asset",
+  "description": "async updated test asset"
+}
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/assets
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Type: multipart/form-data; boundary="192bbf26-fbdb-4156-97e5-113dc6f59665"
+
Request Body
--192bbf26-fbdb-4156-97e5-113dc6f59665
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8''async_asset.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--192bbf26-fbdb-4156-97e5-113dc6f59665
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+Async Asset
+--192bbf26-fbdb-4156-97e5-113dc6f59665
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+async test asset
+--192bbf26-fbdb-4156-97e5-113dc6f59665
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+async,test
+--192bbf26-fbdb-4156-97e5-113dc6f59665--
+
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/assets' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Type: multipart/form-data; boundary="192bbf26-fbdb-4156-97e5-113dc6f59665"' \
+  -d '--192bbf26-fbdb-4156-97e5-113dc6f59665
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8'\'''\''async_asset.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--192bbf26-fbdb-4156-97e5-113dc6f59665
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+Async Asset
+--192bbf26-fbdb-4156-97e5-113dc6f59665
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+async test asset
+--192bbf26-fbdb-4156-97e5-113dc6f59665
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+async,test
+--192bbf26-fbdb-4156-97e5-113dc6f59665--
+'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:30 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 149ms
+X-Request-ID: 39cfd4d5dec2dcf75c4911cf06c24026
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Asset created successfully.",
+  "asset": {
+    "uid": "blt2e420180c49b97d1",
+    "created_at": "2026-03-13T02:34:30.710Z",
+    "updated_at": "2026-03-13T02:34:30.710Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "async",
+      "test"
+    ],
+    "filename": "async_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2e420180c49b97d1/69b377b6239de549d1eca2a9/async_asset.json",
+    "ACL": {},
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 1,
+    "title": "Async Asset",
+    "description": "async test asset"
+  }
+}
+
+ +
PUThttps://api.contentstack.io/v3/assets/blt2e420180c49b97d1
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Type: multipart/form-data; boundary="2d277fed-d6ab-4f78-ba89-36f1cef00014"
+
Request Body
--2d277fed-d6ab-4f78-ba89-36f1cef00014
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=async_updated_asset.json; filename*=utf-8''async_updated_asset.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--2d277fed-d6ab-4f78-ba89-36f1cef00014
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+Async Updated Asset
+--2d277fed-d6ab-4f78-ba89-36f1cef00014
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+async updated test asset
+--2d277fed-d6ab-4f78-ba89-36f1cef00014
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+async,updated,test
+--2d277fed-d6ab-4f78-ba89-36f1cef00014--
+
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/assets/blt2e420180c49b97d1' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Type: multipart/form-data; boundary="2d277fed-d6ab-4f78-ba89-36f1cef00014"' \
+  -d '--2d277fed-d6ab-4f78-ba89-36f1cef00014
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=async_updated_asset.json; filename*=utf-8'\'''\''async_updated_asset.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--2d277fed-d6ab-4f78-ba89-36f1cef00014
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+Async Updated Asset
+--2d277fed-d6ab-4f78-ba89-36f1cef00014
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+async updated test asset
+--2d277fed-d6ab-4f78-ba89-36f1cef00014
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+async,updated,test
+--2d277fed-d6ab-4f78-ba89-36f1cef00014--
+'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:31 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 133ms
+X-Request-ID: 7ceb97b4bf12253326cca2da016f324e
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Asset updated successfully.",
+  "asset": {
+    "uid": "blt2e420180c49b97d1",
+    "created_at": "2026-03-13T02:34:30.710Z",
+    "updated_at": "2026-03-13T02:34:31.140Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "content_type": "application/json",
+    "file_size": "1572",
+    "tags": [
+      "async",
+      "updated",
+      "test"
+    ],
+    "filename": "async_updated_asset.json",
+    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2e420180c49b97d1/69b377b7b2e2a87a96adc169/async_updated_asset.json",
+    "ACL": {},
+    "is_dir": false,
+    "parent_uid": null,
+    "_version": 2,
+    "title": "Async Updated Asset",
+    "description": "async updated test asset"
+  }
+}
+
+ Test Context + + + + + + + + + + + + + + + + + + + + +
TestScenarioUpdateAssetAsync
TestScenarioCreateAssetAsync
StackAPIKeyblt1bca31da998b57a9
AssetUIDblt2e420180c49b97d1
AssetUIDblt2e420180c49b97d1
+
Passed0.84s
+
✅ Test029_Should_Handle_Query_With_Invalid_Parameters
+

Assertions

+
+
IsTrue(InvalidQuery_ContentstackErrorException)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/assets?limit=-1&skip=-1
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/assets?limit=-1&skip=-1' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:41 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 24ms
+X-Request-ID: b126b142902f284237a31b0531f855b3
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Failed to fetch assets. Please try again with valid parameters.",
+  "error_code": 141,
+  "errors": {
+    "params": [
+      "has an invalid operation."
+    ]
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioHandleQueryWithInvalidParameters
StackAPIKeyblt1bca31da998b57a9
+
Passed0.29s
+
✅ Test024_Should_Handle_Invalid_Asset_Operations
+

Assertions

+
+
IsTrue(InvalidAssetFetch_ExceptionMessage)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsTrue(InvalidAssetUpdate_ExceptionMessage)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsTrue(InvalidAssetDelete_ExceptionMessage)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/assets/invalid_asset_uid_12345
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/assets/invalid_asset_uid_12345' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
404 Not Found
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:39 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 24ms
+X-Request-ID: 0276fceded0eb14eb3bc280ddebb327b
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Asset was not found.",
+  "error_code": 145,
+  "errors": {
+    "uid": [
+      "is not valid."
+    ]
+  }
+}
+
+ +
PUThttps://api.contentstack.io/v3/assets/invalid_asset_uid_12345
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Type: multipart/form-data; boundary="7b232c25-1cf0-40e9-b291-37cdc2afae3c"
+
Request Body
--7b232c25-1cf0-40e9-b291-37cdc2afae3c
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=invalid_asset.json; filename*=utf-8''invalid_asset.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--7b232c25-1cf0-40e9-b291-37cdc2afae3c
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+Invalid Asset
+--7b232c25-1cf0-40e9-b291-37cdc2afae3c
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+invalid test asset
+--7b232c25-1cf0-40e9-b291-37cdc2afae3c
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+invalid,test
+--7b232c25-1cf0-40e9-b291-37cdc2afae3c--
+
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/assets/invalid_asset_uid_12345' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Type: multipart/form-data; boundary="7b232c25-1cf0-40e9-b291-37cdc2afae3c"' \
+  -d '--7b232c25-1cf0-40e9-b291-37cdc2afae3c
+Content-Type: application/json
+Content-Disposition: form-data; name="asset[upload]"; filename=invalid_asset.json; filename*=utf-8'\'''\''invalid_asset.json
+
+[
+  {
+    "display_name": "Title",
+    "uid": "title",
+    "data_type": "text",
+    "mandatory": true,
+    "unique": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "fldUid": "title"
+  },
+  {
+    "display_name": "URL",
+    "uid": "url",
+    "data_type": "text",
+    "mandatory": true,
+    "field_metadata": {
+      "_default": true,
+      "version": 3
+    },
+    "non_localizable": false,
+    "multiple": false,
+    "unique": false,
+    "fldUid": "url"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Single line textbox",
+    "abstract": "Name, title, email address, any short text",
+    "uid": "single_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": ""
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": { "format": "" },
+    "fldUid": "single_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Multi line textbox",
+    "abstract": "Descriptions, paragraphs, long text",
+    "uid": "multi_line",
+    "field_metadata": {
+      "description": "",
+      "default_value": "",
+      "multiline": true
+    },
+    "class": "high-lighter",
+    "format": "",
+    "error_messages": {
+      "format": ""
+    },
+    "fldUid": "multi_line"
+  },
+  {
+    "data_type": "text",
+    "display_name": "Markdown",
+    "abstract": "Input text in markdown language",
+    "uid": "markdown",
+    "field_metadata": {
+      "description": "",
+      "markdown": true
+    },
+    "class": "high-lighter",
+    "fldUid": "markdown"
+  }
+]
+--7b232c25-1cf0-40e9-b291-37cdc2afae3c
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[title]"
+
+Invalid Asset
+--7b232c25-1cf0-40e9-b291-37cdc2afae3c
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[description]"
+
+invalid test asset
+--7b232c25-1cf0-40e9-b291-37cdc2afae3c
+Content-Type: text/plain; charset=utf-8
+Content-Disposition: form-data; name="asset[tags]"
+
+invalid,test
+--7b232c25-1cf0-40e9-b291-37cdc2afae3c--
+'
+ +
+
+
404 Not Found
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:39 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 29ms
+X-Request-ID: b5fe59619eeb571103fb1c9aba1b7d89
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Asset was not found.",
+  "error_code": 145,
+  "errors": {
+    "uid": [
+      "is not valid."
+    ]
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/assets/invalid_asset_uid_12345
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/assets/invalid_asset_uid_12345' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
404 Not Found
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:40 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 25ms
+X-Request-ID: e3bb40a21c47c9e01ba42775c3ce9b5e
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Asset was not found.",
+  "error_code": 145,
+  "errors": {
+    "uid": [
+      "is not valid."
+    ]
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioHandleInvalidAssetOperations
InvalidAssetUIDinvalid_asset_uid_12345
+
Passed0.93s
+
+
+ +
+
+
+ + Contentstack007_EntryTest +
+
+ 6 passed · + 0 failed · + 0 skipped · + 6 total +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Test NameStatusDuration
+
✅ Test001_Should_Create_Entry
+

Assertions

+
+
IsNotNull(responseObject_entry)
+
+
Expected:
NotNull
+
Actual:
{
+  "title": "My First Single Page Entry",
+  "url": "/my-first-single-page",
+  "locale": "en-us",
+  "uid": "blt6b5b35165c290449",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:34:42.174Z",
+  "updated_at": "2026-03-13T02:34:42.174Z",
+  "ACL": {},
+  "_version": 1,
+  "tags": [],
+  "_in_progress": false
+}
+
+
+
+
IsNotNull(entry_uid)
+
+
Expected:
NotNull
+
Actual:
blt6b5b35165c290449
+
+
+
+
AreEqual(entry_title)
+
+
Expected:
My First Single Page Entry
+
Actual:
My First Single Page Entry
+
+
+
+
AreEqual(entry_url)
+
+
Expected:
/my-first-single-page
+
Actual:
/my-first-single-page
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/content_types/single_page
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/content_types/single_page' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:41 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+surrogate-key: blt1bca31da998b57a9.content_types blt1bca31da998b57a9.content_types.single_page
+cache-tag: blt1bca31da998b57a9.content_types blt1bca31da998b57a9.content_types.single_page
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 27ms
+X-Request-ID: 0c250ea2-99b8-459f-a9f8-4df7c78b9fca
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "content_type": {
+    "created_at": "2026-03-13T02:34:20.692Z",
+    "updated_at": "2026-03-13T02:34:20.692Z",
+    "title": "Single Page",
+    "uid": "single_page",
+    "_version": 1,
+    "inbuilt_class": false,
+    "schema": [
+      {
+        "display_name": "Title",
+        "uid": "title",
+        "data_type": "text",
+        "field_metadata": {
+          "_default": "True",
+          "allow_rich_text": false,
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": true,
+        "unique": true,
+        "non_localizable": false
+      },
+      {
+        "display_name": "URL",
+        "uid": "url",
+        "data_type": "text",
+        "field_metadata": {
+          "_default": true,
+          "allow_rich_text": false,
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "instruction": "",
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": true,
+        "unique": false,
+        "non_localizable": false
+      }
+    ],
+    "last_activity": {},
+    "maintain_revisions": true,
+    "description": "",
+    "DEFAULT_ACL": {
+      "others": {
+        "read": false,
+        "create": false
+      },
+      "users": [
+        {
+          "read": true,
+          "sub_acl": {
+            "read": true
+          },
+          "uid": "blt99daf6332b695c38"
+        }
+      ],
+      "management_token": {
+        "read": true
+      }
+    },
+    "SYS_ACL": {
+      "roles": [
+        {
+          "uid": "blt5f456b9cfa69b697",
+          "read": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true,
+            "publish": true
+          },
+          "update": true,
+          "delete": true
+        },
+        {
+          "uid": "bltd7ebbaea63551cf9",
+          "read": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true,
+            "publish": true
+          }
+        },
+        {
+          "uid": "blt1b7926e68b1b14b2",
+          "read": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true,
+            "publish": true
+          },
+          "update": true,
+          "delete": true
+        }
+      ],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "options": {
+      "title": "title",
+      "sub_title": [],
+      "singleton": false,
+      "is_page": true,
+      "url_pattern": "/:title",
+      "url_prefix": "/"
+    },
+    "abilities": {
+      "get_one_object": true,
+      "get_all_objects
+
+ +
POSThttps://api.contentstack.io/v3/content_types/single_page/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 113
+Content-Type: application/json
+
Request Body
{"entry": {"_content_type_uid":"single_page","title":"My First Single Page Entry","url":"/my-first-single-page"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/content_types/single_page/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 113' \
+  -H 'Content-Type: application/json' \
+  -d '{"entry": {"_content_type_uid":"single_page","title":"My First Single Page Entry","url":"/my-first-single-page"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:42 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 247ms
+X-Request-ID: af01c286-b49e-45e5-a7f7-9fa8eacc863a
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Entry created successfully.",
+  "entry": {
+    "title": "My First Single Page Entry",
+    "url": "/my-first-single-page",
+    "locale": "en-us",
+    "uid": "blt6b5b35165c290449",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:34:42.174Z",
+    "updated_at": "2026-03-13T02:34:42.174Z",
+    "ACL": {},
+    "_version": 1,
+    "tags": [],
+    "_in_progress": false
+  }
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioCreateSinglePageEntry
ContentTypesingle_page
Entryblt6b5b35165c290449
+
Passed0.81s
+
✅ Test005_Should_Query_Entries
+

Assertions

+
+
IsNotNull(responseObject_entries)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "title": "Updated Entry Title",
+    "url": "/updated-entry-url",
+    "locale": "en-us",
+    "uid": "bltc2bf0a8e4679bcc0",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:34:44.185Z",
+    "updated_at": "2026-03-13T02:34:44.6Z",
+    "ACL": {},
+    "_version": 2,
+    "tags": [],
+    "_in_progress": false
+  },
+  {
+    "title": "Test Entry for Fetch",
+    "url": "/test-entry-for-fetch",
+    "locale": "en-us",
+    "uid": "bltf8e896c77c553263",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:34:43.469Z",
+    "updated_at": "2026-03-13T02:34:43.469Z",
+    "ACL": {},
+    "_version": 1,
+    "tags": [],
+    "_in_progress": false
+  },
+  {
+    "title": "My First Single Page Entry",
+    "url": "/my-first-single-page",
+    "locale": "en-us",
+    "uid": "blt6b5b35165c290449",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:34:42.174Z",
+    "updated_at": "2026-03-13T02:34:42.174Z",
+    "ACL": {},
+    "_version": 1,
+    "tags": [],
+    "_in_progress": false
+  }
+]
+
+
+
+
IsNotNull(entries_array)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "title": "Updated Entry Title",
+    "url": "/updated-entry-url",
+    "locale": "en-us",
+    "uid": "bltc2bf0a8e4679bcc0",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:34:44.185Z",
+    "updated_at": "2026-03-13T02:34:44.6Z",
+    "ACL": {},
+    "_version": 2,
+    "tags": [],
+    "_in_progress": false
+  },
+  {
+    "title": "Test Entry for Fetch",
+    "url": "/test-entry-for-fetch",
+    "locale": "en-us",
+    "uid": "bltf8e896c77c553263",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:34:43.469Z",
+    "updated_at": "2026-03-13T02:34:43.469Z",
+    "ACL": {},
+    "_version": 1,
+    "tags": [],
+    "_in_progress": false
+  },
+  {
+    "title": "My First Single Page Entry",
+    "url": "/my-first-single-page",
+    "locale": "en-us",
+    "uid": "blt6b5b35165c290449",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:34:42.174Z",
+    "updated_at": "2026-03-13T02:34:42.174Z",
+    "ACL": {},
+    "_version": 1,
+    "tags": [],
+    "_in_progress": false
+  }
+]
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/content_types/single_page/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/content_types/single_page/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:44 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 39ms
+X-Request-ID: 9714e67a-7182-4360-95fa-7e8acc4515f2
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "entries": [
+    {
+      "title": "Updated Entry Title",
+      "url": "/updated-entry-url",
+      "locale": "en-us",
+      "uid": "bltc2bf0a8e4679bcc0",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:44.185Z",
+      "updated_at": "2026-03-13T02:34:44.600Z",
+      "ACL": {},
+      "_version": 2,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Test Entry for Fetch",
+      "url": "/test-entry-for-fetch",
+      "locale": "en-us",
+      "uid": "bltf8e896c77c553263",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:43.469Z",
+      "updated_at": "2026-03-13T02:34:43.469Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "My First Single Page Entry",
+      "url": "/my-first-single-page",
+      "locale": "en-us",
+      "uid": "blt6b5b35165c290449",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:42.174Z",
+      "updated_at": "2026-03-13T02:34:42.174Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    }
+  ]
+}
+
+ Test Context + + + + + + + + +
TestScenarioQueryEntries
ContentTypesingle_page
+
Passed0.34s
+
✅ Test004_Should_Update_Entry
+

Assertions

+
+
IsNotNull(created_entry_uid)
+
+
Expected:
NotNull
+
Actual:
bltc2bf0a8e4679bcc0
+
+
+
+
IsNotNull(updateObject_entry)
+
+
Expected:
NotNull
+
Actual:
{
+  "title": "Updated Entry Title",
+  "url": "/updated-entry-url",
+  "locale": "en-us",
+  "uid": "bltc2bf0a8e4679bcc0",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:34:44.185Z",
+  "updated_at": "2026-03-13T02:34:44.6Z",
+  "ACL": {},
+  "_version": 2,
+  "tags": [],
+  "_in_progress": false
+}
+
+
+
+
AreEqual(updated_entry_uid)
+
+
Expected:
bltc2bf0a8e4679bcc0
+
Actual:
bltc2bf0a8e4679bcc0
+
+
+
+
AreEqual(updated_entry_title)
+
+
Expected:
Updated Entry Title
+
Actual:
Updated Entry Title
+
+
+
+
AreEqual(updated_entry_url)
+
+
Expected:
/updated-entry-url
+
Actual:
/updated-entry-url
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/content_types/single_page/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 105
+Content-Type: application/json
+
Request Body
{"entry": {"_content_type_uid":"single_page","title":"Original Entry Title","url":"/original-entry-url"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/content_types/single_page/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 105' \
+  -H 'Content-Type: application/json' \
+  -d '{"entry": {"_content_type_uid":"single_page","title":"Original Entry Title","url":"/original-entry-url"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:44 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 74ms
+X-Request-ID: 8ae1afa6-130a-4f88-874e-4d834fe2b935
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Entry created successfully.",
+  "entry": {
+    "title": "Original Entry Title",
+    "url": "/original-entry-url",
+    "locale": "en-us",
+    "uid": "bltc2bf0a8e4679bcc0",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:34:44.185Z",
+    "updated_at": "2026-03-13T02:34:44.185Z",
+    "ACL": {},
+    "_version": 1,
+    "tags": [],
+    "_in_progress": false
+  }
+}
+
+ +
PUThttps://api.contentstack.io/v3/content_types/single_page/entries/bltc2bf0a8e4679bcc0
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 103
+Content-Type: application/json
+
Request Body
{"entry": {"_content_type_uid":"single_page","title":"Updated Entry Title","url":"/updated-entry-url"}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/content_types/single_page/entries/bltc2bf0a8e4679bcc0' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 103' \
+  -H 'Content-Type: application/json' \
+  -d '{"entry": {"_content_type_uid":"single_page","title":"Updated Entry Title","url":"/updated-entry-url"}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:44 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 90ms
+X-Request-ID: 2b6b319c-b049-4fdb-b088-d5cf04e9d16f
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Entry updated successfully.",
+  "entry": {
+    "title": "Updated Entry Title",
+    "url": "/updated-entry-url",
+    "locale": "en-us",
+    "uid": "bltc2bf0a8e4679bcc0",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:34:44.185Z",
+    "updated_at": "2026-03-13T02:34:44.600Z",
+    "ACL": {},
+    "_version": 2,
+    "tags": [],
+    "_in_progress": false
+  }
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioUpdateEntry
ContentTypesingle_page
Entrybltc2bf0a8e4679bcc0
+
Passed0.77s
+
✅ Test006_Should_Delete_Entry
+

Assertions

+
+
IsNotNull(created_entry_uid)
+
+
Expected:
NotNull
+
Actual:
bltb0fc061b5a738331
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/content_types/single_page/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 97
+Content-Type: application/json
+
Request Body
{"entry": {"_content_type_uid":"single_page","title":"Entry to Delete","url":"/entry-to-delete"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/content_types/single_page/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 97' \
+  -H 'Content-Type: application/json' \
+  -d '{"entry": {"_content_type_uid":"single_page","title":"Entry to Delete","url":"/entry-to-delete"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:45 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 72ms
+X-Request-ID: c6db5266-40ae-469e-a95c-7fb4d46d7799
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Entry created successfully.",
+  "entry": {
+    "title": "Entry to Delete",
+    "url": "/entry-to-delete",
+    "locale": "en-us",
+    "uid": "bltb0fc061b5a738331",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:34:45.279Z",
+    "updated_at": "2026-03-13T02:34:45.279Z",
+    "ACL": {},
+    "_version": 1,
+    "tags": [],
+    "_in_progress": false
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/content_types/single_page/entries/bltb0fc061b5a738331
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/content_types/single_page/entries/bltb0fc061b5a738331' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:45 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 119ms
+X-Request-ID: 9ac74b27-f223-4707-9365-61ac89b2b8ba
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Entry deleted successfully."
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioDeleteEntry
ContentTypesingle_page
Entrybltb0fc061b5a738331
+
Passed0.74s
+
✅ Test002_Should_Create_MultiPage_Entry
+

Assertions

+
+
IsNotNull(responseObject_entry)
+
+
Expected:
NotNull
+
Actual:
{
+  "title": "My First Multi Page Entry",
+  "url": "/my-first-multi-page",
+  "locale": "en-us",
+  "uid": "blt64200a53199d2f83",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:34:43.112Z",
+  "updated_at": "2026-03-13T02:34:43.112Z",
+  "ACL": {},
+  "_version": 1,
+  "tags": [],
+  "_in_progress": false
+}
+
+
+
+
IsNotNull(entry_uid)
+
+
Expected:
NotNull
+
Actual:
blt64200a53199d2f83
+
+
+
+
AreEqual(entry_title)
+
+
Expected:
My First Multi Page Entry
+
Actual:
My First Multi Page Entry
+
+
+
+
AreEqual(entry_url)
+
+
Expected:
/my-first-multi-page
+
Actual:
/my-first-multi-page
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/content_types/multi_page
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/content_types/multi_page' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:42 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+surrogate-key: blt1bca31da998b57a9.content_types blt1bca31da998b57a9.content_types.multi_page
+cache-tag: blt1bca31da998b57a9.content_types blt1bca31da998b57a9.content_types.multi_page
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 28ms
+X-Request-ID: a588838f-5e9e-4b38-b7d6-d4bb5bd05c05
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "content_type": {
+    "created_at": "2026-03-13T02:34:21.019Z",
+    "updated_at": "2026-03-13T02:34:22.293Z",
+    "title": "Multi page",
+    "uid": "multi_page",
+    "_version": 3,
+    "inbuilt_class": false,
+    "schema": [
+      {
+        "display_name": "Title",
+        "uid": "title",
+        "data_type": "text",
+        "field_metadata": {
+          "_default": "True",
+          "allow_rich_text": false,
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": true,
+        "unique": true,
+        "non_localizable": false
+      },
+      {
+        "display_name": "URL",
+        "uid": "url",
+        "data_type": "text",
+        "field_metadata": {
+          "_default": true,
+          "allow_rich_text": false,
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": true,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "display_name": "Single line textbox",
+        "uid": "single_line",
+        "data_type": "text",
+        "field_metadata": {
+          "default_value": "",
+          "allow_rich_text": false,
+          "description": "",
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "display_name": "Multi line textbox",
+        "uid": "multi_line",
+        "data_type": "text",
+        "field_metadata": {
+          "default_value": "",
+          "allow_rich_text": false,
+          "description": "",
+          "multiline": true,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "display_name": "Markdown",
+        "uid": "markdown",
+        "data_type": "text",
+        "field_metadata": {
+          "allow_rich_text": false,
+          "description": "",
+          "multiline": false,
+          "version": 3,
+          "markdown": true,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "display_name": "New Text Field",
+        "uid": "new_text_field",
+        "data_type": "text",
+        "field_metadata": {
+          "allow_rich_text": false,
+          "description": "A new text field added during async update test",
+          "multiline": false,
+          "version": 3,
+          "markdown": false,
+          "ref_multiple": false
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      }
+
+
+ +
POSThttps://api.contentstack.io/v3/content_types/multi_page/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 110
+Content-Type: application/json
+
Request Body
{"entry": {"_content_type_uid":"multi_page","title":"My First Multi Page Entry","url":"/my-first-multi-page"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/content_types/multi_page/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 110' \
+  -H 'Content-Type: application/json' \
+  -d '{"entry": {"_content_type_uid":"multi_page","title":"My First Multi Page Entry","url":"/my-first-multi-page"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:43 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 64ms
+X-Request-ID: d35009e3-ae53-4345-9ef5-71773fc85fb7
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Entry created successfully.",
+  "entry": {
+    "title": "My First Multi Page Entry",
+    "url": "/my-first-multi-page",
+    "locale": "en-us",
+    "uid": "blt64200a53199d2f83",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:34:43.112Z",
+    "updated_at": "2026-03-13T02:34:43.112Z",
+    "ACL": {},
+    "_version": 1,
+    "tags": [],
+    "_in_progress": false
+  }
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioCreateMultiPageEntry
ContentTypemulti_page
Entryblt64200a53199d2f83
+
Passed0.77s
+
✅ Test003_Should_Fetch_Entry
+

Assertions

+
+
IsNotNull(created_entry_uid)
+
+
Expected:
NotNull
+
Actual:
bltf8e896c77c553263
+
+
+
+
IsNotNull(fetchObject_entry)
+
+
Expected:
NotNull
+
Actual:
{
+  "title": "Test Entry for Fetch",
+  "url": "/test-entry-for-fetch",
+  "locale": "en-us",
+  "uid": "bltf8e896c77c553263",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:34:43.469Z",
+  "updated_at": "2026-03-13T02:34:43.469Z",
+  "ACL": {},
+  "_version": 1,
+  "tags": [],
+  "_in_progress": false
+}
+
+
+
+
AreEqual(fetched_entry_uid)
+
+
Expected:
bltf8e896c77c553263
+
Actual:
bltf8e896c77c553263
+
+
+
+
AreEqual(fetched_entry_title)
+
+
Expected:
Test Entry for Fetch
+
Actual:
Test Entry for Fetch
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/content_types/single_page/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 107
+Content-Type: application/json
+
Request Body
{"entry": {"_content_type_uid":"single_page","title":"Test Entry for Fetch","url":"/test-entry-for-fetch"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/content_types/single_page/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 107' \
+  -H 'Content-Type: application/json' \
+  -d '{"entry": {"_content_type_uid":"single_page","title":"Test Entry for Fetch","url":"/test-entry-for-fetch"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:43 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 84ms
+X-Request-ID: 1c65238a-6ef7-4a72-ad7b-b09f379e6c55
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Entry created successfully.",
+  "entry": {
+    "title": "Test Entry for Fetch",
+    "url": "/test-entry-for-fetch",
+    "locale": "en-us",
+    "uid": "bltf8e896c77c553263",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:34:43.469Z",
+    "updated_at": "2026-03-13T02:34:43.469Z",
+    "ACL": {},
+    "_version": 1,
+    "tags": [],
+    "_in_progress": false
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/content_types/single_page/entries/bltf8e896c77c553263
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/content_types/single_page/entries/bltf8e896c77c553263' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:43 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 45ms
+X-Request-ID: fcec31f5-5b56-4003-a14b-2f7a7aba78a6
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "entry": {
+    "title": "Test Entry for Fetch",
+    "url": "/test-entry-for-fetch",
+    "locale": "en-us",
+    "uid": "bltf8e896c77c553263",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:34:43.469Z",
+    "updated_at": "2026-03-13T02:34:43.469Z",
+    "ACL": {},
+    "_version": 1,
+    "tags": [],
+    "_in_progress": false
+  }
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioFetchEntry
ContentTypesingle_page
Entrybltf8e896c77c553263
+
Passed0.71s
+
+
+ +
+
+
+ + Contentstack008_NestedGlobalFieldTest +
+
+ 9 passed · + 0 failed · + 0 skipped · + 9 total +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Test NameStatusDuration
+
✅ Test004_Should_Fetch_Async_Nested_Global_Field
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/global_fields/nested_global_field_test
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/global_fields/nested_global_field_test' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:24 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+surrogate-key: blt1bca31da998b57a9.global_fields blt1bca31da998b57a9.global_fields.nested_global_field_test
+api_version: 3.2
+x-contentstack-organization: blt8d282118e2094bb8
+X-Request-ID: 0a62fe2c-03a3-4c93-8890-e3279064d100
+x-runtime: 17
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 832
+
Response Body +
{
+  "global_field": {
+    "title": "Nested Global Field Test",
+    "uid": "nested_global_field_test",
+    "description": "Test nested global field for .NET SDK",
+    "schema": [
+      {
+        "display_name": "Single Line Textbox",
+        "uid": "single_line",
+        "data_type": "text",
+        "field_metadata": {
+          "default_value": "",
+          "description": "",
+          "multiline": false,
+          "version": 3
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "reference_to": "referenced_global_field",
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false,
+        "display_name": "Global Field Reference",
+        "uid": "global_field_reference",
+        "data_type": "global_field",
+        "field_metadata": {
+          "description": "Reference to another global field"
+        }
+      }
+    ],
+    "created_at": "2026-03-13T02:34:23.554Z",
+    "updated_at": "2026-03-13T02:34:23.554Z",
+    "_version": 1,
+    "inbuilt_class": false,
+    "last_activity": {},
+    "maintain_revisions": true
+  }
+}
+
Passed0.32s
+
✅ Test006_Should_Update_Async_Nested_Global_Field
+

HTTP Transactions

+
+ +
PUThttps://api.contentstack.io/v3/global_fields/nested_global_field_test
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 937
+Content-Type: application/json
+
Request Body
{"global_field": {"title":"Updated Async Nested Global Field","uid":"nested_global_field_test","description":"Updated async description for nested global field","schema":[{"display_name":"Single Line Textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"reference_to":"referenced_global_field","multiple":false,"mandatory":false,"unique":false,"non_localizable":false,"display_name":"Global Field Reference","uid":"global_field_reference","data_type":"global_field","field_metadata":{"allow_rich_text":false,"description":"Reference to another global field","multiline":false,"version":0,"markdown":false,"ref_multiple":false}}],"global_field_refs":[{"uid":"referenced_global_field","occurrence_count":1,"isChild":true,"paths":["schema.1"]}]}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/global_fields/nested_global_field_test' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 937' \
+  -H 'Content-Type: application/json' \
+  -d '{"global_field": {"title":"Updated Async Nested Global Field","uid":"nested_global_field_test","description":"Updated async description for nested global field","schema":[{"display_name":"Single Line Textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"reference_to":"referenced_global_field","multiple":false,"mandatory":false,"unique":false,"non_localizable":false,"display_name":"Global Field Reference","uid":"global_field_reference","data_type":"global_field","field_metadata":{"allow_rich_text":false,"description":"Reference to another global field","multiline":false,"version":0,"markdown":false,"ref_multiple":false}}],"global_field_refs":[{"uid":"referenced_global_field","occurrence_count":1,"isChild":true,"paths":["schema.1"]}]}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:24 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+api_version: 3.2
+x-contentstack-organization: blt8d282118e2094bb8
+X-Request-ID: 5d342c9f-2ede-45ce-ba88-993c9fc913fc
+x-runtime: 39
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 899
+
Response Body +
{
+  "notice": "Global Field updated successfully.",
+  "global_field": {
+    "title": "Updated Async Nested Global Field",
+    "uid": "nested_global_field_test",
+    "description": "Updated async description for nested global field",
+    "schema": [
+      {
+        "display_name": "Single Line Textbox",
+        "uid": "single_line",
+        "data_type": "text",
+        "field_metadata": {
+          "default_value": "",
+          "description": "",
+          "multiline": false,
+          "version": 3
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "reference_to": "referenced_global_field",
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false,
+        "display_name": "Global Field Reference",
+        "uid": "global_field_reference",
+        "data_type": "global_field",
+        "field_metadata": {
+          "description": "Reference to another global field"
+        }
+      }
+    ],
+    "created_at": "2026-03-13T02:34:23.554Z",
+    "updated_at": "2026-03-13T02:34:24.850Z",
+    "_version": 3,
+    "inbuilt_class": false,
+    "last_activity": {},
+    "maintain_revisions": true
+  }
+}
+
Passed0.32s
+
✅ Test003_Should_Fetch_Nested_Global_Field
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/global_fields/nested_global_field_test
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/global_fields/nested_global_field_test' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:23 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+surrogate-key: blt1bca31da998b57a9.global_fields blt1bca31da998b57a9.global_fields.nested_global_field_test
+api_version: 3.2
+x-contentstack-organization: blt8d282118e2094bb8
+X-Request-ID: 2649c1f5-0cae-4528-9340-0ea89ccf5563
+x-runtime: 17
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 832
+
Response Body +
{
+  "global_field": {
+    "title": "Nested Global Field Test",
+    "uid": "nested_global_field_test",
+    "description": "Test nested global field for .NET SDK",
+    "schema": [
+      {
+        "display_name": "Single Line Textbox",
+        "uid": "single_line",
+        "data_type": "text",
+        "field_metadata": {
+          "default_value": "",
+          "description": "",
+          "multiline": false,
+          "version": 3
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "reference_to": "referenced_global_field",
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false,
+        "display_name": "Global Field Reference",
+        "uid": "global_field_reference",
+        "data_type": "global_field",
+        "field_metadata": {
+          "description": "Reference to another global field"
+        }
+      }
+    ],
+    "created_at": "2026-03-13T02:34:23.554Z",
+    "updated_at": "2026-03-13T02:34:23.554Z",
+    "_version": 1,
+    "inbuilt_class": false,
+    "last_activity": {},
+    "maintain_revisions": true
+  }
+}
+
Passed0.29s
+
✅ Test009_Should_Delete_Referenced_Global_Field
+

HTTP Transactions

+
+ +
DELETEhttps://api.contentstack.io/v3/global_fields/referenced_global_field?force=true
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/global_fields/referenced_global_field?force=true' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:25 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+api_version: 3.2
+x-contentstack-organization: blt8d282118e2094bb8
+X-Request-ID: 633a5ae7-2134-417e-93ab-761bda1316be
+x-runtime: 31
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 47
+
Response Body +
{
+  "notice": "Global Field deleted successfully."
+}
+
Passed0.32s
+
✅ Test007_Should_Query_Nested_Global_Fields
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/global_fields
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/global_fields' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:25 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+surrogate-key: blt1bca31da998b57a9.global_fields
+api_version: 3.2
+x-contentstack-organization: blt8d282118e2094bb8
+X-Request-ID: d11c13ad-56d4-43dd-be18-d57d5242c614
+x-runtime: 19
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 2215
+
Response Body +
{
+  "global_fields": [
+    {
+      "title": "Updated Async Nested Global Field",
+      "uid": "nested_global_field_test",
+      "description": "Updated async description for nested global field",
+      "schema": [
+        {
+          "display_name": "Single Line Textbox",
+          "uid": "single_line",
+          "data_type": "text",
+          "field_metadata": {
+            "default_value": "",
+            "description": "",
+            "multiline": false,
+            "version": 3
+          },
+          "multiple": false,
+          "mandatory": false,
+          "unique": false,
+          "non_localizable": false
+        },
+        {
+          "reference_to": "referenced_global_field",
+          "multiple": false,
+          "mandatory": false,
+          "unique": false,
+          "non_localizable": false,
+          "display_name": "Global Field Reference",
+          "uid": "global_field_reference",
+          "data_type": "global_field",
+          "field_metadata": {
+            "description": "Reference to another global field"
+          }
+        }
+      ],
+      "created_at": "2026-03-13T02:34:23.554Z",
+      "updated_at": "2026-03-13T02:34:24.850Z",
+      "_version": 3,
+      "inbuilt_class": false,
+      "last_activity": {},
+      "maintain_revisions": true
+    },
+    {
+      "title": "Referenced Global Field",
+      "uid": "referenced_global_field",
+      "description": "A global field that will be referenced by another global field",
+      "schema": [
+        {
+          "display_name": "Title",
+          "uid": "title",
+          "data_type": "text",
+          "field_metadata": {
+            "_default": true,
+            "version": 0
+          },
+          "multiple": false,
+          "mandatory": true,
+          "unique": true,
+          "non_localizable": false
+        },
+        {
+          "display_name": "Description",
+          "uid": "description",
+          "data_type": "text",
+          "field_metadata": {
+            "description": "A description field",
+            "multiline": false,
+            "version": 0
+          },
+          "multiple": false,
+          "mandatory": false,
+          "unique": false,
+          "non_localizable": false
+        }
+      ],
+      "created_at": "2026-03-13T02:34:23.232Z",
+      "updated_at": "2026-03-13T02:34:23.232Z",
+      "_version": 1,
+      "inbuilt_class": false,
+      "last_activity": {},
+      "maintain_revisions": true
+    },
+    {
+      "title": "First Async",
+      "uid": "first",
+      "description": "",
+      "schema": [
+        {
+          "display_name": "Name",
+          "uid": "name",
+          "data_type": "text",
+          "multiple": false,
+          "mandatory": false,
+          "unique": false,
+          "non_localizable": false
+        },
+        {
+          "display_name": "Rich text editor",
+          "uid": "description",
+          "data_type": "text",
+          "field_metadata": {
+            "allow_rich_text": true,
+            "description": "",
+            "multili
+
Passed0.29s
+
✅ Test001_Should_Create_Referenced_Global_Field
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/global_fields
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 677
+Content-Type: application/json
+
Request Body
{"global_field": {"title":"Referenced Global Field","uid":"referenced_global_field","description":"A global field that will be referenced by another global field","schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"true","allow_rich_text":false,"multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true},{"display_name":"Description","uid":"description","data_type":"text","field_metadata":{"allow_rich_text":false,"description":"A description field","multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/global_fields' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 677' \
+  -H 'Content-Type: application/json' \
+  -d '{"global_field": {"title":"Referenced Global Field","uid":"referenced_global_field","description":"A global field that will be referenced by another global field","schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"true","allow_rich_text":false,"multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true},{"display_name":"Description","uid":"description","data_type":"text","field_metadata":{"allow_rich_text":false,"description":"A description field","multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}]}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:23 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+api_version: 3.2
+x-contentstack-organization: blt8d282118e2094bb8
+X-Request-ID: 35d77aef-1d73-473f-8eb9-9c14647ce3bd
+x-runtime: 33
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 786
+
Response Body +
{
+  "notice": "Global Field created successfully.",
+  "global_field": {
+    "title": "Referenced Global Field",
+    "uid": "referenced_global_field",
+    "description": "A global field that will be referenced by another global field",
+    "schema": [
+      {
+        "display_name": "Title",
+        "uid": "title",
+        "data_type": "text",
+        "field_metadata": {
+          "_default": true,
+          "version": 0
+        },
+        "multiple": false,
+        "mandatory": true,
+        "unique": true,
+        "non_localizable": false
+      },
+      {
+        "display_name": "Description",
+        "uid": "description",
+        "data_type": "text",
+        "field_metadata": {
+          "description": "A description field",
+          "multiline": false,
+          "version": 0
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      }
+    ],
+    "created_at": "2026-03-13T02:34:23.232Z",
+    "updated_at": "2026-03-13T02:34:23.232Z",
+    "_version": 1,
+    "inbuilt_class": false,
+    "last_activity": {},
+    "maintain_revisions": true
+  }
+}
+
Passed0.31s
+
✅ Test005_Should_Update_Nested_Global_Field
+

HTTP Transactions

+
+ +
PUThttps://api.contentstack.io/v3/global_fields/nested_global_field_test
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 925
+Content-Type: application/json
+
Request Body
{"global_field": {"title":"Updated Nested Global Field","uid":"nested_global_field_test","description":"Updated description for nested global field","schema":[{"display_name":"Single Line Textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"reference_to":"referenced_global_field","multiple":false,"mandatory":false,"unique":false,"non_localizable":false,"display_name":"Global Field Reference","uid":"global_field_reference","data_type":"global_field","field_metadata":{"allow_rich_text":false,"description":"Reference to another global field","multiline":false,"version":0,"markdown":false,"ref_multiple":false}}],"global_field_refs":[{"uid":"referenced_global_field","occurrence_count":1,"isChild":true,"paths":["schema.1"]}]}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/global_fields/nested_global_field_test' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 925' \
+  -H 'Content-Type: application/json' \
+  -d '{"global_field": {"title":"Updated Nested Global Field","uid":"nested_global_field_test","description":"Updated description for nested global field","schema":[{"display_name":"Single Line Textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"reference_to":"referenced_global_field","multiple":false,"mandatory":false,"unique":false,"non_localizable":false,"display_name":"Global Field Reference","uid":"global_field_reference","data_type":"global_field","field_metadata":{"allow_rich_text":false,"description":"Reference to another global field","multiline":false,"version":0,"markdown":false,"ref_multiple":false}}],"global_field_refs":[{"uid":"referenced_global_field","occurrence_count":1,"isChild":true,"paths":["schema.1"]}]}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:24 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+api_version: 3.2
+x-contentstack-organization: blt8d282118e2094bb8
+X-Request-ID: ea361dff-7dbe-4395-a60b-9e9a7b1a97a4
+x-runtime: 41
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 887
+
Response Body +
{
+  "notice": "Global Field updated successfully.",
+  "global_field": {
+    "title": "Updated Nested Global Field",
+    "uid": "nested_global_field_test",
+    "description": "Updated description for nested global field",
+    "schema": [
+      {
+        "display_name": "Single Line Textbox",
+        "uid": "single_line",
+        "data_type": "text",
+        "field_metadata": {
+          "default_value": "",
+          "description": "",
+          "multiline": false,
+          "version": 3
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "reference_to": "referenced_global_field",
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false,
+        "display_name": "Global Field Reference",
+        "uid": "global_field_reference",
+        "data_type": "global_field",
+        "field_metadata": {
+          "description": "Reference to another global field"
+        }
+      }
+    ],
+    "created_at": "2026-03-13T02:34:23.554Z",
+    "updated_at": "2026-03-13T02:34:24.517Z",
+    "_version": 2,
+    "inbuilt_class": false,
+    "last_activity": {},
+    "maintain_revisions": true
+  }
+}
+
Passed0.32s
+
✅ Test008_Should_Delete_Nested_Global_Field
+

HTTP Transactions

+
+ +
DELETEhttps://api.contentstack.io/v3/global_fields/nested_global_field_test
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/global_fields/nested_global_field_test' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:25 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+api_version: 3.2
+x-contentstack-organization: blt8d282118e2094bb8
+X-Request-ID: 154638d4-7a59-462f-b886-b17080443734
+x-runtime: 35
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 47
+
Response Body +
{
+  "notice": "Global Field deleted successfully."
+}
+
Passed0.40s
+
✅ Test002_Should_Create_Nested_Global_Field
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/global_fields
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Content-Length: 916
+Content-Type: application/json
+
Request Body
{"global_field": {"title":"Nested Global Field Test","uid":"nested_global_field_test","description":"Test nested global field for .NET SDK","schema":[{"display_name":"Single Line Textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"reference_to":"referenced_global_field","multiple":false,"mandatory":false,"unique":false,"non_localizable":false,"display_name":"Global Field Reference","uid":"global_field_reference","data_type":"global_field","field_metadata":{"allow_rich_text":false,"description":"Reference to another global field","multiline":false,"version":0,"markdown":false,"ref_multiple":false}}],"global_field_refs":[{"uid":"referenced_global_field","occurrence_count":1,"isChild":true,"paths":["schema.1"]}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/global_fields' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Content-Length: 916' \
+  -H 'Content-Type: application/json' \
+  -d '{"global_field": {"title":"Nested Global Field Test","uid":"nested_global_field_test","description":"Test nested global field for .NET SDK","schema":[{"display_name":"Single Line Textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"reference_to":"referenced_global_field","multiple":false,"mandatory":false,"unique":false,"non_localizable":false,"display_name":"Global Field Reference","uid":"global_field_reference","data_type":"global_field","field_metadata":{"allow_rich_text":false,"description":"Reference to another global field","multiline":false,"version":0,"markdown":false,"ref_multiple":false}}],"global_field_refs":[{"uid":"referenced_global_field","occurrence_count":1,"isChild":true,"paths":["schema.1"]}]}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:23 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+api_version: 3.2
+x-contentstack-organization: blt8d282118e2094bb8
+X-Request-ID: 8051c9be-c8e4-458e-86c6-94fb7fd99c2c
+x-runtime: 38
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 878
+
Response Body +
{
+  "notice": "Global Field created successfully.",
+  "global_field": {
+    "title": "Nested Global Field Test",
+    "uid": "nested_global_field_test",
+    "description": "Test nested global field for .NET SDK",
+    "schema": [
+      {
+        "display_name": "Single Line Textbox",
+        "uid": "single_line",
+        "data_type": "text",
+        "field_metadata": {
+          "default_value": "",
+          "description": "",
+          "multiline": false,
+          "version": 3
+        },
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false
+      },
+      {
+        "reference_to": "referenced_global_field",
+        "multiple": false,
+        "mandatory": false,
+        "unique": false,
+        "non_localizable": false,
+        "display_name": "Global Field Reference",
+        "uid": "global_field_reference",
+        "data_type": "global_field",
+        "field_metadata": {
+          "description": "Reference to another global field"
+        }
+      }
+    ],
+    "created_at": "2026-03-13T02:34:23.554Z",
+    "updated_at": "2026-03-13T02:34:23.554Z",
+    "_version": 1,
+    "inbuilt_class": false,
+    "last_activity": {},
+    "maintain_revisions": true
+  }
+}
+
Passed0.35s
+
+
+ +
+
+
+ + Contentstack015_BulkOperationTest +
+
+ 15 passed · + 0 failed · + 0 skipped · + 15 total +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Test NameStatusDuration
+
✅ Test006_Should_Update_Items_In_Release
+

Assertions

+
+
IsTrue(availableEntriesCount)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsFalse(availableReleaseUid)
+
+
Expected:
False
+
Actual:
False
+
+
+
+
IsNotNull(bulkUpdateResponse)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsTrue(bulkUpdateSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(jobStatusResponse)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsTrue(jobStatusSuccess)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 141
+Content-Type: application/json
+
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 141' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:17 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 38ms
+X-Request-ID: a90839f9-97cd-4655-a5a1-5103860f9f1b
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 125
+Content-Type: application/json
+
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 125' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:18 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 1da81029-1983-4627-bb6b-5c9fbccf129b
+x-response-time: 20
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 99
+
Response Body +
{
+  "error_message": "Failed to create release.",
+  "error_code": 141,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:18 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 29ms
+X-Request-ID: aa00198a-07a5-441c-bbd2-3010d422b784
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "entries": [
+    {
+      "title": "Fifth Entry",
+      "locale": "en-us",
+      "uid": "bltea8de9954232a811",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:54.424Z",
+      "updated_at": "2026-03-13T02:34:54.424Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Fourth Entry",
+      "locale": "en-us",
+      "uid": "bltcf848f8307e5274e",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:53.904Z",
+      "updated_at": "2026-03-13T02:34:53.904Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Third Entry",
+      "locale": "en-us",
+      "uid": "bltde2ee96ab086afd4",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.969Z",
+      "updated_at": "2026-03-13T02:34:52.969Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Second Entry",
+      "locale": "en-us",
+      "uid": "blt54d8f022b0365903",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.555Z",
+      "updated_at": "2026-03-13T02:34:52.555Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "First Entry",
+      "locale": "en-us",
+      "uid": "blt6bbe453e9c7393a7",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.181Z",
+      "updated_at": "2026-03-13T02:34:52.181Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    }
+  ]
+}
+
+ +
GEThttps://api.contentstack.io/v3/releases/bulk_test_release
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/releases/bulk_test_release' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:18 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 4c00530f-9869-4af8-ac0b-a8378b2e39e6
+x-response-time: 17
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 95
+
Response Body +
{
+  "error_message": "Release does not exist.",
+  "error_code": 141,
+  "errors": {
+    "uid": [
+      "is not valid."
+    ]
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:19 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 22a870e2-b062-4740-b74b-9f7ab7a8c620
+x-response-time: 20
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 351
+
Response Body +
{
+  "releases": [
+    {
+      "name": "bulk_test_release",
+      "description": "Release for testing bulk operations",
+      "locked": false,
+      "uid": "blt96bf5c25ce2bbcf4",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:34:48.078Z",
+      "updated_at": "2026-03-13T02:34:48.078Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 4
+    }
+  ]
+}
+
+ +
PUThttps://api.contentstack.io/v3/bulk/release/update_items
+
Request Headers
api_key: blt1bca31da998b57a9
+bulk_version: 2.0
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 264
+Content-Type: application/json
+
Request Body
{"items":[{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","content_type_uid":"bulk_test_content_type","version":1,"locale":"en-us","title":"First Entry"}],"release":"blt96bf5c25ce2bbcf4","action":"publish","locale":["en-us"],"reference":false}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/bulk/release/update_items' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'bulk_version: 2.0' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 264' \
+  -H 'Content-Type: application/json' \
+  -d '{"items":[{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","content_type_uid":"bulk_test_content_type","version":1,"locale":"en-us","title":"First Entry"}],"release":"blt96bf5c25ce2bbcf4","action":"publish","locale":["en-us"],"reference":false}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:19 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 3ad8bcb2-5f07-4167-9dac-87d1ffc9f8cb
+x-response-time: 37
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 131
+
Response Body +
{
+  "job_id": "cs-40623d8f-ccf9-48b0-86f0-f611aa6251fd",
+  "notice": "Your update release items to latest version request is in progress."
+}
+
+ +
GEThttps://api.contentstack.io/v3/bulk/jobs/cs-40623d8f-ccf9-48b0-86f0-f611aa6251fd
+
Request Headers
api_key: blt1bca31da998b57a9
+bulk_version: 2.0
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/bulk/jobs/cs-40623d8f-ccf9-48b0-86f0-f611aa6251fd' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'bulk_version: 2.0' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:21 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 59a86c20-36e0-489a-947c-84830d6b92c7
+x-response-time: 13
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 858
+
Response Body +
{
+  "job": {
+    "batch_metadata": {
+      "batch_size": 100,
+      "batch_count": 1,
+      "completed_batches": [],
+      "failed_batches": [
+        1
+      ]
+    },
+    "summary": {
+      "top_level_items": 1,
+      "failed": 0,
+      "skipped": 0,
+      "success": 0,
+      "total_processed": 0
+    },
+    "_id": "cs-40623d8f-ccf9-48b0-86f0-f611aa6251fd",
+    "action": "update_release_items",
+    "status": 4,
+    "api_key": "blt1bca31da998b57a9",
+    "org_uid": "blt8d282118e2094bb8",
+    "body": {
+      "items": [
+        {
+          "uid": "blt6bbe453e9c7393a7",
+          "content_type": "bulk_test_content_type",
+          "content_type_uid": "bulk_test_content_type",
+          "version": 1,
+          "locale": "en-us",
+          "title": "First Entry"
+        }
+      ],
+      "release": "blt96bf5c25ce2bbcf4",
+      "action": "publish",
+      "locale": [
+        "en-us"
+      ],
+      "reference": false,
+      "branch": "main",
+      "master_locale": "en-us",
+      "isAMV2AccessEnabled": false
+    },
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:19.366Z",
+    "updated_at": "2026-03-13T02:35:19.485Z",
+    "__v": 0,
+    "error": null
+  }
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioUpdateItemsInRelease
ContentTypebulk_test_content_type
ReleaseUidblt96bf5c25ce2bbcf4
+
Passed4.20s
+
✅ Test000b_Should_Create_Publishing_Rule_For_Workflow_Stage2
+

Assertions

+
+
IsFalse(WorkflowUid)
+
+
Expected:
False
+
Actual:
False
+
+
+
+
IsFalse(WorkflowStage2Uid)
+
+
Expected:
False
+
Actual:
False
+
+
+
+
IsFalse(EnvironmentUid)
+
+
Expected:
False
+
Actual:
False
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 141
+Content-Type: application/json
+
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 141' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:48 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 26ms
+X-Request-ID: b0c0babd-de31-4824-92c7-92c00d18a337
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 125
+Content-Type: application/json
+
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 125' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:49 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: bf63b28b-eb24-47e7-813b-d83e7d26dcc1
+x-response-time: 21
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 99
+
Response Body +
{
+  "error_message": "Failed to create release.",
+  "error_code": 141,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/workflows/publishing_rules
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/workflows/publishing_rules' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:49 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 17ms
+X-Request-ID: bd1f9880-4ef0-4aa7-9492-a8094772a55b
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "publishing_rules": [
+    {
+      "_id": "69b377c7b1f4aa932f26010d",
+      "uid": "bltf9fdca958702c9ea",
+      "api_key": "blt1bca31da998b57a9",
+      "workflow": "blt65a03f0bf9cc4344",
+      "workflow_stage": "blt1f5e68c65d8abfe6",
+      "actions": [],
+      "environment": "blte3eca71ae4290097",
+      "branches": [
+        "main"
+      ],
+      "content_types": [
+        "$all"
+      ],
+      "locales": [
+        "en-us"
+      ],
+      "approvers": {
+        "users": [],
+        "roles": []
+      },
+      "status": true,
+      "disable_approver_publishing": false,
+      "created_at": "2026-03-13T02:34:47.482Z",
+      "created_by": "blt1930fc55e5669df9"
+    }
+  ]
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioCreatePublishingRuleForWorkflowStage2
WorkflowUidblt65a03f0bf9cc4344
EnvironmentUidblte3eca71ae4290097
+
Passed0.86s
+
✅ Test004b_Should_Perform_Bulk_UnPublish_With_ApiVersion_3_2_With_SkipWorkflowStage_And_Approvals
+

Assertions

+
+
IsFalse(EnvironmentUid)
+
+
Expected:
False
+
Actual:
False
+
+
+
+
IsTrue(availableEntriesCount)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(bulkUnpublishResponse)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsTrue(bulkUnpublishSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
AreEqual(statusCode)
+
+
Expected:
OK
+
Actual:
OK
+
+
+
+
IsNotNull(responseJson)
+
+
Expected:
NotNull
+
Actual:
{
+  "notice": "Your bulk unpublish request is in progress. Please check publish queue for more details.",
+  "job_id": "beeb9e4d-f1ad-4a41-8920-4e5ab4b822bd"
+}
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 141
+Content-Type: application/json
+
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 141' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:12 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 28ms
+X-Request-ID: 412dba74-f79c-4fd9-b3a0-6d41d8836f46
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 125
+Content-Type: application/json
+
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 125' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:12 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: b50ab83e-5546-4153-8341-06dac5cb711b
+x-response-time: 18
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 99
+
Response Body +
{
+  "error_message": "Failed to create release.",
+  "error_code": 141,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:12 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 35ms
+X-Request-ID: 44f66a63-9072-4815-8e62-eedc9a6a8e89
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "entries": [
+    {
+      "title": "Fifth Entry",
+      "locale": "en-us",
+      "uid": "bltea8de9954232a811",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:54.424Z",
+      "updated_at": "2026-03-13T02:34:54.424Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Fourth Entry",
+      "locale": "en-us",
+      "uid": "bltcf848f8307e5274e",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:53.904Z",
+      "updated_at": "2026-03-13T02:34:53.904Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Third Entry",
+      "locale": "en-us",
+      "uid": "bltde2ee96ab086afd4",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.969Z",
+      "updated_at": "2026-03-13T02:34:52.969Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Second Entry",
+      "locale": "en-us",
+      "uid": "blt54d8f022b0365903",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.555Z",
+      "updated_at": "2026-03-13T02:34:52.555Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "First Entry",
+      "locale": "en-us",
+      "uid": "blt6bbe453e9c7393a7",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.181Z",
+      "updated_at": "2026-03-13T02:34:52.181Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    }
+  ]
+}
+
+ +
POSThttps://api.contentstack.io/v3/bulk/unpublish?skip_workflow_stage_check=true&approvals=true
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+api_version: 3.2
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 630
+Content-Type: application/json
+
Request Body
{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":true}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/bulk/unpublish?skip_workflow_stage_check=true&approvals=true' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'api_version: 3.2' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 630' \
+  -H 'Content-Type: application/json' \
+  -d '{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":true}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:13 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+x-runtime: 133
+x-contentstack-organization: blt8d282118e2094bb8
+x-cluster: 
+x-ratelimit-limit: 200, 200
+x-ratelimit-remaining: 198, 198
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+Content-Type: application/json; charset=utf-8
+Content-Length: 149
+
Response Body +
{
+  "notice": "Your bulk unpublish request is in progress. Please check publish queue for more details.",
+  "job_id": "beeb9e4d-f1ad-4a41-8920-4e5ab4b822bd"
+}
+
+ Test Context + + + + + + + + +
TestScenarioBulkUnpublishApiVersion32WithSkipWorkflowStageAndApprovals
ContentTypebulk_test_content_type
+
Passed1.30s
+
✅ Test005_Should_Perform_Bulk_Release_Operations
+

Assertions

+
+
IsTrue(availableEntriesCount)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsFalse(availableReleaseUid)
+
+
Expected:
False
+
Actual:
False
+
+
+
+
IsNotNull(releaseResponse)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsTrue(releaseAddItemsSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(job_id)
+
+
Expected:
NotNull
+
Actual:
cs-46c70266-6ea9-4b24-9257-0ddc4e4c9ada
+
+
+
+
IsNotNull(jobStatusResponse)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsTrue(jobStatusSuccess)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 141
+Content-Type: application/json
+
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 141' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:13 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 24ms
+X-Request-ID: 85d8c063-ef53-4688-876f-8693cb449d7a
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 125
+Content-Type: application/json
+
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 125' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:13 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 16042aeb-4a65-46e5-9081-110946a9cd03
+x-response-time: 197
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 99
+
Response Body +
{
+  "error_message": "Failed to create release.",
+  "error_code": 141,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:14 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 34ms
+X-Request-ID: 1d31d2eb-ad9d-43b0-acd1-e0fe028ae923
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "entries": [
+    {
+      "title": "Fifth Entry",
+      "locale": "en-us",
+      "uid": "bltea8de9954232a811",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:54.424Z",
+      "updated_at": "2026-03-13T02:34:54.424Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Fourth Entry",
+      "locale": "en-us",
+      "uid": "bltcf848f8307e5274e",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:53.904Z",
+      "updated_at": "2026-03-13T02:34:53.904Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Third Entry",
+      "locale": "en-us",
+      "uid": "bltde2ee96ab086afd4",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.969Z",
+      "updated_at": "2026-03-13T02:34:52.969Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Second Entry",
+      "locale": "en-us",
+      "uid": "blt54d8f022b0365903",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.555Z",
+      "updated_at": "2026-03-13T02:34:52.555Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "First Entry",
+      "locale": "en-us",
+      "uid": "blt6bbe453e9c7393a7",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.181Z",
+      "updated_at": "2026-03-13T02:34:52.181Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    }
+  ]
+}
+
+ +
GEThttps://api.contentstack.io/v3/releases/bulk_test_release
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/releases/bulk_test_release' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:14 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: ecacc4c4-6f19-4eab-a894-460174601b50
+x-response-time: 24
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 95
+
Response Body +
{
+  "error_message": "Release does not exist.",
+  "error_code": 141,
+  "errors": {
+    "uid": [
+      "is not valid."
+    ]
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:14 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 6e0e6e14-c38c-4a58-af92-af992346feb5
+x-response-time: 29
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 351
+
Response Body +
{
+  "releases": [
+    {
+      "name": "bulk_test_release",
+      "description": "Release for testing bulk operations",
+      "locked": false,
+      "uid": "blt96bf5c25ce2bbcf4",
+      "sys_locked": false,
+      "sys_version": 2,
+      "status": [],
+      "created_at": "2026-03-13T02:34:48.078Z",
+      "updated_at": "2026-03-13T02:34:48.078Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "items_count": 0
+    }
+  ]
+}
+
+ +
POSThttps://api.contentstack.io/v3/bulk/release/items
+
Request Headers
api_key: blt1bca31da998b57a9
+bulk_version: 2.0
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 761
+Content-Type: application/json
+
Request Body
{"items":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","content_type_uid":"bulk_test_content_type","version":1,"locale":"en-us","title":"Fifth Entry"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","content_type_uid":"bulk_test_content_type","version":1,"locale":"en-us","title":"Fourth Entry"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","content_type_uid":"bulk_test_content_type","version":1,"locale":"en-us","title":"Third Entry"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","content_type_uid":"bulk_test_content_type","version":1,"locale":"en-us","title":"Second Entry"}],"release":"blt96bf5c25ce2bbcf4","action":"publish","locale":["en-us"],"reference":false}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/bulk/release/items' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'bulk_version: 2.0' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 761' \
+  -H 'Content-Type: application/json' \
+  -d '{"items":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","content_type_uid":"bulk_test_content_type","version":1,"locale":"en-us","title":"Fifth Entry"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","content_type_uid":"bulk_test_content_type","version":1,"locale":"en-us","title":"Fourth Entry"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","content_type_uid":"bulk_test_content_type","version":1,"locale":"en-us","title":"Third Entry"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","content_type_uid":"bulk_test_content_type","version":1,"locale":"en-us","title":"Second Entry"}],"release":"blt96bf5c25ce2bbcf4","action":"publish","locale":["en-us"],"reference":false}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:15 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 4cbbc5f9-7275-4f6e-baba-eb089d43cb93
+x-response-time: 40
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 107
+
Response Body +
{
+  "job_id": "cs-46c70266-6ea9-4b24-9257-0ddc4e4c9ada",
+  "notice": "Your add to release request is in progress."
+}
+
+ +
GEThttps://api.contentstack.io/v3/bulk/jobs/cs-46c70266-6ea9-4b24-9257-0ddc4e4c9ada
+
Request Headers
api_key: blt1bca31da998b57a9
+bulk_version: 2.0
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/bulk/jobs/cs-46c70266-6ea9-4b24-9257-0ddc4e4c9ada' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'bulk_version: 2.0' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:17 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 149f0439-b1ea-4776-a670-f9268f75b110
+x-response-time: 13
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 1371
+
Response Body +
{
+  "job": {
+    "batch_metadata": {
+      "batch_size": 500,
+      "batch_count": 1,
+      "completed_batches": [
+        1
+      ],
+      "failed_batches": []
+    },
+    "summary": {
+      "top_level_items": 4,
+      "failed": 0,
+      "skipped": 0,
+      "success": 4,
+      "total_processed": 4
+    },
+    "_id": "cs-46c70266-6ea9-4b24-9257-0ddc4e4c9ada",
+    "action": "bulk_add_to_release",
+    "status": 4,
+    "api_key": "blt1bca31da998b57a9",
+    "org_uid": "blt8d282118e2094bb8",
+    "body": {
+      "items": [
+        {
+          "uid": "bltea8de9954232a811",
+          "content_type": "bulk_test_content_type",
+          "content_type_uid": "bulk_test_content_type",
+          "version": 1,
+          "locale": "en-us",
+          "title": "Fifth Entry"
+        },
+        {
+          "uid": "bltcf848f8307e5274e",
+          "content_type": "bulk_test_content_type",
+          "content_type_uid": "bulk_test_content_type",
+          "version": 1,
+          "locale": "en-us",
+          "title": "Fourth Entry"
+        },
+        {
+          "uid": "bltde2ee96ab086afd4",
+          "content_type": "bulk_test_content_type",
+          "content_type_uid": "bulk_test_content_type",
+          "version": 1,
+          "locale": "en-us",
+          "title": "Third Entry"
+        },
+        {
+          "uid": "blt54d8f022b0365903",
+          "content_type": "bulk_test_content_type",
+          "content_type_uid": "bulk_test_content_type",
+          "version": 1,
+          "locale": "en-us",
+          "title": "Second Entry"
+        }
+      ],
+      "release": "blt96bf5c25ce2bbcf4",
+      "action": "publish",
+      "locale": [
+        "en-us"
+      ],
+      "reference": false,
+      "branch": "main",
+      "master_locale": "en-us",
+      "maxNRPDepth": 10,
+      "isAMV2AccessEnabled": false
+    },
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:15.165Z",
+    "updated_at": "2026-03-13T02:35:15.416Z",
+    "__v": 0,
+    "error": null
+  }
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioBulkReleaseOperations
ContentTypebulk_test_content_type
ReleaseUidblt96bf5c25ce2bbcf4
+
Passed4.28s
+
✅ Test000a_Should_Create_Workflow_With_Two_Stages
+

Assertions

+
+
IsNotNull(Stage1Uid)
+
+
Expected:
NotNull
+
Actual:
bltebf2a5cf47670f4e
+
+
+
+
IsNotNull(Stage2Uid)
+
+
Expected:
NotNull
+
Actual:
blt1f5e68c65d8abfe6
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:46 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 22ms
+X-Request-ID: 68f71e8b-62bf-4675-8711-2f2813966b17
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "environments": []
+}
+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 141
+Content-Type: application/json
+
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 141' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:46 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 32ms
+X-Request-ID: 72508e8a-83c2-4fa9-9593-d9250bca89b3
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Environment created successfully.",
+  "environment": {
+    "name": "bulk_test_env",
+    "urls": [
+      {
+        "url": "https://bulk-test-environment.example.com",
+        "locale": "en-us"
+      }
+    ],
+    "uid": "blte3eca71ae4290097",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:34:46.311Z",
+    "updated_at": "2026-03-13T02:34:46.311Z",
+    "ACL": {},
+    "_version": 1
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/workflows
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/workflows' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:46 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 17ms
+X-Request-ID: 0b0a44c9-edb6-4633-82b2-c1fecc269250
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "workflows": []
+}
+
+ +
POSThttps://api.contentstack.io/v3/workflows
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 631
+Content-Type: application/json
+
Request Body
{"workflow": {"name":"workflow_test","enabled":true,"branches":["main"],"content_types":["$all"],"admin_users":{"users":[]},"workflow_stages":[{"color":"#fe5cfb","SYS_ACL":{"roles":{"uids":[]},"users":{"uids":["$all"]},"others":{}},"next_available_stages":["$all"],"allStages":true,"allUsers":true,"specificStages":false,"specificUsers":false,"entry_lock":"$none","name":"New stage 1"},{"color":"#3688bf","SYS_ACL":{"roles":{"uids":[]},"users":{"uids":["$all"]},"others":{}},"next_available_stages":["$all"],"allStages":true,"allUsers":true,"specificStages":false,"specificUsers":false,"entry_lock":"$none","name":"New stage 2"}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/workflows' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 631' \
+  -H 'Content-Type: application/json' \
+  -d '{"workflow": {"name":"workflow_test","enabled":true,"branches":["main"],"content_types":["$all"],"admin_users":{"users":[]},"workflow_stages":[{"color":"#fe5cfb","SYS_ACL":{"roles":{"uids":[]},"users":{"uids":["$all"]},"others":{}},"next_available_stages":["$all"],"allStages":true,"allUsers":true,"specificStages":false,"specificUsers":false,"entry_lock":"$none","name":"New stage 1"},{"color":"#3688bf","SYS_ACL":{"roles":{"uids":[]},"users":{"uids":["$all"]},"others":{}},"next_available_stages":["$all"],"allStages":true,"allUsers":true,"specificStages":false,"specificUsers":false,"entry_lock":"$none","name":"New stage 2"}]}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:46 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 27ms
+X-Request-ID: 91e84ae1-abc9-47bc-b7e7-20d9d25bb307
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Workflow created successfully.",
+  "workflow": {
+    "name": "workflow_test",
+    "enabled": true,
+    "branches": [
+      "main"
+    ],
+    "content_types": [
+      "$all"
+    ],
+    "admin_users": {
+      "users": [],
+      "roles": [
+        "blt1b7926e68b1b14b2"
+      ]
+    },
+    "workflow_stages": [
+      {
+        "color": "#fe5cfb",
+        "SYS_ACL": {
+          "others": {
+            "read": true,
+            "write": true,
+            "transit": false
+          },
+          "users": {
+            "uids": [
+              "$all"
+            ],
+            "read": true,
+            "write": true,
+            "transit": true
+          },
+          "roles": {
+            "uids": [],
+            "read": true,
+            "write": true,
+            "transit": true
+          }
+        },
+        "next_available_stages": [
+          "$all"
+        ],
+        "allStages": true,
+        "allUsers": true,
+        "specificStages": false,
+        "specificUsers": false,
+        "name": "New stage 1",
+        "uid": "bltebf2a5cf47670f4e"
+      },
+      {
+        "color": "#3688bf",
+        "SYS_ACL": {
+          "others": {
+            "read": true,
+            "write": true,
+            "transit": false
+          },
+          "users": {
+            "uids": [
+              "$all"
+            ],
+            "read": true,
+            "write": true,
+            "transit": true
+          },
+          "roles": {
+            "uids": [],
+            "read": true,
+            "write": true,
+            "transit": true
+          }
+        },
+        "next_available_stages": [
+          "$all"
+        ],
+        "allStages": true,
+        "allUsers": true,
+        "specificStages": false,
+        "specificUsers": false,
+        "name": "New stage 2",
+        "uid": "blt1f5e68c65d8abfe6"
+      }
+    ],
+    "createWorkflow": true,
+    "uid": "blt65a03f0bf9cc4344",
+    "api_key": "blt1bca31da998b57a9",
+    "org_uid": "blt8d282118e2094bb8",
+    "created_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:34:46.881Z",
+    "deleted_at": false
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/workflows/publishing_rules
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/workflows/publishing_rules' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:47 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 14ms
+X-Request-ID: 939c76c5-fa7a-4a2f-8b3d-e771e88f8f43
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "publishing_rules": []
+}
+
+ +
POSThttps://api.contentstack.io/v3/workflows/publishing_rules
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 280
+Content-Type: application/json
+
Request Body
{"publishing_rule": {"workflow":"blt65a03f0bf9cc4344","actions":[],"branches":["main"],"content_types":["$all"],"locales":["en-us"],"environment":"blte3eca71ae4290097","approvers":{"users":[],"roles":[]},"workflow_stage":"blt1f5e68c65d8abfe6","disable_approver_publishing":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/workflows/publishing_rules' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 280' \
+  -H 'Content-Type: application/json' \
+  -d '{"publishing_rule": {"workflow":"blt65a03f0bf9cc4344","actions":[],"branches":["main"],"content_types":["$all"],"locales":["en-us"],"environment":"blte3eca71ae4290097","approvers":{"users":[],"roles":[]},"workflow_stage":"blt1f5e68c65d8abfe6","disable_approver_publishing":false}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:47 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 52ms
+X-Request-ID: 14edef34-3c86-4751-95c9-55ff160ba533
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Publish rule created successfully.",
+  "publishing_rule": {
+    "uid": "bltf9fdca958702c9ea",
+    "api_key": "blt1bca31da998b57a9",
+    "workflow": "blt65a03f0bf9cc4344",
+    "workflow_stage": "blt1f5e68c65d8abfe6",
+    "actions": [],
+    "environment": "blte3eca71ae4290097",
+    "branches": [
+      "main"
+    ],
+    "content_types": [
+      "$all"
+    ],
+    "locales": [
+      "en-us"
+    ],
+    "approvers": {
+      "users": [],
+      "roles": []
+    },
+    "status": true,
+    "disable_approver_publishing": false,
+    "created_at": "2026-03-13T02:34:47.482Z",
+    "created_by": "blt1930fc55e5669df9",
+    "_id": "69b377c7b1f4aa932f26010d"
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 141
+Content-Type: application/json
+
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 141' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:47 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 27ms
+X-Request-ID: c54fd311-d3fb-4a33-8200-cf015f7f0806
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 125
+Content-Type: application/json
+
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 125' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:48 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: aa82ffa8-6022-4159-b3e3-624828dec805
+x-response-time: 38
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 441
+
Response Body +
{
+  "notice": "Release created successfully.",
+  "release": {
+    "name": "bulk_test_release",
+    "description": "Release for testing bulk operations",
+    "locked": false,
+    "archived": false,
+    "uid": "blt96bf5c25ce2bbcf4",
+    "_branches": [
+      "main"
+    ],
+    "items": [],
+    "sys_locked": false,
+    "sys_version": 2,
+    "status": [],
+    "created_at": "2026-03-13T02:34:48.078Z",
+    "updated_at": "2026-03-13T02:34:48.078Z",
+    "deleted_at": false,
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/workflows
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/workflows' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:48 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 16ms
+X-Request-ID: d639c3ef-488f-45f9-9ea1-1f504bc827d1
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "workflows": [
+    {
+      "name": "workflow_test",
+      "uid": "blt65a03f0bf9cc4344",
+      "org_uid": "blt8d282118e2094bb8",
+      "api_key": "blt1bca31da998b57a9",
+      "branches": [
+        "main"
+      ],
+      "content_types": [
+        "$all"
+      ],
+      "workflow_stages": [
+        {
+          "name": "New stage 1",
+          "uid": "bltebf2a5cf47670f4e",
+          "color": "#fe5cfb",
+          "SYS_ACL": {
+            "others": {
+              "read": true,
+              "write": true,
+              "transit": false
+            },
+            "users": {
+              "uids": [
+                "$all"
+              ],
+              "read": true,
+              "write": true,
+              "transit": true
+            },
+            "roles": {
+              "uids": [],
+              "read": true,
+              "write": true,
+              "transit": true
+            }
+          },
+          "next_available_stages": [
+            "$all"
+          ]
+        },
+        {
+          "name": "New stage 2",
+          "uid": "blt1f5e68c65d8abfe6",
+          "color": "#3688bf",
+          "SYS_ACL": {
+            "others": {
+              "read": true,
+              "write": true,
+              "transit": false
+            },
+            "users": {
+              "uids": [
+                "$all"
+              ],
+              "read": true,
+              "write": true,
+              "transit": true
+            },
+            "roles": {
+              "uids": [],
+              "read": true,
+              "write": true,
+              "transit": true
+            }
+          },
+          "next_available_stages": [
+            "$all"
+          ]
+        }
+      ],
+      "admin_users": {
+        "users": [],
+        "roles": [
+          "blt1b7926e68b1b14b2"
+        ]
+      },
+      "enabled": true,
+      "created_at": "2026-03-13T02:34:46.881Z",
+      "created_by": "blt1930fc55e5669df9",
+      "deleted_at": false
+    }
+  ]
+}
+
+ Test Context + + + + +
TestScenarioCreateWorkflowWithTwoStages
+
Passed0.99s
+
✅ Test003_Should_Perform_Bulk_Publish_Operation
+

Assertions

+
+
IsTrue(availableEntriesCount)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 141
+Content-Type: application/json
+
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 141' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:56 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 23ms
+X-Request-ID: 6a67f6d9-9c8b-464d-8bf0-09a62fe28b75
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 125
+Content-Type: application/json
+
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 125' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:56 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 7a4b4266-fbdc-4b38-a85f-7e0bc050effd
+x-response-time: 24
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 99
+
Response Body +
{
+  "error_message": "Failed to create release.",
+  "error_code": 141,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:04 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 31ms
+X-Request-ID: ce77fb62-dea4-45f9-a55a-f0556b7d319f
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "entries": [
+    {
+      "title": "Fifth Entry",
+      "locale": "en-us",
+      "uid": "bltea8de9954232a811",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:54.424Z",
+      "updated_at": "2026-03-13T02:34:54.424Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Fourth Entry",
+      "locale": "en-us",
+      "uid": "bltcf848f8307e5274e",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:53.904Z",
+      "updated_at": "2026-03-13T02:34:53.904Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Third Entry",
+      "locale": "en-us",
+      "uid": "bltde2ee96ab086afd4",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.969Z",
+      "updated_at": "2026-03-13T02:34:52.969Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Second Entry",
+      "locale": "en-us",
+      "uid": "blt54d8f022b0365903",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.555Z",
+      "updated_at": "2026-03-13T02:34:52.555Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "First Entry",
+      "locale": "en-us",
+      "uid": "blt6bbe453e9c7393a7",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.181Z",
+      "updated_at": "2026-03-13T02:34:52.181Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    }
+  ]
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments/bulk_test_environment
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments/bulk_test_environment' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:04 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 10ms
+X-Request-ID: 51ae25d7-2baf-45a5-ade5-3834c7090bd7
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment was not found. Please try again.",
+  "error_code": 248
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:05 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 23ms
+X-Request-ID: edf5da20-c329-4006-bd2e-d8bc8a45c365
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "environments": [
+    {
+      "name": "bulk_test_env",
+      "urls": [
+        {
+          "url": "https://bulk-test-environment.example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blte3eca71ae4290097",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:46.311Z",
+      "updated_at": "2026-03-13T02:34:46.311Z",
+      "ACL": [],
+      "_version": 1
+    }
+  ]
+}
+
+ +
POSThttps://api.contentstack.io/v3/bulk/publish?skip_workflow_stage_check=true&approvals=true
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 631
+Content-Type: application/json
+
Request Body
{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":false}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/bulk/publish?skip_workflow_stage_check=true&approvals=true' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 631' \
+  -H 'Content-Type: application/json' \
+  -d '{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":false}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:05 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 50
+x-ratelimit-remaining: 49
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 47ms
+X-Request-ID: 5a9af422ab8eb3323747c01b6ca976a7
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Entries cannot be published since they do not satisfy the required publish rules.",
+  "error_code": 141
+}
+
+ Test Context + + + + + + + + +
TestScenarioBulkPublishOperation
ContentTypebulk_test_content_type
+
Passed9.20s
+
✅ Test003a_Should_Perform_Bulk_Publish_With_SkipWorkflowStage_And_Approvals
+

Assertions

+
+
IsFalse(EnvironmentUid)
+
+
Expected:
False
+
Actual:
False
+
+
+
+
IsTrue(availableEntriesCount)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
AreEqual(statusCode)
+
+
Expected:
422
+
Actual:
422
+
+
+
+
AreEqual(errorCode)
+
+
Expected:
141
+
Actual:
141
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 141
+Content-Type: application/json
+
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 141' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:07 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 27ms
+X-Request-ID: 5988eeca-ad65-499d-82d9-dea622a6692e
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 125
+Content-Type: application/json
+
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 125' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:08 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: f75386a4-d8ca-4184-ac85-72e528a8d503
+x-response-time: 66
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 99
+
Response Body +
{
+  "error_message": "Failed to create release.",
+  "error_code": 141,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:08 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 32ms
+X-Request-ID: 0b57506e-2e33-4f1b-b0f9-c30089988d62
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "entries": [
+    {
+      "title": "Fifth Entry",
+      "locale": "en-us",
+      "uid": "bltea8de9954232a811",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:54.424Z",
+      "updated_at": "2026-03-13T02:34:54.424Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Fourth Entry",
+      "locale": "en-us",
+      "uid": "bltcf848f8307e5274e",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:53.904Z",
+      "updated_at": "2026-03-13T02:34:53.904Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Third Entry",
+      "locale": "en-us",
+      "uid": "bltde2ee96ab086afd4",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.969Z",
+      "updated_at": "2026-03-13T02:34:52.969Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Second Entry",
+      "locale": "en-us",
+      "uid": "blt54d8f022b0365903",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.555Z",
+      "updated_at": "2026-03-13T02:34:52.555Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "First Entry",
+      "locale": "en-us",
+      "uid": "blt6bbe453e9c7393a7",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.181Z",
+      "updated_at": "2026-03-13T02:34:52.181Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    }
+  ]
+}
+
+ +
POSThttps://api.contentstack.io/v3/bulk/publish?skip_workflow_stage_check=true&approvals=true
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 630
+Content-Type: application/json
+
Request Body
{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":true}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/bulk/publish?skip_workflow_stage_check=true&approvals=true' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 630' \
+  -H 'Content-Type: application/json' \
+  -d '{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":true}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:08 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 50
+x-ratelimit-remaining: 49
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 40ms
+X-Request-ID: bd6623bb11945461131e2aa1565d5400
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Entries cannot be published since they do not satisfy the required publish rules.",
+  "error_code": 141
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioBulkPublishWithSkipWorkflowStageAndApprovals
ContentTypebulk_test_content_type
EnvironmentUidblte3eca71ae4290097
+
Passed1.45s
+
✅ Test009_Should_Cleanup_Test_Resources
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 141
+Content-Type: application/json
+
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 141' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:24 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 25ms
+X-Request-ID: d2534d3b-1cfa-4422-9914-e4d91a27f937
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 125
+Content-Type: application/json
+
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 125' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:24 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 5bb1b8df-1caa-40b5-8328-f508c308b1c7
+x-response-time: 23
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 99
+
Response Body +
{
+  "error_message": "Failed to create release.",
+  "error_code": 141,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/content_types/bulk_test_content_type
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/content_types/bulk_test_content_type' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:24 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 181ms
+X-Request-ID: 20135d35-0e5f-4120-8b6e-297a87a56f97
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Content Type deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/workflows/publishing_rules/bltf9fdca958702c9ea
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/workflows/publishing_rules/bltf9fdca958702c9ea' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:25 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 50ms
+X-Request-ID: 13c8e30b-6ce0-4d75-920e-710890d32174
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Publish rule deleted successfully."
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/workflows/blt65a03f0bf9cc4344
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/workflows/blt65a03f0bf9cc4344' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:25 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 84ms
+X-Request-ID: a9e14772-3ee3-424c-8ea0-ee5e2ae59926
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Workflow deleted successfully.",
+  "workflow": {
+    "_id": "69b377c61fb61466b15129a4",
+    "name": "workflow_test",
+    "uid": "blt65a03f0bf9cc4344",
+    "org_uid": "blt8d282118e2094bb8",
+    "api_key": "blt1bca31da998b57a9",
+    "branches": [
+      "main"
+    ],
+    "content_types": [
+      "$all"
+    ],
+    "workflow_stages": [
+      {
+        "name": "New stage 1",
+        "uid": "bltebf2a5cf47670f4e",
+        "color": "#fe5cfb",
+        "SYS_ACL": {
+          "others": {
+            "read": true,
+            "write": true,
+            "transit": false
+          },
+          "users": {
+            "uids": [
+              "$all"
+            ],
+            "read": true,
+            "write": true,
+            "transit": true
+          },
+          "roles": {
+            "uids": [],
+            "read": true,
+            "write": true,
+            "transit": true
+          }
+        },
+        "next_available_stages": [
+          "$all"
+        ]
+      },
+      {
+        "name": "New stage 2",
+        "uid": "blt1f5e68c65d8abfe6",
+        "color": "#3688bf",
+        "SYS_ACL": {
+          "others": {
+            "read": true,
+            "write": true,
+            "transit": false
+          },
+          "users": {
+            "uids": [
+              "$all"
+            ],
+            "read": true,
+            "write": true,
+            "transit": true
+          },
+          "roles": {
+            "uids": [],
+            "read": true,
+            "write": true,
+            "transit": true
+          }
+        },
+        "next_available_stages": [
+          "$all"
+        ]
+      }
+    ],
+    "admin_users": {
+      "users": [],
+      "roles": [
+        "blt1b7926e68b1b14b2"
+      ]
+    },
+    "enabled": true,
+    "created_at": "2026-03-13T02:34:46.881Z",
+    "created_by": "blt1930fc55e5669df9",
+    "deleted_at": "2026-03-13T02:35:25.437Z",
+    "deleted_by": "blt1930fc55e5669df9"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/releases/bulk_test_release
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/releases/bulk_test_release' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:25 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 1cf5550a-c817-44ae-9ed9-5998e9bb9fd9
+x-response-time: 28
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 95
+
Response Body +
{
+  "error_message": "Release does not exist.",
+  "error_code": 141,
+  "errors": {
+    "uid": [
+      "is not valid."
+    ]
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/environments/bulk_test_environment
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/environments/bulk_test_environment' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:26 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 10ms
+X-Request-ID: ed1b4050-47f4-4677-9a5f-cd2a8e6fe58b
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment was not found. Please try again.",
+  "error_code": 248
+}
+
+ Test Context + + + + + + + + +
TestScenarioCleanupTestResources
ContentTypebulk_test_content_type
+
Passed2.29s
+
✅ Test004a_Should_Perform_Bulk_UnPublish_With_SkipWorkflowStage_And_Approvals
+

Assertions

+
+
IsFalse(EnvironmentUid)
+
+
Expected:
False
+
Actual:
False
+
+
+
+
IsTrue(availableEntriesCount)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
AreEqual(statusCode)
+
+
Expected:
422
+
Actual:
422
+
+
+
+
IsTrue(errorCode)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 141
+Content-Type: application/json
+
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 141' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:09 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 23ms
+X-Request-ID: aa7c142b-6cf6-4f38-b282-ace7ebd007ba
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 125
+Content-Type: application/json
+
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 125' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:09 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 7aca5792-43d1-44f5-80ea-442b178c15c1
+x-response-time: 161
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 99
+
Response Body +
{
+  "error_message": "Failed to create release.",
+  "error_code": 141,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:10 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 31ms
+X-Request-ID: 78a63196-8953-4af1-82c7-4e4168443af1
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "entries": [
+    {
+      "title": "Fifth Entry",
+      "locale": "en-us",
+      "uid": "bltea8de9954232a811",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:54.424Z",
+      "updated_at": "2026-03-13T02:34:54.424Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Fourth Entry",
+      "locale": "en-us",
+      "uid": "bltcf848f8307e5274e",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:53.904Z",
+      "updated_at": "2026-03-13T02:34:53.904Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Third Entry",
+      "locale": "en-us",
+      "uid": "bltde2ee96ab086afd4",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.969Z",
+      "updated_at": "2026-03-13T02:34:52.969Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Second Entry",
+      "locale": "en-us",
+      "uid": "blt54d8f022b0365903",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.555Z",
+      "updated_at": "2026-03-13T02:34:52.555Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "First Entry",
+      "locale": "en-us",
+      "uid": "blt6bbe453e9c7393a7",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.181Z",
+      "updated_at": "2026-03-13T02:34:52.181Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    }
+  ]
+}
+
+ +
POSThttps://api.contentstack.io/v3/bulk/unpublish?approvals=true
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 630
+Content-Type: application/json
+
Request Body
{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":true}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/bulk/unpublish?approvals=true' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 630' \
+  -H 'Content-Type: application/json' \
+  -d '{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":true}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:10 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 50
+x-ratelimit-remaining: 49
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 54ms
+X-Request-ID: 56dc725bf77d661704ad7d8c79df50ab
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Some entries cannot be published since they do not satisfy the required publish rules."
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioBulkUnpublishWithSkipWorkflowStageAndApprovals
ContentTypebulk_test_content_type
EnvironmentUidblte3eca71ae4290097
+
Passed1.59s
+
✅ Test004_Should_Perform_Bulk_Unpublish_Operation
+

Assertions

+
+
IsTrue(availableEntriesCount)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(bulkUnpublishResponse)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsTrue(bulkUnpublishSuccess)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 141
+Content-Type: application/json
+
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 141' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:05 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 25ms
+X-Request-ID: 31148b36-b30c-48a9-b62f-b8febc41ac8a
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 125
+Content-Type: application/json
+
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 125' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:06 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 9e91d322-b6b8-43b4-9812-d95462036850
+x-response-time: 29
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 99
+
Response Body +
{
+  "error_message": "Failed to create release.",
+  "error_code": 141,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:06 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 33ms
+X-Request-ID: d6581567-8b43-4218-b7e1-08798f8505d5
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "entries": [
+    {
+      "title": "Fifth Entry",
+      "locale": "en-us",
+      "uid": "bltea8de9954232a811",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:54.424Z",
+      "updated_at": "2026-03-13T02:34:54.424Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Fourth Entry",
+      "locale": "en-us",
+      "uid": "bltcf848f8307e5274e",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:53.904Z",
+      "updated_at": "2026-03-13T02:34:53.904Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Third Entry",
+      "locale": "en-us",
+      "uid": "bltde2ee96ab086afd4",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.969Z",
+      "updated_at": "2026-03-13T02:34:52.969Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Second Entry",
+      "locale": "en-us",
+      "uid": "blt54d8f022b0365903",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.555Z",
+      "updated_at": "2026-03-13T02:34:52.555Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "First Entry",
+      "locale": "en-us",
+      "uid": "blt6bbe453e9c7393a7",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.181Z",
+      "updated_at": "2026-03-13T02:34:52.181Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    }
+  ]
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments/bulk_test_environment
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments/bulk_test_environment' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:06 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 10ms
+X-Request-ID: 1234f535-2d7c-4484-ab4f-5716511beb47
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment was not found. Please try again.",
+  "error_code": 248
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:07 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 20ms
+X-Request-ID: 4ca8e5b2-0224-46dc-a0a0-8fdb95e3b3da
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "environments": [
+    {
+      "name": "bulk_test_env",
+      "urls": [
+        {
+          "url": "https://bulk-test-environment.example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blte3eca71ae4290097",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:46.311Z",
+      "updated_at": "2026-03-13T02:34:46.311Z",
+      "ACL": [],
+      "_version": 1
+    }
+  ]
+}
+
+ +
POSThttps://api.contentstack.io/v3/bulk/unpublish?skip_workflow_stage_check=true&approvals=true
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 631
+Content-Type: application/json
+
Request Body
{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":false}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/bulk/unpublish?skip_workflow_stage_check=true&approvals=true' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 631' \
+  -H 'Content-Type: application/json' \
+  -d '{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":false}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:07 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 50
+x-ratelimit-remaining: 49
+newpublishflow: false
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 66ms
+X-Request-ID: f26591e98f396d30eacb749dffa56234
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Your bulk unpublish request is in progress. Please check publish queue for more details."
+}
+
+ Test Context + + + + + + + + +
TestScenarioBulkUnpublishOperation
ContentTypebulk_test_content_type
+
Passed1.89s
+
✅ Test001_Should_Create_Content_Type_With_Title_Field
+

Assertions

+
+
IsNotNull(createContentTypeResponse)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsTrue(contentTypeCreateSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(content_type)
+
+
Expected:
NotNull
+
Actual:
{
+  "created_at": "2026-03-13T02:34:50.953Z",
+  "updated_at": "2026-03-13T02:34:50.953Z",
+  "title": "bulk_test_content_type",
+  "uid": "bulk_test_content_type",
+  "_version": 1,
+  "inbuilt_class": false,
+  "schema": [
+    {
+      "display_name": "Title",
+      "uid": "title",
+      "data_type": "text",
+      "multiple": false,
+      "mandatory": true,
+      "unique": false,
+      "non_localizable": false
+    }
+  ],
+  "last_activity": {},
+  "maintain_revisions": true,
+  "description": "",
+  "DEFAULT_ACL": {
+    "others": {
+      "read": false,
+      "create": false
+    },
+    "users": [
+      {
+        "read": true,
+        "sub_acl": {
+          "read": true
+        },
+        "uid": "blt99daf6332b695c38"
+      }
+    ],
+    "management_token": {
+      "read": true
+    }
+  },
+  "SYS_ACL": {
+    "roles": [],
+    "others": {
+      "read": false,
+      "create": false,
+      "update": false,
+      "delete": false,
+      "sub_acl": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "publish": false
+      }
+    }
+  },
+  "options": {
+    "title": "title",
+    "is_page": false,
+    "singleton": false
+  },
+  "abilities": {
+    "get_one_object": true,
+    "get_all_objects": true,
+    "create_object": true,
+    "update_object": true,
+    "delete_object": true,
+    "delete_all_objects": true
+  }
+}
+
+
+
+
AreEqual(contentTypeUid)
+
+
Expected:
bulk_test_content_type
+
Actual:
bulk_test_content_type
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 141
+Content-Type: application/json
+
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 141' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:49 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 26ms
+X-Request-ID: b09fa6ca-6e67-40f8-ab78-9d3a13099be2
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 125
+Content-Type: application/json
+
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 125' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:50 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: cc76028e-5af6-4bba-9adc-1e7f282b8c58
+x-response-time: 20
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 99
+
Response Body +
{
+  "error_message": "Failed to create release.",
+  "error_code": 141,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 141
+Content-Type: application/json
+
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 141' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:50 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 24ms
+X-Request-ID: 0cdfee79-53df-43d3-8466-538be79e6925
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 125
+Content-Type: application/json
+
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 125' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:50 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 7fc7aa63-599c-4bc0-9fca-9d536304b865
+x-response-time: 24
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 99
+
Response Body +
{
+  "error_message": "Failed to create release.",
+  "error_code": 141,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/content_types
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 201
+Content-Type: application/json
+
Request Body
{"content_type": {"title":"bulk_test_content_type","uid":"bulk_test_content_type","schema":[{"display_name":"Title","uid":"title","data_type":"text","multiple":false,"mandatory":true,"unique":false}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/content_types' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 201' \
+  -H 'Content-Type: application/json' \
+  -d '{"content_type": {"title":"bulk_test_content_type","uid":"bulk_test_content_type","schema":[{"display_name":"Title","uid":"title","data_type":"text","multiple":false,"mandatory":true,"unique":false}]}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:50 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 44ms
+X-Request-ID: 8549de51-5c62-4a16-89e1-0ff440d910e7
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Content Type created successfully.",
+  "content_type": {
+    "created_at": "2026-03-13T02:34:50.953Z",
+    "updated_at": "2026-03-13T02:34:50.953Z",
+    "title": "bulk_test_content_type",
+    "uid": "bulk_test_content_type",
+    "_version": 1,
+    "inbuilt_class": false,
+    "schema": [
+      {
+        "display_name": "Title",
+        "uid": "title",
+        "data_type": "text",
+        "multiple": false,
+        "mandatory": true,
+        "unique": false,
+        "non_localizable": false
+      }
+    ],
+    "last_activity": {},
+    "maintain_revisions": true,
+    "description": "",
+    "DEFAULT_ACL": {
+      "others": {
+        "read": false,
+        "create": false
+      },
+      "users": [
+        {
+          "read": true,
+          "sub_acl": {
+            "read": true
+          },
+          "uid": "blt99daf6332b695c38"
+        }
+      ],
+      "management_token": {
+        "read": true
+      }
+    },
+    "SYS_ACL": {
+      "roles": [],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "options": {
+      "title": "title",
+      "is_page": false,
+      "singleton": false
+    },
+    "abilities": {
+      "get_one_object": true,
+      "get_all_objects": true,
+      "create_object": true,
+      "update_object": true,
+      "delete_object": true,
+      "delete_all_objects": true
+    }
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioCreateContentTypeWithTitleField
ContentTypebulk_test_content_type
+
Passed1.64s
+
✅ Test007_Should_Perform_Bulk_Delete_Operation
+

Assertions

+
+
IsTrue(availableEntriesCount)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(deleteDetails)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.BulkDeleteDetails
+
+
+
+
IsTrue(deleteDetailsEntriesCount)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 141
+Content-Type: application/json
+
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 141' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:21 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 24ms
+X-Request-ID: f9fceafb-4e59-401d-b024-8e7f4fe57c72
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 125
+Content-Type: application/json
+
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 125' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:22 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: dd6d3669-059c-4a9b-953c-573515d87399
+x-response-time: 20
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 99
+
Response Body +
{
+  "error_message": "Failed to create release.",
+  "error_code": 141,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:22 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 31ms
+X-Request-ID: 5643d3ca-73be-4e72-b208-b473802fba14
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "entries": [
+    {
+      "title": "Fifth Entry",
+      "locale": "en-us",
+      "uid": "bltea8de9954232a811",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:54.424Z",
+      "updated_at": "2026-03-13T02:34:54.424Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Fourth Entry",
+      "locale": "en-us",
+      "uid": "bltcf848f8307e5274e",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:53.904Z",
+      "updated_at": "2026-03-13T02:34:53.904Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Third Entry",
+      "locale": "en-us",
+      "uid": "bltde2ee96ab086afd4",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.969Z",
+      "updated_at": "2026-03-13T02:34:52.969Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Second Entry",
+      "locale": "en-us",
+      "uid": "blt54d8f022b0365903",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.555Z",
+      "updated_at": "2026-03-13T02:34:52.555Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "First Entry",
+      "locale": "en-us",
+      "uid": "blt6bbe453e9c7393a7",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.181Z",
+      "updated_at": "2026-03-13T02:34:52.181Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    }
+  ]
+}
+
+ Test Context + + + + + + + + +
TestScenarioBulkDeleteOperation
ContentTypebulk_test_content_type
+
Passed0.89s
+
✅ Test003b_Should_Perform_Bulk_Publish_With_ApiVersion_3_2_With_SkipWorkflowStage_And_Approvals
+

Assertions

+
+
IsFalse(EnvironmentUid)
+
+
Expected:
False
+
Actual:
False
+
+
+
+
IsTrue(availableEntriesCount)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(bulkPublishResponse)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsTrue(bulkPublishSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
AreEqual(statusCode)
+
+
Expected:
OK
+
Actual:
OK
+
+
+
+
IsNotNull(responseJson)
+
+
Expected:
NotNull
+
Actual:
{
+  "notice": "Your bulk publish request is in progress. Please check publish queue for more details.",
+  "job_id": "c02b0c77-ab42-4634-9d02-bd74bfdaa815"
+}
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 141
+Content-Type: application/json
+
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 141' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:10 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 27ms
+X-Request-ID: feb27c5d-e902-4e8e-a427-d7484456b45c
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 125
+Content-Type: application/json
+
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 125' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:11 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 1f2cb8e4-4038-4702-a27d-f7eda66dc0a3
+x-response-time: 20
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 99
+
Response Body +
{
+  "error_message": "Failed to create release.",
+  "error_code": 141,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:11 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 33ms
+X-Request-ID: 333a9244-7159-47fe-9bf8-af84e5578824
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "entries": [
+    {
+      "title": "Fifth Entry",
+      "locale": "en-us",
+      "uid": "bltea8de9954232a811",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:54.424Z",
+      "updated_at": "2026-03-13T02:34:54.424Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Fourth Entry",
+      "locale": "en-us",
+      "uid": "bltcf848f8307e5274e",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:53.904Z",
+      "updated_at": "2026-03-13T02:34:53.904Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Third Entry",
+      "locale": "en-us",
+      "uid": "bltde2ee96ab086afd4",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.969Z",
+      "updated_at": "2026-03-13T02:34:52.969Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Second Entry",
+      "locale": "en-us",
+      "uid": "blt54d8f022b0365903",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.555Z",
+      "updated_at": "2026-03-13T02:34:52.555Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "First Entry",
+      "locale": "en-us",
+      "uid": "blt6bbe453e9c7393a7",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.181Z",
+      "updated_at": "2026-03-13T02:34:52.181Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    }
+  ]
+}
+
+ +
POSThttps://api.contentstack.io/v3/bulk/publish?skip_workflow_stage_check=true&approvals=true
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+api_version: 3.2
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 630
+Content-Type: application/json
+
Request Body
{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":true}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/bulk/publish?skip_workflow_stage_check=true&approvals=true' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'api_version: 3.2' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 630' \
+  -H 'Content-Type: application/json' \
+  -d '{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":true}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:11 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+x-runtime: 40
+x-contentstack-organization: blt8d282118e2094bb8
+x-cluster: 
+x-ratelimit-limit: 200, 200
+x-ratelimit-remaining: 198, 198
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+Content-Type: application/json; charset=utf-8
+Content-Length: 147
+
Response Body +
{
+  "notice": "Your bulk publish request is in progress. Please check publish queue for more details.",
+  "job_id": "c02b0c77-ab42-4634-9d02-bd74bfdaa815"
+}
+
+ Test Context + + + + + + + + +
TestScenarioBulkPublishApiVersion32WithSkipWorkflowStageAndApprovals
ContentTypebulk_test_content_type
+
Passed1.33s
+
✅ Test008_Should_Perform_Bulk_Workflow_Operations
+

Assertions

+
+
IsTrue(availableEntriesCount)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 141
+Content-Type: application/json
+
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 141' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:22 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 25ms
+X-Request-ID: f4d68706-9897-4ac0-80af-80dd40cd708f
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 125
+Content-Type: application/json
+
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 125' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:23 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: a7bc3087-ee24-4d09-ac14-f824235947b3
+x-response-time: 27
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 99
+
Response Body +
{
+  "error_message": "Failed to create release.",
+  "error_code": 141,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:23 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 32ms
+X-Request-ID: fe773417-b909-4682-af1c-598746943778
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "entries": [
+    {
+      "title": "Fifth Entry",
+      "locale": "en-us",
+      "uid": "bltea8de9954232a811",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:54.424Z",
+      "updated_at": "2026-03-13T02:34:54.424Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Fourth Entry",
+      "locale": "en-us",
+      "uid": "bltcf848f8307e5274e",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:53.904Z",
+      "updated_at": "2026-03-13T02:34:53.904Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Third Entry",
+      "locale": "en-us",
+      "uid": "bltde2ee96ab086afd4",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.969Z",
+      "updated_at": "2026-03-13T02:34:52.969Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "Second Entry",
+      "locale": "en-us",
+      "uid": "blt54d8f022b0365903",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.555Z",
+      "updated_at": "2026-03-13T02:34:52.555Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    },
+    {
+      "title": "First Entry",
+      "locale": "en-us",
+      "uid": "blt6bbe453e9c7393a7",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:52.181Z",
+      "updated_at": "2026-03-13T02:34:52.181Z",
+      "ACL": {},
+      "_version": 1,
+      "tags": [],
+      "_in_progress": false
+    }
+  ]
+}
+
+ +
POSThttps://api.contentstack.io/v3/bulk/workflow
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 571
+Content-Type: application/json
+
Request Body
{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","locale":"en-us"}],"workflow":{"uid":"blt1f5e68c65d8abfe6","comment":"Bulk workflow update test","due_date":"Fri Mar 20 2026","notify":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/bulk/workflow' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 571' \
+  -H 'Content-Type: application/json' \
+  -d '{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","locale":"en-us"}],"workflow":{"uid":"blt1f5e68c65d8abfe6","comment":"Bulk workflow update test","due_date":"Fri Mar 20 2026","notify":false}}'
+ +
+
+
412 Precondition Failed
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:23 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 50
+x-ratelimit-remaining: 49
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 19ms
+X-Request-ID: 973397d01251723e9c6ee7b7453854c6
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Stage Update Request Failed.",
+  "error_code": 366,
+  "errors": {
+    "workflow.workflow_stage": [
+      "is required"
+    ]
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioBulkWorkflowOperations
ContentTypebulk_test_content_type
+
Passed1.22s
+
✅ Test002_Should_Create_Five_Entries
+

Assertions

+
+
IsFalse(WorkflowUid)
+
+
Expected:
False
+
Actual:
False
+
+
+
+
IsFalse(WorkflowStage1Uid)
+
+
Expected:
False
+
Actual:
False
+
+
+
+
IsFalse(WorkflowStage2Uid)
+
+
Expected:
False
+
Actual:
False
+
+
+
+
IsNotNull(createEntryResponse)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsTrue(entryCreateSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(entry)
+
+
Expected:
NotNull
+
Actual:
{
+  "title": "First Entry",
+  "locale": "en-us",
+  "uid": "blt6bbe453e9c7393a7",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:34:52.181Z",
+  "updated_at": "2026-03-13T02:34:52.181Z",
+  "ACL": {},
+  "_version": 1,
+  "tags": [],
+  "_in_progress": false
+}
+
+
+
+
IsNotNull(entryUid)
+
+
Expected:
NotNull
+
Actual:
blt6bbe453e9c7393a7
+
+
+
+
IsNotNull(createEntryResponse)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsTrue(entryCreateSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(entry)
+
+
Expected:
NotNull
+
Actual:
{
+  "title": "Second Entry",
+  "locale": "en-us",
+  "uid": "blt54d8f022b0365903",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:34:52.555Z",
+  "updated_at": "2026-03-13T02:34:52.555Z",
+  "ACL": {},
+  "_version": 1,
+  "tags": [],
+  "_in_progress": false
+}
+
+
+
+
IsNotNull(entryUid)
+
+
Expected:
NotNull
+
Actual:
blt54d8f022b0365903
+
+
+
+
IsNotNull(createEntryResponse)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsTrue(entryCreateSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(entry)
+
+
Expected:
NotNull
+
Actual:
{
+  "title": "Third Entry",
+  "locale": "en-us",
+  "uid": "bltde2ee96ab086afd4",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:34:52.969Z",
+  "updated_at": "2026-03-13T02:34:52.969Z",
+  "ACL": {},
+  "_version": 1,
+  "tags": [],
+  "_in_progress": false
+}
+
+
+
+
IsNotNull(entryUid)
+
+
Expected:
NotNull
+
Actual:
bltde2ee96ab086afd4
+
+
+
+
IsNotNull(createEntryResponse)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsTrue(entryCreateSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(entry)
+
+
Expected:
NotNull
+
Actual:
{
+  "title": "Fourth Entry",
+  "locale": "en-us",
+  "uid": "bltcf848f8307e5274e",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:34:53.904Z",
+  "updated_at": "2026-03-13T02:34:53.904Z",
+  "ACL": {},
+  "_version": 1,
+  "tags": [],
+  "_in_progress": false
+}
+
+
+
+
IsNotNull(entryUid)
+
+
Expected:
NotNull
+
Actual:
bltcf848f8307e5274e
+
+
+
+
IsNotNull(createEntryResponse)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.ContentstackResponse
+
+
+
+
IsTrue(entryCreateSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(entry)
+
+
Expected:
NotNull
+
Actual:
{
+  "title": "Fifth Entry",
+  "locale": "en-us",
+  "uid": "bltea8de9954232a811",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:34:54.424Z",
+  "updated_at": "2026-03-13T02:34:54.424Z",
+  "ACL": {},
+  "_version": 1,
+  "tags": [],
+  "_in_progress": false
+}
+
+
+
+
IsNotNull(entryUid)
+
+
Expected:
NotNull
+
Actual:
bltea8de9954232a811
+
+
+
+
AreEqual(createdEntriesCount)
+
+
Expected:
5
+
Actual:
5
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 141
+Content-Type: application/json
+
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 141' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:51 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 27ms
+X-Request-ID: 76582a58-cc4a-404e-95f4-6bb088f89905
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/releases
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 125
+Content-Type: application/json
+
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/releases' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 125' \
+  -H 'Content-Type: application/json' \
+  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:51 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 1471a59b-6231-4654-ae23-627ffe087553
+x-response-time: 29
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 99
+
Response Body +
{
+  "error_message": "Failed to create release.",
+  "error_code": 141,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/content_types/bulk_test_content_type' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:51 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+surrogate-key: blt1bca31da998b57a9.content_types blt1bca31da998b57a9.content_types.bulk_test_content_type
+cache-tag: blt1bca31da998b57a9.content_types blt1bca31da998b57a9.content_types.bulk_test_content_type
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 24ms
+X-Request-ID: 365a9858-5316-4532-995a-6e6de1f76ed5
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "content_type": {
+    "created_at": "2026-03-13T02:34:50.953Z",
+    "updated_at": "2026-03-13T02:34:50.953Z",
+    "title": "bulk_test_content_type",
+    "uid": "bulk_test_content_type",
+    "_version": 1,
+    "inbuilt_class": false,
+    "schema": [
+      {
+        "display_name": "Title",
+        "uid": "title",
+        "data_type": "text",
+        "multiple": false,
+        "mandatory": true,
+        "unique": false,
+        "non_localizable": false
+      }
+    ],
+    "last_activity": {},
+    "maintain_revisions": true,
+    "description": "",
+    "DEFAULT_ACL": {
+      "others": {
+        "read": false,
+        "create": false
+      },
+      "users": [
+        {
+          "read": true,
+          "sub_acl": {
+            "read": true
+          },
+          "uid": "blt99daf6332b695c38"
+        }
+      ],
+      "management_token": {
+        "read": true
+      }
+    },
+    "SYS_ACL": {
+      "roles": [
+        {
+          "uid": "blt5f456b9cfa69b697",
+          "read": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true,
+            "publish": true
+          },
+          "update": true,
+          "delete": true
+        },
+        {
+          "uid": "bltd7ebbaea63551cf9",
+          "read": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true,
+            "publish": true
+          }
+        },
+        {
+          "uid": "blt1b7926e68b1b14b2",
+          "read": true,
+          "sub_acl": {
+            "create": true,
+            "read": true,
+            "update": true,
+            "delete": true,
+            "publish": true
+          },
+          "update": true,
+          "delete": true
+        }
+      ],
+      "others": {
+        "read": false,
+        "create": false,
+        "update": false,
+        "delete": false,
+        "sub_acl": {
+          "read": false,
+          "create": false,
+          "update": false,
+          "delete": false,
+          "publish": false
+        }
+      }
+    },
+    "options": {
+      "title": "title",
+      "is_page": false,
+      "singleton": false
+    },
+    "abilities": {
+      "get_one_object": true,
+      "get_all_objects": true,
+      "create_object": true,
+      "update_object": true,
+      "delete_object": true,
+      "delete_all_objects": true
+    }
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 34
+Content-Type: application/json
+
Request Body
{"entry": {"title":"First Entry"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 34' \
+  -H 'Content-Type: application/json' \
+  -d '{"entry": {"title":"First Entry"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:52 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 66ms
+X-Request-ID: bb6bb930-f96f-414b-b601-e16c2fba4849
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Entry created successfully.",
+  "entry": {
+    "title": "First Entry",
+    "locale": "en-us",
+    "uid": "blt6bbe453e9c7393a7",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:34:52.181Z",
+    "updated_at": "2026-03-13T02:34:52.181Z",
+    "ACL": {},
+    "_version": 1,
+    "tags": [],
+    "_in_progress": false
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 35
+Content-Type: application/json
+
Request Body
{"entry": {"title":"Second Entry"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 35' \
+  -H 'Content-Type: application/json' \
+  -d '{"entry": {"title":"Second Entry"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:52 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 75ms
+X-Request-ID: 81eef7fa-6f89-40bb-aadd-0927d10071eb
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Entry created successfully.",
+  "entry": {
+    "title": "Second Entry",
+    "locale": "en-us",
+    "uid": "blt54d8f022b0365903",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:34:52.555Z",
+    "updated_at": "2026-03-13T02:34:52.555Z",
+    "ACL": {},
+    "_version": 1,
+    "tags": [],
+    "_in_progress": false
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 34
+Content-Type: application/json
+
Request Body
{"entry": {"title":"Third Entry"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 34' \
+  -H 'Content-Type: application/json' \
+  -d '{"entry": {"title":"Third Entry"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:53 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 97
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 77ms
+X-Request-ID: 8ca61639-4ae6-408b-a161-7bb478caacf1
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Entry created successfully.",
+  "entry": {
+    "title": "Third Entry",
+    "locale": "en-us",
+    "uid": "bltde2ee96ab086afd4",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:34:52.969Z",
+    "updated_at": "2026-03-13T02:34:52.969Z",
+    "ACL": {},
+    "_version": 1,
+    "tags": [],
+    "_in_progress": false
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 35
+Content-Type: application/json
+
Request Body
{"entry": {"title":"Fourth Entry"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 35' \
+  -H 'Content-Type: application/json' \
+  -d '{"entry": {"title":"Fourth Entry"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:53 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 78ms
+X-Request-ID: c0a925e6-9633-4aae-bd33-1c62c9afcc56
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Entry created successfully.",
+  "entry": {
+    "title": "Fourth Entry",
+    "locale": "en-us",
+    "uid": "bltcf848f8307e5274e",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:34:53.904Z",
+    "updated_at": "2026-03-13T02:34:53.904Z",
+    "ACL": {},
+    "_version": 1,
+    "tags": [],
+    "_in_progress": false
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 34
+Content-Type: application/json
+
Request Body
{"entry": {"title":"Fifth Entry"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 34' \
+  -H 'Content-Type: application/json' \
+  -d '{"entry": {"title":"Fifth Entry"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:54 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 77ms
+X-Request-ID: 0f45d2f3-82e7-4efd-bd24-709f94a6845e
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Entry created successfully.",
+  "entry": {
+    "title": "Fifth Entry",
+    "locale": "en-us",
+    "uid": "bltea8de9954232a811",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:34:54.424Z",
+    "updated_at": "2026-03-13T02:34:54.424Z",
+    "ACL": {},
+    "_version": 1,
+    "tags": [],
+    "_in_progress": false
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/bulk/workflow
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 389
+Content-Type: application/json
+
Request Body
{"entries":[{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","locale":"en-us"}],"workflow":{"uid":"bltebf2a5cf47670f4e","comment":"Stage allotment for bulk tests","due_date":null,"notify":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/bulk/workflow' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 389' \
+  -H 'Content-Type: application/json' \
+  -d '{"entries":[{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","locale":"en-us"}],"workflow":{"uid":"bltebf2a5cf47670f4e","comment":"Stage allotment for bulk tests","due_date":null,"notify":false}}'
+ +
+
+
412 Precondition Failed
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:54 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 50
+x-ratelimit-remaining: 49
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 18ms
+X-Request-ID: 5be949037f6d00c0041eb854115c119c
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Stage Update Request Failed.",
+  "error_code": 366,
+  "errors": {
+    "workflow.workflow_stage": [
+      "is required"
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/bulk/workflow
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 302
+Content-Type: application/json
+
Request Body
{"entries":[{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","locale":"en-us"}],"workflow":{"uid":"blt1f5e68c65d8abfe6","comment":"Stage allotment for bulk tests","due_date":null,"notify":false}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/bulk/workflow' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 302' \
+  -H 'Content-Type: application/json' \
+  -d '{"entries":[{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","locale":"en-us"}],"workflow":{"uid":"blt1f5e68c65d8abfe6","comment":"Stage allotment for bulk tests","due_date":null,"notify":false}}'
+ +
+
+
412 Precondition Failed
+
Response Headers
Date: Fri, 13 Mar 2026 02:34:56 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 50
+x-ratelimit-remaining: 49
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 15ms
+X-Request-ID: 0c0b91436ecf782adf20cad4ebacd41f
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Stage Update Request Failed.",
+  "error_code": 366,
+  "errors": {
+    "workflow.workflow_stage": [
+      "is required"
+    ]
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioCreateFiveEntries
ContentTypebulk_test_content_type
+
Passed5.41s
+
+
+ +
+
+
+ + Contentstack016_DeliveryTokenTest +
+
+ 16 passed · + 0 failed · + 0 skipped · + 16 total +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Test NameStatusDuration
+
✅ Test004_Should_Fetch_Delivery_Token_Async
+

Assertions

+
+
IsTrue(CreateDeliveryTokenSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Response should contain token object)
+
+
Expected:
NotNull
+
Actual:
{
+  "name": "Test Delivery Token",
+  "description": "Integration test delivery token",
+  "scope": [
+    {
+      "environments": [
+        {
+          "name": "test_delivery_environment",
+          "urls": [
+            {
+              "url": "https://example.com",
+              "locale": "en-us"
+            }
+          ],
+          "app_user_object_uid": "system",
+          "uid": "bltf1a9311ed6120511",
+          "created_by": "blt1930fc55e5669df9",
+          "updated_by": "blt1930fc55e5669df9",
+          "created_at": "2026-03-13T02:35:26.376Z",
+          "updated_at": "2026-03-13T02:35:26.376Z",
+          "ACL": [],
+          "_version": 1,
+          "tags": []
+        }
+      ],
+      "module": "environment",
+      "acl": {
+        "read": true
+      },
+      "_metadata": {
+        "uid": "csf25200c6605fb7e8"
+      }
+    },
+    {
+      "module": "branch",
+      "acl": {
+        "read": true
+      },
+      "branches": [
+        "main"
+      ],
+      "_metadata": {
+        "uid": "csb134bdc2f78eb1bc"
+      }
+    }
+  ],
+  "uid": "blt17a7ec5c193a4c5b",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:35:31.937Z",
+  "updated_at": "2026-03-13T02:35:31.937Z",
+  "token": "csb66b227eeae95b423373cac1",
+  "type": "delivery"
+}
+
+
+
+
IsNotNull(Token should have UID)
+
+
Expected:
NotNull
+
Actual:
blt17a7ec5c193a4c5b
+
+
+
+
AreEqual(TokenName)
+
+
Expected:
Test Delivery Token
+
Actual:
Test Delivery Token
+
+
+
+
AreEqual(TokenDescription)
+
+
Expected:
Integration test delivery token
+
Actual:
Integration test delivery token
+
+
+
+
IsNotNull(Delivery token UID should not be null)
+
+
Expected:
NotNull
+
Actual:
blt17a7ec5c193a4c5b
+
+
+
+
IsTrue(AsyncFetchSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Response should contain token object)
+
+
Expected:
NotNull
+
Actual:
{
+  "name": "Test Delivery Token",
+  "description": "Integration test delivery token",
+  "scope": [
+    {
+      "environments": [
+        {
+          "name": "test_delivery_environment",
+          "urls": [
+            {
+              "url": "https://example.com",
+              "locale": "en-us"
+            }
+          ],
+          "app_user_object_uid": "system",
+          "uid": "bltf1a9311ed6120511",
+          "created_by": "blt1930fc55e5669df9",
+          "updated_by": "blt1930fc55e5669df9",
+          "created_at": "2026-03-13T02:35:26.376Z",
+          "updated_at": "2026-03-13T02:35:26.376Z",
+          "ACL": [],
+          "_version": 1,
+          "tags": []
+        }
+      ],
+      "module": "environment",
+      "acl": {
+        "read": true
+      },
+      "_metadata": {
+        "uid": "csf25200c6605fb7e8"
+      }
+    },
+    {
+      "module": "branch",
+      "acl": {
+        "read": true
+      },
+      "branches": [
+        "main"
+      ],
+      "_metadata": {
+        "uid": "csb134bdc2f78eb1bc"
+      }
+    }
+  ],
+  "uid": "blt17a7ec5c193a4c5b",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:35:31.937Z",
+  "updated_at": "2026-03-13T02:35:31.937Z",
+  "token": "csb66b227eeae95b423373cac1",
+  "type": "delivery"
+}
+
+
+
+
AreEqual(TokenUid)
+
+
Expected:
blt17a7ec5c193a4c5b
+
Actual:
blt17a7ec5c193a4c5b
+
+
+
+
IsNotNull(Token should have access token)
+
+
Expected:
NotNull
+
Actual:
csb66b227eeae95b423373cac1
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 131
+Content-Type: application/json
+
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 131' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:31 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 28ms
+X-Request-ID: 3cfa9937-7bd1-4a07-a9e8-dd3c0cbb9371
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 253
+Content-Type: application/json
+
Request Body
{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 253' \
+  -H 'Content-Type: application/json' \
+  -d '{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:31 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 97
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 49ms
+X-Request-ID: 0f720a3c-5e10-4fa3-a792-01195b054853
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token created successfully.",
+  "token": {
+    "name": "Test Delivery Token",
+    "description": "Integration test delivery token",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "csf25200c6605fb7e8"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "csb134bdc2f78eb1bc"
+        }
+      }
+    ],
+    "uid": "blt17a7ec5c193a4c5b",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:31.937Z",
+    "updated_at": "2026-03-13T02:35:31.937Z",
+    "token": "csb66b227eeae95b423373cac1",
+    "type": "delivery"
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/stacks/delivery_tokens/blt17a7ec5c193a4c5b
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt17a7ec5c193a4c5b' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:32 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 18ms
+X-Request-ID: f445c133-81e5-4329-ba89-07e89e95cb3e
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "token": {
+    "name": "Test Delivery Token",
+    "description": "Integration test delivery token",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "csf25200c6605fb7e8"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "csb134bdc2f78eb1bc"
+        }
+      }
+    ],
+    "uid": "blt17a7ec5c193a4c5b",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:31.937Z",
+    "updated_at": "2026-03-13T02:35:31.937Z",
+    "token": "csb66b227eeae95b423373cac1",
+    "type": "delivery"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blt17a7ec5c193a4c5b
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt17a7ec5c193a4c5b' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:32 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 66ms
+X-Request-ID: 6c8e776e-c1ac-427d-9291-0f89e7e90059
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token deleted successfully."
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:32 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 21ms
+X-Request-ID: f9b7ad49-96ed-44a5-97bf-15c4249797a8
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "environments": [
+    {
+      "name": "test_delivery_environment",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "bltf1a9311ed6120511",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:26.376Z",
+      "updated_at": "2026-03-13T02:35:26.376Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "bulk_test_env",
+      "urls": [
+        {
+          "url": "https://bulk-test-environment.example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blte3eca71ae4290097",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:46.311Z",
+      "updated_at": "2026-03-13T02:34:46.311Z",
+      "ACL": [],
+      "_version": 1
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:33 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 10ms
+X-Request-ID: 01b6d2e7-a22a-4592-9c29-0cf1b1564abf
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment was not found. Please try again.",
+  "error_code": 248
+}
+
+ Test Context + + + + + + + + + + + + + + + + +
TestScenarioTest004_Should_Fetch_Delivery_Token_Async
TestScenarioTest001_Should_Create_Delivery_Token
DeliveryTokenUidblt17a7ec5c193a4c5b
DeliveryTokenUidblt17a7ec5c193a4c5b
+
Passed1.81s
+
✅ Test006_Should_Update_Delivery_Token_Async
+

Assertions

+
+
IsTrue(CreateDeliveryTokenSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Response should contain token object)
+
+
Expected:
NotNull
+
Actual:
{
+  "name": "Test Delivery Token",
+  "description": "Integration test delivery token",
+  "scope": [
+    {
+      "environments": [
+        {
+          "name": "test_delivery_environment",
+          "urls": [
+            {
+              "url": "https://example.com",
+              "locale": "en-us"
+            }
+          ],
+          "app_user_object_uid": "system",
+          "uid": "bltf1a9311ed6120511",
+          "created_by": "blt1930fc55e5669df9",
+          "updated_by": "blt1930fc55e5669df9",
+          "created_at": "2026-03-13T02:35:26.376Z",
+          "updated_at": "2026-03-13T02:35:26.376Z",
+          "ACL": [],
+          "_version": 1,
+          "tags": []
+        }
+      ],
+      "module": "environment",
+      "acl": {
+        "read": true
+      },
+      "_metadata": {
+        "uid": "cs62c30e6d4a2001ab"
+      }
+    },
+    {
+      "module": "branch",
+      "acl": {
+        "read": true
+      },
+      "branches": [
+        "main"
+      ],
+      "_metadata": {
+        "uid": "cs18855b7133e3fe10"
+      }
+    }
+  ],
+  "uid": "blt1c0d644dfddc4dc1",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:35:35.569Z",
+  "updated_at": "2026-03-13T02:35:35.569Z",
+  "token": "cs0a747fd81b4a71af9e3cd2fa",
+  "type": "delivery"
+}
+
+
+
+
IsNotNull(Token should have UID)
+
+
Expected:
NotNull
+
Actual:
blt1c0d644dfddc4dc1
+
+
+
+
AreEqual(TokenName)
+
+
Expected:
Test Delivery Token
+
Actual:
Test Delivery Token
+
+
+
+
AreEqual(TokenDescription)
+
+
Expected:
Integration test delivery token
+
Actual:
Integration test delivery token
+
+
+
+
IsNotNull(Delivery token UID should not be null)
+
+
Expected:
NotNull
+
Actual:
blt1c0d644dfddc4dc1
+
+
+
+
IsTrue(AsyncUpdateSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Response should contain token object)
+
+
Expected:
NotNull
+
Actual:
{
+  "name": "Async Updated Test Delivery Token",
+  "description": "Async updated integration test delivery token",
+  "scope": [
+    {
+      "environments": [
+        {
+          "name": "test_delivery_environment",
+          "urls": [
+            {
+              "url": "https://example.com",
+              "locale": "en-us"
+            }
+          ],
+          "app_user_object_uid": "system",
+          "uid": "bltf1a9311ed6120511",
+          "created_by": "blt1930fc55e5669df9",
+          "updated_by": "blt1930fc55e5669df9",
+          "created_at": "2026-03-13T02:35:26.376Z",
+          "updated_at": "2026-03-13T02:35:26.376Z",
+          "ACL": [],
+          "_version": 1,
+          "tags": []
+        }
+      ],
+      "module": "environment",
+      "acl": {
+        "read": true
+      },
+      "_metadata": {
+        "uid": "cs472f440d8444b4b0"
+      }
+    },
+    {
+      "module": "branch",
+      "acl": {
+        "read": true
+      },
+      "branches": [
+        "main"
+      ],
+      "_metadata": {
+        "uid": "csa217e678d6f93c1e"
+      }
+    }
+  ],
+  "uid": "blt1c0d644dfddc4dc1",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:35:35.569Z",
+  "updated_at": "2026-03-13T02:35:35.895Z",
+  "token": "cs0a747fd81b4a71af9e3cd2fa",
+  "type": "delivery"
+}
+
+
+
+
AreEqual(TokenUid)
+
+
Expected:
blt1c0d644dfddc4dc1
+
Actual:
blt1c0d644dfddc4dc1
+
+
+
+
AreEqual(UpdatedTokenName)
+
+
Expected:
Async Updated Test Delivery Token
+
Actual:
Async Updated Test Delivery Token
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 131
+Content-Type: application/json
+
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 131' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:35 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 25ms
+X-Request-ID: e4d5565c-9a0c-446c-a367-bfeadd7eab52
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 253
+Content-Type: application/json
+
Request Body
{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 253' \
+  -H 'Content-Type: application/json' \
+  -d '{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:35 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 56ms
+X-Request-ID: 4848c744-34ca-45d4-b31f-9f4126bb6000
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token created successfully.",
+  "token": {
+    "name": "Test Delivery Token",
+    "description": "Integration test delivery token",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "cs62c30e6d4a2001ab"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "cs18855b7133e3fe10"
+        }
+      }
+    ],
+    "uid": "blt1c0d644dfddc4dc1",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:35.569Z",
+    "updated_at": "2026-03-13T02:35:35.569Z",
+    "token": "cs0a747fd81b4a71af9e3cd2fa",
+    "type": "delivery"
+  }
+}
+
+ +
PUThttps://api.contentstack.io/v3/stacks/delivery_tokens/blt1c0d644dfddc4dc1
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 281
+Content-Type: application/json
+
Request Body
{"token": {"name":"Async Updated Test Delivery Token","description":"Async updated integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt1c0d644dfddc4dc1' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 281' \
+  -H 'Content-Type: application/json' \
+  -d '{"token": {"name":"Async Updated Test Delivery Token","description":"Async updated integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:35 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 97
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 64ms
+X-Request-ID: ed86a081-a830-4536-8786-4a1f38433a0d
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token updated successfully.",
+  "token": {
+    "name": "Async Updated Test Delivery Token",
+    "description": "Async updated integration test delivery token",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "cs472f440d8444b4b0"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "csa217e678d6f93c1e"
+        }
+      }
+    ],
+    "uid": "blt1c0d644dfddc4dc1",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:35.569Z",
+    "updated_at": "2026-03-13T02:35:35.895Z",
+    "token": "cs0a747fd81b4a71af9e3cd2fa",
+    "type": "delivery"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blt1c0d644dfddc4dc1
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt1c0d644dfddc4dc1' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:36 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 45ms
+X-Request-ID: aaa6cd7e-187a-4f47-a008-50c3e6795f54
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token deleted successfully."
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:36 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 21ms
+X-Request-ID: 0e7c0f04-71dc-4e8e-af3a-a939c797c11f
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "environments": [
+    {
+      "name": "test_delivery_environment",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "bltf1a9311ed6120511",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:26.376Z",
+      "updated_at": "2026-03-13T02:35:26.376Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "bulk_test_env",
+      "urls": [
+        {
+          "url": "https://bulk-test-environment.example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blte3eca71ae4290097",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:46.311Z",
+      "updated_at": "2026-03-13T02:34:46.311Z",
+      "ACL": [],
+      "_version": 1
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:36 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 10ms
+X-Request-ID: 733b05e2-2ebc-440a-8cf6-ba585ef92f31
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment was not found. Please try again.",
+  "error_code": 248
+}
+
+ Test Context + + + + + + + + + + + + + + + + +
TestScenarioTest006_Should_Update_Delivery_Token_Async
TestScenarioTest001_Should_Create_Delivery_Token
DeliveryTokenUidblt1c0d644dfddc4dc1
DeliveryTokenUidblt1c0d644dfddc4dc1
+
Passed1.83s
+
✅ Test005_Should_Update_Delivery_Token
+

Assertions

+
+
IsTrue(CreateDeliveryTokenSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Response should contain token object)
+
+
Expected:
NotNull
+
Actual:
{
+  "name": "Test Delivery Token",
+  "description": "Integration test delivery token",
+  "scope": [
+    {
+      "environments": [
+        {
+          "name": "test_delivery_environment",
+          "urls": [
+            {
+              "url": "https://example.com",
+              "locale": "en-us"
+            }
+          ],
+          "app_user_object_uid": "system",
+          "uid": "bltf1a9311ed6120511",
+          "created_by": "blt1930fc55e5669df9",
+          "updated_by": "blt1930fc55e5669df9",
+          "created_at": "2026-03-13T02:35:26.376Z",
+          "updated_at": "2026-03-13T02:35:26.376Z",
+          "ACL": [],
+          "_version": 1,
+          "tags": []
+        }
+      ],
+      "module": "environment",
+      "acl": {
+        "read": true
+      },
+      "_metadata": {
+        "uid": "cs4f370c609d475dbb"
+      }
+    },
+    {
+      "module": "branch",
+      "acl": {
+        "read": true
+      },
+      "branches": [
+        "main"
+      ],
+      "_metadata": {
+        "uid": "cscdaf43ee53279ba5"
+      }
+    }
+  ],
+  "uid": "blt281ff23e2e806814",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:35:33.73Z",
+  "updated_at": "2026-03-13T02:35:33.73Z",
+  "token": "cs38768b2fe277c64a51a977c8",
+  "type": "delivery"
+}
+
+
+
+
IsNotNull(Token should have UID)
+
+
Expected:
NotNull
+
Actual:
blt281ff23e2e806814
+
+
+
+
AreEqual(TokenName)
+
+
Expected:
Test Delivery Token
+
Actual:
Test Delivery Token
+
+
+
+
AreEqual(TokenDescription)
+
+
Expected:
Integration test delivery token
+
Actual:
Integration test delivery token
+
+
+
+
IsNotNull(Delivery token UID should not be null)
+
+
Expected:
NotNull
+
Actual:
blt281ff23e2e806814
+
+
+
+
IsTrue(UpdateSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Response should contain token object)
+
+
Expected:
NotNull
+
Actual:
{
+  "name": "Updated Test Delivery Token",
+  "description": "Updated integration test delivery token",
+  "scope": [
+    {
+      "environments": [
+        {
+          "name": "test_delivery_environment",
+          "urls": [
+            {
+              "url": "https://example.com",
+              "locale": "en-us"
+            }
+          ],
+          "app_user_object_uid": "system",
+          "uid": "bltf1a9311ed6120511",
+          "created_by": "blt1930fc55e5669df9",
+          "updated_by": "blt1930fc55e5669df9",
+          "created_at": "2026-03-13T02:35:26.376Z",
+          "updated_at": "2026-03-13T02:35:26.376Z",
+          "ACL": [],
+          "_version": 1,
+          "tags": []
+        }
+      ],
+      "module": "environment",
+      "acl": {
+        "read": true
+      },
+      "_metadata": {
+        "uid": "cs6c2741331f8864fc"
+      }
+    },
+    {
+      "module": "branch",
+      "acl": {
+        "read": true
+      },
+      "branches": [
+        "main"
+      ],
+      "_metadata": {
+        "uid": "csf4cab3a259d1b45a"
+      }
+    }
+  ],
+  "uid": "blt281ff23e2e806814",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:35:33.73Z",
+  "updated_at": "2026-03-13T02:35:34.06Z",
+  "token": "cs38768b2fe277c64a51a977c8",
+  "type": "delivery"
+}
+
+
+
+
AreEqual(TokenUid)
+
+
Expected:
blt281ff23e2e806814
+
Actual:
blt281ff23e2e806814
+
+
+
+
AreEqual(UpdatedTokenName)
+
+
Expected:
Updated Test Delivery Token
+
Actual:
Updated Test Delivery Token
+
+
+
+
AreEqual(UpdatedTokenDescription)
+
+
Expected:
Updated integration test delivery token
+
Actual:
Updated integration test delivery token
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 131
+Content-Type: application/json
+
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 131' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:33 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 25ms
+X-Request-ID: 549ae392-de93-4c84-adae-66cba214c478
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 253
+Content-Type: application/json
+
Request Body
{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 253' \
+  -H 'Content-Type: application/json' \
+  -d '{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:33 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 97
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 55ms
+X-Request-ID: 9ec950cd-e64e-4c38-b6f0-1b72a741e98c
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token created successfully.",
+  "token": {
+    "name": "Test Delivery Token",
+    "description": "Integration test delivery token",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "cs4f370c609d475dbb"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "cscdaf43ee53279ba5"
+        }
+      }
+    ],
+    "uid": "blt281ff23e2e806814",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:33.730Z",
+    "updated_at": "2026-03-13T02:35:33.730Z",
+    "token": "cs38768b2fe277c64a51a977c8",
+    "type": "delivery"
+  }
+}
+
+ +
PUThttps://api.contentstack.io/v3/stacks/delivery_tokens/blt281ff23e2e806814
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 269
+Content-Type: application/json
+
Request Body
{"token": {"name":"Updated Test Delivery Token","description":"Updated integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt281ff23e2e806814' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 269' \
+  -H 'Content-Type: application/json' \
+  -d '{"token": {"name":"Updated Test Delivery Token","description":"Updated integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:34 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 76ms
+X-Request-ID: 66fefb83-fcc6-48ba-9b12-2f7a9a222be7
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token updated successfully.",
+  "token": {
+    "name": "Updated Test Delivery Token",
+    "description": "Updated integration test delivery token",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "cs6c2741331f8864fc"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "csf4cab3a259d1b45a"
+        }
+      }
+    ],
+    "uid": "blt281ff23e2e806814",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:33.730Z",
+    "updated_at": "2026-03-13T02:35:34.060Z",
+    "token": "cs38768b2fe277c64a51a977c8",
+    "type": "delivery"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blt281ff23e2e806814
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt281ff23e2e806814' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:34 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 51ms
+X-Request-ID: 1ba91147-73f2-4ce2-a458-865dad37c0e8
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token deleted successfully."
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:34 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 19ms
+X-Request-ID: 8067905e-4377-463f-87ad-e78795d31551
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "environments": [
+    {
+      "name": "test_delivery_environment",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "bltf1a9311ed6120511",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:26.376Z",
+      "updated_at": "2026-03-13T02:35:26.376Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "bulk_test_env",
+      "urls": [
+        {
+          "url": "https://bulk-test-environment.example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blte3eca71ae4290097",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:46.311Z",
+      "updated_at": "2026-03-13T02:34:46.311Z",
+      "ACL": [],
+      "_version": 1
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:34 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 97
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 11ms
+X-Request-ID: c383abf9-b1a6-4f40-99eb-16d2fe079f4a
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment was not found. Please try again.",
+  "error_code": 248
+}
+
+ Test Context + + + + + + + + + + + + + + + + +
TestScenarioTest005_Should_Update_Delivery_Token
TestScenarioTest001_Should_Create_Delivery_Token
DeliveryTokenUidblt281ff23e2e806814
DeliveryTokenUidblt281ff23e2e806814
+
Passed1.84s
+
✅ Test016_Should_Create_Token_With_Empty_Description
+

Assertions

+
+
IsTrue(EmptyDescCreateSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Token should have UID)
+
+
Expected:
NotNull
+
Actual:
blt79e5dacabb4c8671
+
+
+
+
AreEqual(EmptyDescTokenName)
+
+
Expected:
Empty Description Token
+
Actual:
Empty Description Token
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 131
+Content-Type: application/json
+
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 131' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:47 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 25ms
+X-Request-ID: 46809749-b0b2-4ed1-ac7e-47a63fef36fe
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 226
+Content-Type: application/json
+
Request Body
{"token": {"name":"Empty Description Token","description":"","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 226' \
+  -H 'Content-Type: application/json' \
+  -d '{"token": {"name":"Empty Description Token","description":"","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:48 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 66ms
+X-Request-ID: 1d6285ba-af95-4271-aa23-b1968fe3fd5c
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token created successfully.",
+  "token": {
+    "name": "Empty Description Token",
+    "description": "",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "cs1f796918738e5c97"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "cs00c39d4355c6e1b8"
+        }
+      }
+    ],
+    "uid": "blt79e5dacabb4c8671",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:48.187Z",
+    "updated_at": "2026-03-13T02:35:48.187Z",
+    "token": "cs20eb21f417e6ff45296a400f",
+    "type": "delivery"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blt79e5dacabb4c8671
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt79e5dacabb4c8671' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:48 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 51ms
+X-Request-ID: 3a0fcf23-aec1-495b-8c59-8846c09e24be
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token deleted successfully."
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:48 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 23ms
+X-Request-ID: 01a6aad5-eb7a-4f9b-8e04-aeaa59a264fc
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "environments": [
+    {
+      "name": "test_delivery_environment_2",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blt748d28fa29b47ac7",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:40.943Z",
+      "updated_at": "2026-03-13T02:35:40.943Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "test_delivery_environment",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "bltf1a9311ed6120511",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:26.376Z",
+      "updated_at": "2026-03-13T02:35:26.376Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "bulk_test_env",
+      "urls": [
+        {
+          "url": "https://bulk-test-environment.example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blte3eca71ae4290097",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:46.311Z",
+      "updated_at": "2026-03-13T02:34:46.311Z",
+      "ACL": [],
+      "_version": 1
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:49 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 10ms
+X-Request-ID: 3606bc51-f5d1-4a3f-81b9-ef4bfd7fb2b2
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment was not found. Please try again.",
+  "error_code": 248
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest016_Should_Create_Token_With_Empty_Description
EmptyDescTokenUidblt79e5dacabb4c8671
+
Passed1.80s
+
✅ Test002_Should_Create_Delivery_Token_Async
+

Assertions

+
+
IsTrue(AsyncCreateSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Response should contain token object)
+
+
Expected:
NotNull
+
Actual:
{
+  "name": "Async Test Delivery Token",
+  "description": "Async integration test delivery token",
+  "scope": [
+    {
+      "environments": [
+        {
+          "name": "test_delivery_environment",
+          "urls": [
+            {
+              "url": "https://example.com",
+              "locale": "en-us"
+            }
+          ],
+          "app_user_object_uid": "system",
+          "uid": "bltf1a9311ed6120511",
+          "created_by": "blt1930fc55e5669df9",
+          "updated_by": "blt1930fc55e5669df9",
+          "created_at": "2026-03-13T02:35:26.376Z",
+          "updated_at": "2026-03-13T02:35:26.376Z",
+          "ACL": [],
+          "_version": 1,
+          "tags": []
+        }
+      ],
+      "module": "environment",
+      "acl": {
+        "read": true
+      },
+      "_metadata": {
+        "uid": "cs34b616b31af2ed38"
+      }
+    },
+    {
+      "module": "branch",
+      "acl": {
+        "read": true
+      },
+      "branches": [
+        "main"
+      ],
+      "_metadata": {
+        "uid": "cs9d56dde565baf3d2"
+      }
+    }
+  ],
+  "uid": "blt9e3b786d5d60f98f",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:35:28.304Z",
+  "updated_at": "2026-03-13T02:35:28.304Z",
+  "token": "cs43634389f9e0ac8edba6f086",
+  "type": "delivery"
+}
+
+
+
+
IsNotNull(Token should have UID)
+
+
Expected:
NotNull
+
Actual:
blt9e3b786d5d60f98f
+
+
+
+
AreEqual(AsyncTokenName)
+
+
Expected:
Async Test Delivery Token
+
Actual:
Async Test Delivery Token
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 131
+Content-Type: application/json
+
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 131' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:27 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 26ms
+X-Request-ID: 3fbf1f50-2d14-9783-b002-515e8da5f9e2
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 265
+Content-Type: application/json
+
Request Body
{"token": {"name":"Async Test Delivery Token","description":"Async integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 265' \
+  -H 'Content-Type: application/json' \
+  -d '{"token": {"name":"Async Test Delivery Token","description":"Async integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:28 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 60ms
+X-Request-ID: 47dba523-ac7b-456f-a5b0-22e0cf0a105c
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token created successfully.",
+  "token": {
+    "name": "Async Test Delivery Token",
+    "description": "Async integration test delivery token",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "cs34b616b31af2ed38"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "cs9d56dde565baf3d2"
+        }
+      }
+    ],
+    "uid": "blt9e3b786d5d60f98f",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:28.304Z",
+    "updated_at": "2026-03-13T02:35:28.304Z",
+    "token": "cs43634389f9e0ac8edba6f086",
+    "type": "delivery"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blt9e3b786d5d60f98f
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt9e3b786d5d60f98f' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:28 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 61ms
+X-Request-ID: 712c41bf-4dd1-4d5c-a7a4-6a773a5bd863
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token deleted successfully."
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:28 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 21ms
+X-Request-ID: 3a3b6184-4383-4a3b-a470-c71c3448d808
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "environments": [
+    {
+      "name": "test_delivery_environment",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "bltf1a9311ed6120511",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:26.376Z",
+      "updated_at": "2026-03-13T02:35:26.376Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "bulk_test_env",
+      "urls": [
+        {
+          "url": "https://bulk-test-environment.example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blte3eca71ae4290097",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:46.311Z",
+      "updated_at": "2026-03-13T02:34:46.311Z",
+      "ACL": [],
+      "_version": 1
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:29 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 9ms
+X-Request-ID: 7ee7fa72-a402-4eeb-9d75-ec1ac3745bdf
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment was not found. Please try again.",
+  "error_code": 248
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest002_Should_Create_Delivery_Token_Async
AsyncCreatedTokenUidblt9e3b786d5d60f98f
+
Passed1.67s
+
✅ Test017_Should_Validate_Environment_Scope_Requirement
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 131
+Content-Type: application/json
+
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 131' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:49 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 22ms
+X-Request-ID: b0c229b5-da1a-4f1c-b6f2-2cb12e0d2814
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 210
+Content-Type: application/json
+
Request Body
{"token": {"name":"Environment Only Token","description":"Token with only environment scope - should fail","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 210' \
+  -H 'Content-Type: application/json' \
+  -d '{"token": {"name":"Environment Only Token","description":"Token with only environment scope - should fail","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}}]}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:50 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 97
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 21ms
+X-Request-ID: 78d079c1-b5e1-4c6f-bb4b-0f395b5f24ea
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Delivery Token creation failed. Please try again.",
+  "error_code": 141,
+  "errors": {
+    "scope.branch_or_alias": [
+      "is a required field."
+    ]
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:50 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 22ms
+X-Request-ID: 761a3e34-5b21-49c6-be57-666a91991507
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "environments": [
+    {
+      "name": "test_delivery_environment_2",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blt748d28fa29b47ac7",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:40.943Z",
+      "updated_at": "2026-03-13T02:35:40.943Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "test_delivery_environment",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "bltf1a9311ed6120511",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:26.376Z",
+      "updated_at": "2026-03-13T02:35:26.376Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "bulk_test_env",
+      "urls": [
+        {
+          "url": "https://bulk-test-environment.example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blte3eca71ae4290097",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:46.311Z",
+      "updated_at": "2026-03-13T02:34:46.311Z",
+      "ACL": [],
+      "_version": 1
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:50 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 10ms
+X-Request-ID: fffca5c8-1d13-4b07-bc5d-c3ba50b524f0
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment was not found. Please try again.",
+  "error_code": 248
+}
+
+ Test Context + + + + +
TestScenarioTest017_Should_Validate_Environment_Scope_Requirement
+
Passed1.42s
+
✅ Test008_Should_Query_Delivery_Tokens_With_Parameters
+

Assertions

+
+
IsTrue(CreateDeliveryTokenSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Response should contain token object)
+
+
Expected:
NotNull
+
Actual:
{
+  "name": "Test Delivery Token",
+  "description": "Integration test delivery token",
+  "scope": [
+    {
+      "environments": [
+        {
+          "name": "test_delivery_environment",
+          "urls": [
+            {
+              "url": "https://example.com",
+              "locale": "en-us"
+            }
+          ],
+          "app_user_object_uid": "system",
+          "uid": "bltf1a9311ed6120511",
+          "created_by": "blt1930fc55e5669df9",
+          "updated_by": "blt1930fc55e5669df9",
+          "created_at": "2026-03-13T02:35:26.376Z",
+          "updated_at": "2026-03-13T02:35:26.376Z",
+          "ACL": [],
+          "_version": 1,
+          "tags": []
+        }
+      ],
+      "module": "environment",
+      "acl": {
+        "read": true
+      },
+      "_metadata": {
+        "uid": "cs08089474dfa05c3e"
+      }
+    },
+    {
+      "module": "branch",
+      "acl": {
+        "read": true
+      },
+      "branches": [
+        "main"
+      ],
+      "_metadata": {
+        "uid": "cs76b92f5e6c72d580"
+      }
+    }
+  ],
+  "uid": "blt89a1f22bfe82eaf1",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:35:39.127Z",
+  "updated_at": "2026-03-13T02:35:39.127Z",
+  "token": "csb934f01591367a704605eeb2",
+  "type": "delivery"
+}
+
+
+
+
IsNotNull(Token should have UID)
+
+
Expected:
NotNull
+
Actual:
blt89a1f22bfe82eaf1
+
+
+
+
AreEqual(TokenName)
+
+
Expected:
Test Delivery Token
+
Actual:
Test Delivery Token
+
+
+
+
AreEqual(TokenDescription)
+
+
Expected:
Integration test delivery token
+
Actual:
Integration test delivery token
+
+
+
+
IsNotNull(Delivery token UID should not be null)
+
+
Expected:
NotNull
+
Actual:
blt89a1f22bfe82eaf1
+
+
+
+
IsTrue(QueryWithParamsSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Response should contain tokens array)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "name": "Test Delivery Token",
+    "description": "Integration test delivery token",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "cs08089474dfa05c3e"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "cs76b92f5e6c72d580"
+        }
+      }
+    ],
+    "uid": "blt89a1f22bfe82eaf1",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:39.127Z",
+    "updated_at": "2026-03-13T02:35:39.127Z",
+    "token": "csb934f01591367a704605eeb2",
+    "type": "delivery"
+  }
+]
+
+
+
+
IsTrue(RespectLimitParam)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 131
+Content-Type: application/json
+
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 131' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:38 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 25ms
+X-Request-ID: 5c6d2cdd-c45f-440c-90e4-a7b542d9b0e9
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 253
+Content-Type: application/json
+
Request Body
{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 253' \
+  -H 'Content-Type: application/json' \
+  -d '{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:39 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 46ms
+X-Request-ID: 8da5da24-0f79-4cd2-8d11-63092d1a0f30
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token created successfully.",
+  "token": {
+    "name": "Test Delivery Token",
+    "description": "Integration test delivery token",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "cs08089474dfa05c3e"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "cs76b92f5e6c72d580"
+        }
+      }
+    ],
+    "uid": "blt89a1f22bfe82eaf1",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:39.127Z",
+    "updated_at": "2026-03-13T02:35:39.127Z",
+    "token": "csb934f01591367a704605eeb2",
+    "type": "delivery"
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/stacks/delivery_tokens?limit=5&skip=0
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens?limit=5&skip=0' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:39 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 18ms
+X-Request-ID: 157f5ad2-0fd6-4e1f-9f38-002fff6e253e
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "tokens": [
+    {
+      "name": "Test Delivery Token",
+      "description": "Integration test delivery token",
+      "scope": [
+        {
+          "environments": [
+            {
+              "name": "test_delivery_environment",
+              "urls": [
+                {
+                  "url": "https://example.com",
+                  "locale": "en-us"
+                }
+              ],
+              "app_user_object_uid": "system",
+              "uid": "bltf1a9311ed6120511",
+              "created_by": "blt1930fc55e5669df9",
+              "updated_by": "blt1930fc55e5669df9",
+              "created_at": "2026-03-13T02:35:26.376Z",
+              "updated_at": "2026-03-13T02:35:26.376Z",
+              "ACL": [],
+              "_version": 1,
+              "tags": []
+            }
+          ],
+          "module": "environment",
+          "acl": {
+            "read": true
+          },
+          "_metadata": {
+            "uid": "cs08089474dfa05c3e"
+          }
+        },
+        {
+          "module": "branch",
+          "acl": {
+            "read": true
+          },
+          "branches": [
+            "main"
+          ],
+          "_metadata": {
+            "uid": "cs76b92f5e6c72d580"
+          }
+        }
+      ],
+      "uid": "blt89a1f22bfe82eaf1",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:39.127Z",
+      "updated_at": "2026-03-13T02:35:39.127Z",
+      "token": "csb934f01591367a704605eeb2",
+      "type": "delivery"
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blt89a1f22bfe82eaf1
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt89a1f22bfe82eaf1' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:39 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 55ms
+X-Request-ID: 3955fad0-c23e-4ee3-aa12-9e9b0aee3051
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token deleted successfully."
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:40 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 21ms
+X-Request-ID: 6f90b218-46c3-461d-9e98-251b06d11cce
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "environments": [
+    {
+      "name": "test_delivery_environment",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "bltf1a9311ed6120511",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:26.376Z",
+      "updated_at": "2026-03-13T02:35:26.376Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "bulk_test_env",
+      "urls": [
+        {
+          "url": "https://bulk-test-environment.example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blte3eca71ae4290097",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:46.311Z",
+      "updated_at": "2026-03-13T02:34:46.311Z",
+      "ACL": [],
+      "_version": 1
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:40 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 11ms
+X-Request-ID: e6fb8b01-c5f8-4eca-a230-f42eb5aee87a
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment was not found. Please try again.",
+  "error_code": 248
+}
+
+ Test Context + + + + + + + + + + + + + + + + +
TestScenarioTest008_Should_Query_Delivery_Tokens_With_Parameters
TestScenarioTest001_Should_Create_Delivery_Token
DeliveryTokenUidblt89a1f22bfe82eaf1
DeliveryTokenUidblt89a1f22bfe82eaf1
+
Passed1.80s
+
✅ Test019_Should_Delete_Delivery_Token
+

Assertions

+
+
IsTrue(CreateDeliveryTokenSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Response should contain token object)
+
+
Expected:
NotNull
+
Actual:
{
+  "name": "Test Delivery Token",
+  "description": "Integration test delivery token",
+  "scope": [
+    {
+      "environments": [
+        {
+          "name": "test_delivery_environment",
+          "urls": [
+            {
+              "url": "https://example.com",
+              "locale": "en-us"
+            }
+          ],
+          "app_user_object_uid": "system",
+          "uid": "bltf1a9311ed6120511",
+          "created_by": "blt1930fc55e5669df9",
+          "updated_by": "blt1930fc55e5669df9",
+          "created_at": "2026-03-13T02:35:26.376Z",
+          "updated_at": "2026-03-13T02:35:26.376Z",
+          "ACL": [],
+          "_version": 1,
+          "tags": []
+        }
+      ],
+      "module": "environment",
+      "acl": {
+        "read": true
+      },
+      "_metadata": {
+        "uid": "cs35dfc72957671ba6"
+      }
+    },
+    {
+      "module": "branch",
+      "acl": {
+        "read": true
+      },
+      "branches": [
+        "main"
+      ],
+      "_metadata": {
+        "uid": "cs1b237773ce75fcfb"
+      }
+    }
+  ],
+  "uid": "blt2382076685c16162",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:35:52.636Z",
+  "updated_at": "2026-03-13T02:35:52.636Z",
+  "token": "cseabe70e3b089247f8bfbab3b",
+  "type": "delivery"
+}
+
+
+
+
IsNotNull(Token should have UID)
+
+
Expected:
NotNull
+
Actual:
blt2382076685c16162
+
+
+
+
AreEqual(TokenName)
+
+
Expected:
Test Delivery Token
+
Actual:
Test Delivery Token
+
+
+
+
AreEqual(TokenDescription)
+
+
Expected:
Integration test delivery token
+
Actual:
Integration test delivery token
+
+
+
+
IsNotNull(Delivery token UID should not be null)
+
+
Expected:
NotNull
+
Actual:
blt2382076685c16162
+
+
+
+
IsNotNull(Should have a valid token UID to delete)
+
+
Expected:
NotNull
+
Actual:
blt2382076685c16162
+
+
+
+
IsTrue(DeleteSuccess)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 131
+Content-Type: application/json
+
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 131' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:52 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 25ms
+X-Request-ID: a6e7269e-5af0-404e-8941-f54427628601
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 253
+Content-Type: application/json
+
Request Body
{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 253' \
+  -H 'Content-Type: application/json' \
+  -d '{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:52 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 56ms
+X-Request-ID: 24644aa3-d306-4131-9f52-d3f180cb78bf
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token created successfully.",
+  "token": {
+    "name": "Test Delivery Token",
+    "description": "Integration test delivery token",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "cs35dfc72957671ba6"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "cs1b237773ce75fcfb"
+        }
+      }
+    ],
+    "uid": "blt2382076685c16162",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:52.636Z",
+    "updated_at": "2026-03-13T02:35:52.636Z",
+    "token": "cseabe70e3b089247f8bfbab3b",
+    "type": "delivery"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blt2382076685c16162
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt2382076685c16162' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:53 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 62ms
+X-Request-ID: b9d1b5b7-bec1-4019-8109-64ae58e02604
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token deleted successfully."
+}
+
+ +
GEThttps://api.contentstack.io/v3/stacks/delivery_tokens/blt2382076685c16162
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt2382076685c16162' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:53 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 16ms
+X-Request-ID: a81579f3-5392-4ac6-b3f0-5f4b667da02d
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Delivery Token Not Found.",
+  "error_code": 141,
+  "errors": {
+    "token": [
+      "is not valid."
+    ]
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:53 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 26ms
+X-Request-ID: d0b74669-111a-4e77-a46c-9e3848e81e86
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "environments": [
+    {
+      "name": "test_delivery_environment_2",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blt748d28fa29b47ac7",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:40.943Z",
+      "updated_at": "2026-03-13T02:35:40.943Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "test_delivery_environment",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "bltf1a9311ed6120511",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:26.376Z",
+      "updated_at": "2026-03-13T02:35:26.376Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "bulk_test_env",
+      "urls": [
+        {
+          "url": "https://bulk-test-environment.example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blte3eca71ae4290097",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:46.311Z",
+      "updated_at": "2026-03-13T02:34:46.311Z",
+      "ACL": [],
+      "_version": 1
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:54 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 10ms
+X-Request-ID: bf83ef48-2a83-41f2-af7d-ee6e09043e54
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment was not found. Please try again.",
+  "error_code": 248
+}
+
+ Test Context + + + + + + + + + + + + + + + + +
TestScenarioTest019_Should_Delete_Delivery_Token
TestScenarioTest001_Should_Create_Delivery_Token
DeliveryTokenUidblt2382076685c16162
TokenUidToDeleteblt2382076685c16162
+
Passed2.30s
+
✅ Test015_Should_Query_Delivery_Tokens_Async
+

Assertions

+
+
IsTrue(CreateDeliveryTokenSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Response should contain token object)
+
+
Expected:
NotNull
+
Actual:
{
+  "name": "Test Delivery Token",
+  "description": "Integration test delivery token",
+  "scope": [
+    {
+      "environments": [
+        {
+          "name": "test_delivery_environment",
+          "urls": [
+            {
+              "url": "https://example.com",
+              "locale": "en-us"
+            }
+          ],
+          "app_user_object_uid": "system",
+          "uid": "bltf1a9311ed6120511",
+          "created_by": "blt1930fc55e5669df9",
+          "updated_by": "blt1930fc55e5669df9",
+          "created_at": "2026-03-13T02:35:26.376Z",
+          "updated_at": "2026-03-13T02:35:26.376Z",
+          "ACL": [],
+          "_version": 1,
+          "tags": []
+        }
+      ],
+      "module": "environment",
+      "acl": {
+        "read": true
+      },
+      "_metadata": {
+        "uid": "cse0fcc92d818d62f3"
+      }
+    },
+    {
+      "module": "branch",
+      "acl": {
+        "read": true
+      },
+      "branches": [
+        "main"
+      ],
+      "_metadata": {
+        "uid": "cs48b83bae2a6622a4"
+      }
+    }
+  ],
+  "uid": "bltebd02315e4105bf3",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:35:46.308Z",
+  "updated_at": "2026-03-13T02:35:46.308Z",
+  "token": "cs0454deae3d8b26d3e8640385",
+  "type": "delivery"
+}
+
+
+
+
IsNotNull(Token should have UID)
+
+
Expected:
NotNull
+
Actual:
bltebd02315e4105bf3
+
+
+
+
AreEqual(TokenName)
+
+
Expected:
Test Delivery Token
+
Actual:
Test Delivery Token
+
+
+
+
AreEqual(TokenDescription)
+
+
Expected:
Integration test delivery token
+
Actual:
Integration test delivery token
+
+
+
+
IsNotNull(Delivery token UID should not be null)
+
+
Expected:
NotNull
+
Actual:
bltebd02315e4105bf3
+
+
+
+
IsTrue(AsyncQuerySuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Response should contain tokens array)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "name": "Test Delivery Token",
+    "description": "Integration test delivery token",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "cse0fcc92d818d62f3"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "cs48b83bae2a6622a4"
+        }
+      }
+    ],
+    "uid": "bltebd02315e4105bf3",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:46.308Z",
+    "updated_at": "2026-03-13T02:35:46.308Z",
+    "token": "cs0454deae3d8b26d3e8640385",
+    "type": "delivery"
+  }
+]
+
+
+
+
IsTrue(AsyncTokensCount)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsTrue(TestTokenFoundInAsyncQuery)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 131
+Content-Type: application/json
+
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 131' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:46 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 97
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 26ms
+X-Request-ID: 32ac04ed-8394-4ad4-aa5b-350ad3705b47
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 253
+Content-Type: application/json
+
Request Body
{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 253' \
+  -H 'Content-Type: application/json' \
+  -d '{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:46 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 56ms
+X-Request-ID: de7a29ad-479a-48fd-87db-6116aeceef64
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token created successfully.",
+  "token": {
+    "name": "Test Delivery Token",
+    "description": "Integration test delivery token",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "cse0fcc92d818d62f3"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "cs48b83bae2a6622a4"
+        }
+      }
+    ],
+    "uid": "bltebd02315e4105bf3",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:46.308Z",
+    "updated_at": "2026-03-13T02:35:46.308Z",
+    "token": "cs0454deae3d8b26d3e8640385",
+    "type": "delivery"
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/stacks/delivery_tokens
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:46 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 20ms
+X-Request-ID: 28f62389-04c8-49d4-bba6-4cdb1aa85721
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "tokens": [
+    {
+      "name": "Test Delivery Token",
+      "description": "Integration test delivery token",
+      "scope": [
+        {
+          "environments": [
+            {
+              "name": "test_delivery_environment",
+              "urls": [
+                {
+                  "url": "https://example.com",
+                  "locale": "en-us"
+                }
+              ],
+              "app_user_object_uid": "system",
+              "uid": "bltf1a9311ed6120511",
+              "created_by": "blt1930fc55e5669df9",
+              "updated_by": "blt1930fc55e5669df9",
+              "created_at": "2026-03-13T02:35:26.376Z",
+              "updated_at": "2026-03-13T02:35:26.376Z",
+              "ACL": [],
+              "_version": 1,
+              "tags": []
+            }
+          ],
+          "module": "environment",
+          "acl": {
+            "read": true
+          },
+          "_metadata": {
+            "uid": "cse0fcc92d818d62f3"
+          }
+        },
+        {
+          "module": "branch",
+          "acl": {
+            "read": true
+          },
+          "branches": [
+            "main"
+          ],
+          "_metadata": {
+            "uid": "cs48b83bae2a6622a4"
+          }
+        }
+      ],
+      "uid": "bltebd02315e4105bf3",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:46.308Z",
+      "updated_at": "2026-03-13T02:35:46.308Z",
+      "token": "cs0454deae3d8b26d3e8640385",
+      "type": "delivery"
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/bltebd02315e4105bf3
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens/bltebd02315e4105bf3' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:46 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 45ms
+X-Request-ID: 02fd3c87-de11-4151-944f-33a26b7d4408
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token deleted successfully."
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:47 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 23ms
+X-Request-ID: 88767a31-b383-4ad4-a3fc-5369c4084834
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "environments": [
+    {
+      "name": "test_delivery_environment_2",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blt748d28fa29b47ac7",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:40.943Z",
+      "updated_at": "2026-03-13T02:35:40.943Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "test_delivery_environment",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "bltf1a9311ed6120511",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:26.376Z",
+      "updated_at": "2026-03-13T02:35:26.376Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "bulk_test_env",
+      "urls": [
+        {
+          "url": "https://bulk-test-environment.example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blte3eca71ae4290097",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:46.311Z",
+      "updated_at": "2026-03-13T02:34:46.311Z",
+      "ACL": [],
+      "_version": 1
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:47 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 11ms
+X-Request-ID: e668f467-efc9-4db4-87af-fd8ce70ff5cb
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment was not found. Please try again.",
+  "error_code": 248
+}
+
+ Test Context + + + + + + + + + + + + + + + + +
TestScenarioTest015_Should_Query_Delivery_Tokens_Async
TestScenarioTest001_Should_Create_Delivery_Token
DeliveryTokenUidbltebd02315e4105bf3
DeliveryTokenUidbltebd02315e4105bf3
+
Passed1.84s
+
✅ Test003_Should_Fetch_Delivery_Token
+

Assertions

+
+
IsTrue(CreateDeliveryTokenSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Response should contain token object)
+
+
Expected:
NotNull
+
Actual:
{
+  "name": "Test Delivery Token",
+  "description": "Integration test delivery token",
+  "scope": [
+    {
+      "environments": [
+        {
+          "name": "test_delivery_environment",
+          "urls": [
+            {
+              "url": "https://example.com",
+              "locale": "en-us"
+            }
+          ],
+          "app_user_object_uid": "system",
+          "uid": "bltf1a9311ed6120511",
+          "created_by": "blt1930fc55e5669df9",
+          "updated_by": "blt1930fc55e5669df9",
+          "created_at": "2026-03-13T02:35:26.376Z",
+          "updated_at": "2026-03-13T02:35:26.376Z",
+          "ACL": [],
+          "_version": 1,
+          "tags": []
+        }
+      ],
+      "module": "environment",
+      "acl": {
+        "read": true
+      },
+      "_metadata": {
+        "uid": "csdafaa066900ee90b"
+      }
+    },
+    {
+      "module": "branch",
+      "acl": {
+        "read": true
+      },
+      "branches": [
+        "main"
+      ],
+      "_metadata": {
+        "uid": "cse1a489b6d0a0d8a7"
+      }
+    }
+  ],
+  "uid": "bltcb9787bc428f4918",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:35:30.003Z",
+  "updated_at": "2026-03-13T02:35:30.003Z",
+  "token": "cs827392740b1e29e6366013a5",
+  "type": "delivery"
+}
+
+
+
+
IsNotNull(Token should have UID)
+
+
Expected:
NotNull
+
Actual:
bltcb9787bc428f4918
+
+
+
+
AreEqual(TokenName)
+
+
Expected:
Test Delivery Token
+
Actual:
Test Delivery Token
+
+
+
+
AreEqual(TokenDescription)
+
+
Expected:
Integration test delivery token
+
Actual:
Integration test delivery token
+
+
+
+
IsNotNull(Delivery token UID should not be null)
+
+
Expected:
NotNull
+
Actual:
bltcb9787bc428f4918
+
+
+
+
IsTrue(FetchSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Response should contain token object)
+
+
Expected:
NotNull
+
Actual:
{
+  "name": "Test Delivery Token",
+  "description": "Integration test delivery token",
+  "scope": [
+    {
+      "environments": [
+        {
+          "name": "test_delivery_environment",
+          "urls": [
+            {
+              "url": "https://example.com",
+              "locale": "en-us"
+            }
+          ],
+          "app_user_object_uid": "system",
+          "uid": "bltf1a9311ed6120511",
+          "created_by": "blt1930fc55e5669df9",
+          "updated_by": "blt1930fc55e5669df9",
+          "created_at": "2026-03-13T02:35:26.376Z",
+          "updated_at": "2026-03-13T02:35:26.376Z",
+          "ACL": [],
+          "_version": 1,
+          "tags": []
+        }
+      ],
+      "module": "environment",
+      "acl": {
+        "read": true
+      },
+      "_metadata": {
+        "uid": "csdafaa066900ee90b"
+      }
+    },
+    {
+      "module": "branch",
+      "acl": {
+        "read": true
+      },
+      "branches": [
+        "main"
+      ],
+      "_metadata": {
+        "uid": "cse1a489b6d0a0d8a7"
+      }
+    }
+  ],
+  "uid": "bltcb9787bc428f4918",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:35:30.003Z",
+  "updated_at": "2026-03-13T02:35:30.003Z",
+  "token": "cs827392740b1e29e6366013a5",
+  "type": "delivery"
+}
+
+
+
+
AreEqual(TokenUid)
+
+
Expected:
bltcb9787bc428f4918
+
Actual:
bltcb9787bc428f4918
+
+
+
+
AreEqual(TokenName)
+
+
Expected:
Test Delivery Token
+
Actual:
Test Delivery Token
+
+
+
+
IsNotNull(Token should have access token)
+
+
Expected:
NotNull
+
Actual:
cs827392740b1e29e6366013a5
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 131
+Content-Type: application/json
+
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 131' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:29 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 35ms
+X-Request-ID: 9a057b80-1fdf-4982-ad92-b689f731484d
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 253
+Content-Type: application/json
+
Request Body
{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 253' \
+  -H 'Content-Type: application/json' \
+  -d '{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:30 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 97
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 63ms
+X-Request-ID: 6f86f1c3-3f25-4ea6-8c3a-bc1e355f3285
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token created successfully.",
+  "token": {
+    "name": "Test Delivery Token",
+    "description": "Integration test delivery token",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "csdafaa066900ee90b"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "cse1a489b6d0a0d8a7"
+        }
+      }
+    ],
+    "uid": "bltcb9787bc428f4918",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:30.003Z",
+    "updated_at": "2026-03-13T02:35:30.003Z",
+    "token": "cs827392740b1e29e6366013a5",
+    "type": "delivery"
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/stacks/delivery_tokens/bltcb9787bc428f4918
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens/bltcb9787bc428f4918' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:30 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 17ms
+X-Request-ID: 0e6555c4-8e73-4c6d-97d7-d326ee25bcc6
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "token": {
+    "name": "Test Delivery Token",
+    "description": "Integration test delivery token",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "csdafaa066900ee90b"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "cse1a489b6d0a0d8a7"
+        }
+      }
+    ],
+    "uid": "bltcb9787bc428f4918",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:30.003Z",
+    "updated_at": "2026-03-13T02:35:30.003Z",
+    "token": "cs827392740b1e29e6366013a5",
+    "type": "delivery"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/bltcb9787bc428f4918
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens/bltcb9787bc428f4918' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:30 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 69ms
+X-Request-ID: 47f39e27-f11e-4ca5-be83-166528f403aa
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token deleted successfully."
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:31 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 24ms
+X-Request-ID: 163be963-06c9-422e-9faa-e7b381e40eaa
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "environments": [
+    {
+      "name": "test_delivery_environment",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "bltf1a9311ed6120511",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:26.376Z",
+      "updated_at": "2026-03-13T02:35:26.376Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "bulk_test_env",
+      "urls": [
+        {
+          "url": "https://bulk-test-environment.example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blte3eca71ae4290097",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:46.311Z",
+      "updated_at": "2026-03-13T02:34:46.311Z",
+      "ACL": [],
+      "_version": 1
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:31 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 11ms
+X-Request-ID: 5a43e999-259d-4a26-902d-d88ac1ab756a
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment was not found. Please try again.",
+  "error_code": 248
+}
+
+ Test Context + + + + + + + + + + + + + + + + +
TestScenarioTest003_Should_Fetch_Delivery_Token
TestScenarioTest001_Should_Create_Delivery_Token
DeliveryTokenUidbltcb9787bc428f4918
DeliveryTokenUidbltcb9787bc428f4918
+
Passed1.98s
+
✅ Test011_Should_Create_Token_With_Complex_Scope
+

Assertions

+
+
IsTrue(ComplexScopeCreateSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Token should have UID)
+
+
Expected:
NotNull
+
Actual:
blt5d0cd1c2f796ed06
+
+
+
+
IsNotNull(Token should have scope)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "environments": [
+      {
+        "name": "test_delivery_environment",
+        "urls": [
+          {
+            "url": "https://example.com",
+            "locale": "en-us"
+          }
+        ],
+        "app_user_object_uid": "system",
+        "uid": "bltf1a9311ed6120511",
+        "created_by": "blt1930fc55e5669df9",
+        "updated_by": "blt1930fc55e5669df9",
+        "created_at": "2026-03-13T02:35:26.376Z",
+        "updated_at": "2026-03-13T02:35:26.376Z",
+        "ACL": [],
+        "_version": 1,
+        "tags": []
+      }
+    ],
+    "module": "environment",
+    "acl": {
+      "read": true
+    },
+    "_metadata": {
+      "uid": "cs66201d4f89cb3154"
+    }
+  },
+  {
+    "module": "branch",
+    "acl": {
+      "read": true
+    },
+    "branches": [
+      "main"
+    ],
+    "_metadata": {
+      "uid": "cse61617e7ebf711ba"
+    }
+  }
+]
+
+
+
+
IsTrue(ScopeCountMultiple)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 131
+Content-Type: application/json
+
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 131' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:43 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 97
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 26ms
+X-Request-ID: a3aaa34c-55c7-469c-a620-25dfaa8ca1c1
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 269
+Content-Type: application/json
+
Request Body
{"token": {"name":"Complex Scope Delivery Token","description":"Token with complex scope configuration","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 269' \
+  -H 'Content-Type: application/json' \
+  -d '{"token": {"name":"Complex Scope Delivery Token","description":"Token with complex scope configuration","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:43 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 49ms
+X-Request-ID: 75d8b196-3dd6-4947-a4b4-5b29338430da
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token created successfully.",
+  "token": {
+    "name": "Complex Scope Delivery Token",
+    "description": "Token with complex scope configuration",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "cs66201d4f89cb3154"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "cse61617e7ebf711ba"
+        }
+      }
+    ],
+    "uid": "blt5d0cd1c2f796ed06",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:43.289Z",
+    "updated_at": "2026-03-13T02:35:43.289Z",
+    "token": "csacce0fb0db8431b2fc8be334",
+    "type": "delivery"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blt5d0cd1c2f796ed06
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt5d0cd1c2f796ed06' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:43 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 43ms
+X-Request-ID: 41c96430-1b57-4b38-80f7-3414da658dfa
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token deleted successfully."
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:43 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 23ms
+X-Request-ID: 1b060e51-6b85-4ad4-81ea-af9b3cf7b570
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "environments": [
+    {
+      "name": "test_delivery_environment_2",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blt748d28fa29b47ac7",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:40.943Z",
+      "updated_at": "2026-03-13T02:35:40.943Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "test_delivery_environment",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "bltf1a9311ed6120511",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:26.376Z",
+      "updated_at": "2026-03-13T02:35:26.376Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "bulk_test_env",
+      "urls": [
+        {
+          "url": "https://bulk-test-environment.example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blte3eca71ae4290097",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:46.311Z",
+      "updated_at": "2026-03-13T02:34:46.311Z",
+      "ACL": [],
+      "_version": 1
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:44 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 11ms
+X-Request-ID: aaf0a84c-f11d-42af-ac05-2ff27ab8d498
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment was not found. Please try again.",
+  "error_code": 248
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest011_Should_Create_Token_With_Complex_Scope
ComplexScopeTokenUidblt5d0cd1c2f796ed06
+
Passed1.46s
+
✅ Test001_Should_Create_Delivery_Token
+

Assertions

+
+
IsTrue(CreateDeliveryTokenSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Response should contain token object)
+
+
Expected:
NotNull
+
Actual:
{
+  "name": "Test Delivery Token",
+  "description": "Integration test delivery token",
+  "scope": [
+    {
+      "environments": [
+        {
+          "name": "test_delivery_environment",
+          "urls": [
+            {
+              "url": "https://example.com",
+              "locale": "en-us"
+            }
+          ],
+          "app_user_object_uid": "system",
+          "uid": "bltf1a9311ed6120511",
+          "created_by": "blt1930fc55e5669df9",
+          "updated_by": "blt1930fc55e5669df9",
+          "created_at": "2026-03-13T02:35:26.376Z",
+          "updated_at": "2026-03-13T02:35:26.376Z",
+          "ACL": [],
+          "_version": 1,
+          "tags": []
+        }
+      ],
+      "module": "environment",
+      "acl": {
+        "read": true
+      },
+      "_metadata": {
+        "uid": "cs4e0103401d927f51"
+      }
+    },
+    {
+      "module": "branch",
+      "acl": {
+        "read": true
+      },
+      "branches": [
+        "main"
+      ],
+      "_metadata": {
+        "uid": "cscecd0c3829bcac64"
+      }
+    }
+  ],
+  "uid": "blta231e572183266da",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:35:26.679Z",
+  "updated_at": "2026-03-13T02:35:26.679Z",
+  "token": "cs090d8f77a3bfbc936e29401f",
+  "type": "delivery"
+}
+
+
+
+
IsNotNull(Token should have UID)
+
+
Expected:
NotNull
+
Actual:
blta231e572183266da
+
+
+
+
AreEqual(TokenName)
+
+
Expected:
Test Delivery Token
+
Actual:
Test Delivery Token
+
+
+
+
AreEqual(TokenDescription)
+
+
Expected:
Integration test delivery token
+
Actual:
Integration test delivery token
+
+
+
+
IsNotNull(Delivery token UID should not be null)
+
+
Expected:
NotNull
+
Actual:
blta231e572183266da
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 131
+Content-Type: application/json
+
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 131' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:26 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 34ms
+X-Request-ID: 553d611f-eec9-4e73-81d1-e55d5511cad8
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Environment created successfully.",
+  "environment": {
+    "name": "test_delivery_environment",
+    "urls": [
+      {
+        "url": "https://example.com",
+        "locale": "en-us"
+      }
+    ],
+    "uid": "bltf1a9311ed6120511",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:26.376Z",
+    "updated_at": "2026-03-13T02:35:26.376Z",
+    "ACL": {},
+    "_version": 1
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 253
+Content-Type: application/json
+
Request Body
{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 253' \
+  -H 'Content-Type: application/json' \
+  -d '{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:26 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 97
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 54ms
+X-Request-ID: 7bc73943-c695-4cc9-b15a-810fe105875c
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token created successfully.",
+  "token": {
+    "name": "Test Delivery Token",
+    "description": "Integration test delivery token",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "cs4e0103401d927f51"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "cscecd0c3829bcac64"
+        }
+      }
+    ],
+    "uid": "blta231e572183266da",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:26.679Z",
+    "updated_at": "2026-03-13T02:35:26.679Z",
+    "token": "cs090d8f77a3bfbc936e29401f",
+    "type": "delivery"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blta231e572183266da
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens/blta231e572183266da' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:27 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 96
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 84ms
+X-Request-ID: 6f4b8f90-4a22-455c-a6a9-9508f408842e
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token deleted successfully."
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:27 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 20ms
+X-Request-ID: 748c2f98-76a7-4d5c-9fc9-e8fd031ff745
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "environments": [
+    {
+      "name": "test_delivery_environment",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "bltf1a9311ed6120511",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:26.376Z",
+      "updated_at": "2026-03-13T02:35:26.376Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "bulk_test_env",
+      "urls": [
+        {
+          "url": "https://bulk-test-environment.example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blte3eca71ae4290097",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:46.311Z",
+      "updated_at": "2026-03-13T02:34:46.311Z",
+      "ACL": [],
+      "_version": 1
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:27 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 12ms
+X-Request-ID: f1d11886-1725-4947-ac21-e8137d393d83
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment was not found. Please try again.",
+  "error_code": 248
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest001_Should_Create_Delivery_Token
DeliveryTokenUidblta231e572183266da
+
Passed1.60s
+
✅ Test012_Should_Create_Token_With_UI_Structure
+

Assertions

+
+
IsTrue(UIStructureCreateSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Token should have UID)
+
+
Expected:
NotNull
+
Actual:
blte93370b67f508c83
+
+
+
+
AreEqual(UITokenName)
+
+
Expected:
UI Structure Test Token
+
Actual:
UI Structure Test Token
+
+
+
+
IsNotNull(Token should have scope)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "environments": [
+      {
+        "name": "test_delivery_environment",
+        "urls": [
+          {
+            "url": "https://example.com",
+            "locale": "en-us"
+          }
+        ],
+        "app_user_object_uid": "system",
+        "uid": "bltf1a9311ed6120511",
+        "created_by": "blt1930fc55e5669df9",
+        "updated_by": "blt1930fc55e5669df9",
+        "created_at": "2026-03-13T02:35:26.376Z",
+        "updated_at": "2026-03-13T02:35:26.376Z",
+        "ACL": [],
+        "_version": 1,
+        "tags": []
+      }
+    ],
+    "module": "environment",
+    "acl": {
+      "read": true
+    },
+    "_metadata": {
+      "uid": "cs5c2988f7704aafea"
+    }
+  },
+  {
+    "module": "branch",
+    "acl": {
+      "read": true
+    },
+    "branches": [
+      "main"
+    ],
+    "_metadata": {
+      "uid": "csf551ba751f7a2d7d"
+    }
+  }
+]
+
+
+
+
IsTrue(UIScopeCount)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 131
+Content-Type: application/json
+
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 131' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:44 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 24ms
+X-Request-ID: 2e1c4de7-7191-4f72-998d-8aad7ff11d0f
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 226
+Content-Type: application/json
+
Request Body
{"token": {"name":"UI Structure Test Token","description":"","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 226' \
+  -H 'Content-Type: application/json' \
+  -d '{"token": {"name":"UI Structure Test Token","description":"","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:44 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 97
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 57ms
+X-Request-ID: 97d7fa63-8f19-4cae-8a7a-0424e7859876
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token created successfully.",
+  "token": {
+    "name": "UI Structure Test Token",
+    "description": "",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "cs5c2988f7704aafea"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "csf551ba751f7a2d7d"
+        }
+      }
+    ],
+    "uid": "blte93370b67f508c83",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:44.749Z",
+    "updated_at": "2026-03-13T02:35:44.749Z",
+    "token": "csc6d85ff3e0be7bb5fc1c4ee9",
+    "type": "delivery"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blte93370b67f508c83
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens/blte93370b67f508c83' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:45 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 61ms
+X-Request-ID: 1cdaff16-fe5a-43d7-a9a6-276f1f794199
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token deleted successfully."
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:45 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 21ms
+X-Request-ID: 68e50d87-4d8c-4f9e-8d2d-e87eaebe32b9
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "environments": [
+    {
+      "name": "test_delivery_environment_2",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blt748d28fa29b47ac7",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:40.943Z",
+      "updated_at": "2026-03-13T02:35:40.943Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "test_delivery_environment",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "bltf1a9311ed6120511",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:26.376Z",
+      "updated_at": "2026-03-13T02:35:26.376Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "bulk_test_env",
+      "urls": [
+        {
+          "url": "https://bulk-test-environment.example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blte3eca71ae4290097",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:46.311Z",
+      "updated_at": "2026-03-13T02:34:46.311Z",
+      "ACL": [],
+      "_version": 1
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:45 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 9ms
+X-Request-ID: 60497a38-ce4d-41db-a39c-3158654c36a4
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment was not found. Please try again.",
+  "error_code": 248
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest012_Should_Create_Token_With_UI_Structure
UITokenUidblte93370b67f508c83
+
Passed1.56s
+
✅ Test018_Should_Validate_Branch_Scope_Requirement
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 131
+Content-Type: application/json
+
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 131' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:51 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 21ms
+X-Request-ID: 57aa5266-aed8-99d1-9c3d-23be256c6a8f
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 170
+Content-Type: application/json
+
Request Body
{"token": {"name":"Branch Only Token","description":"Token with only branch scope - should fail","scope":[{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 170' \
+  -H 'Content-Type: application/json' \
+  -d '{"token": {"name":"Branch Only Token","description":"Token with only branch scope - should fail","scope":[{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:51 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 25ms
+X-Request-ID: 80498dc6-1c17-4a52-83bd-b4c636f3bdf6
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Delivery Token creation failed. Please try again.",
+  "error_code": 141,
+  "errors": {
+    "scope.environment": [
+      "is a required field."
+    ]
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:51 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 21ms
+X-Request-ID: cc3da981-b924-46c6-91bb-052be0085034
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "environments": [
+    {
+      "name": "test_delivery_environment_2",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blt748d28fa29b47ac7",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:40.943Z",
+      "updated_at": "2026-03-13T02:35:40.943Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "test_delivery_environment",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "bltf1a9311ed6120511",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:26.376Z",
+      "updated_at": "2026-03-13T02:35:26.376Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "bulk_test_env",
+      "urls": [
+        {
+          "url": "https://bulk-test-environment.example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blte3eca71ae4290097",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:46.311Z",
+      "updated_at": "2026-03-13T02:34:46.311Z",
+      "ACL": [],
+      "_version": 1
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:51 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 97
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 10ms
+X-Request-ID: 02c29f68-b0f5-4fa6-84da-dd62d1830a57
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment was not found. Please try again.",
+  "error_code": 248
+}
+
+ Test Context + + + + +
TestScenarioTest018_Should_Validate_Branch_Scope_Requirement
+
Passed1.20s
+
✅ Test007_Should_Query_All_Delivery_Tokens
+

Assertions

+
+
IsTrue(CreateDeliveryTokenSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Response should contain token object)
+
+
Expected:
NotNull
+
Actual:
{
+  "name": "Test Delivery Token",
+  "description": "Integration test delivery token",
+  "scope": [
+    {
+      "environments": [
+        {
+          "name": "test_delivery_environment",
+          "urls": [
+            {
+              "url": "https://example.com",
+              "locale": "en-us"
+            }
+          ],
+          "app_user_object_uid": "system",
+          "uid": "bltf1a9311ed6120511",
+          "created_by": "blt1930fc55e5669df9",
+          "updated_by": "blt1930fc55e5669df9",
+          "created_at": "2026-03-13T02:35:26.376Z",
+          "updated_at": "2026-03-13T02:35:26.376Z",
+          "ACL": [],
+          "_version": 1,
+          "tags": []
+        }
+      ],
+      "module": "environment",
+      "acl": {
+        "read": true
+      },
+      "_metadata": {
+        "uid": "cs6ec41cf96cbabd57"
+      }
+    },
+    {
+      "module": "branch",
+      "acl": {
+        "read": true
+      },
+      "branches": [
+        "main"
+      ],
+      "_metadata": {
+        "uid": "cs16eb0004e573757f"
+      }
+    }
+  ],
+  "uid": "blt044a5f9a33f7138d",
+  "created_by": "blt1930fc55e5669df9",
+  "updated_by": "blt1930fc55e5669df9",
+  "created_at": "2026-03-13T02:35:37.406Z",
+  "updated_at": "2026-03-13T02:35:37.406Z",
+  "token": "cs1c5fb623aa62e59acc7f97d4",
+  "type": "delivery"
+}
+
+
+
+
IsNotNull(Token should have UID)
+
+
Expected:
NotNull
+
Actual:
blt044a5f9a33f7138d
+
+
+
+
AreEqual(TokenName)
+
+
Expected:
Test Delivery Token
+
Actual:
Test Delivery Token
+
+
+
+
AreEqual(TokenDescription)
+
+
Expected:
Integration test delivery token
+
Actual:
Integration test delivery token
+
+
+
+
IsNotNull(Delivery token UID should not be null)
+
+
Expected:
NotNull
+
Actual:
blt044a5f9a33f7138d
+
+
+
+
IsTrue(QuerySuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Response should contain tokens array)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "name": "Test Delivery Token",
+    "description": "Integration test delivery token",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "cs6ec41cf96cbabd57"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "cs16eb0004e573757f"
+        }
+      }
+    ],
+    "uid": "blt044a5f9a33f7138d",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:37.406Z",
+    "updated_at": "2026-03-13T02:35:37.406Z",
+    "token": "cs1c5fb623aa62e59acc7f97d4",
+    "type": "delivery"
+  }
+]
+
+
+
+
IsTrue(TokensCountGreaterThanZero)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsTrue(TestTokenFoundInQuery)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 131
+Content-Type: application/json
+
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 131' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:37 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 28ms
+X-Request-ID: 394cc920-296f-465a-a253-e445c086591f
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 253
+Content-Type: application/json
+
Request Body
{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 253' \
+  -H 'Content-Type: application/json' \
+  -d '{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:37 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 43ms
+X-Request-ID: 68cef8dd-206d-4b20-9740-99c08dfbc56e
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token created successfully.",
+  "token": {
+    "name": "Test Delivery Token",
+    "description": "Integration test delivery token",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "cs6ec41cf96cbabd57"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "cs16eb0004e573757f"
+        }
+      }
+    ],
+    "uid": "blt044a5f9a33f7138d",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:37.406Z",
+    "updated_at": "2026-03-13T02:35:37.406Z",
+    "token": "cs1c5fb623aa62e59acc7f97d4",
+    "type": "delivery"
+  }
+}
+
+ +
GEThttps://api.contentstack.io/v3/stacks/delivery_tokens
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:37 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 17ms
+X-Request-ID: ad68526f-b17d-464c-b78c-ea1c3db78cdd
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "tokens": [
+    {
+      "name": "Test Delivery Token",
+      "description": "Integration test delivery token",
+      "scope": [
+        {
+          "environments": [
+            {
+              "name": "test_delivery_environment",
+              "urls": [
+                {
+                  "url": "https://example.com",
+                  "locale": "en-us"
+                }
+              ],
+              "app_user_object_uid": "system",
+              "uid": "bltf1a9311ed6120511",
+              "created_by": "blt1930fc55e5669df9",
+              "updated_by": "blt1930fc55e5669df9",
+              "created_at": "2026-03-13T02:35:26.376Z",
+              "updated_at": "2026-03-13T02:35:26.376Z",
+              "ACL": [],
+              "_version": 1,
+              "tags": []
+            }
+          ],
+          "module": "environment",
+          "acl": {
+            "read": true
+          },
+          "_metadata": {
+            "uid": "cs6ec41cf96cbabd57"
+          }
+        },
+        {
+          "module": "branch",
+          "acl": {
+            "read": true
+          },
+          "branches": [
+            "main"
+          ],
+          "_metadata": {
+            "uid": "cs16eb0004e573757f"
+          }
+        }
+      ],
+      "uid": "blt044a5f9a33f7138d",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:37.406Z",
+      "updated_at": "2026-03-13T02:35:37.406Z",
+      "token": "cs1c5fb623aa62e59acc7f97d4",
+      "type": "delivery"
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blt044a5f9a33f7138d
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt044a5f9a33f7138d' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:38 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 97
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 51ms
+X-Request-ID: 4253e0ee-3944-4e8b-b439-6ae53ba7cb2a
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token deleted successfully."
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:38 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 25ms
+X-Request-ID: 363a8389-bf6e-4d53-b82f-276f6b70200d
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "environments": [
+    {
+      "name": "test_delivery_environment",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "bltf1a9311ed6120511",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:26.376Z",
+      "updated_at": "2026-03-13T02:35:26.376Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "bulk_test_env",
+      "urls": [
+        {
+          "url": "https://bulk-test-environment.example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blte3eca71ae4290097",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:46.311Z",
+      "updated_at": "2026-03-13T02:34:46.311Z",
+      "ACL": [],
+      "_version": 1
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:38 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 11ms
+X-Request-ID: ab5749d2-5ca1-49e2-89a9-2d8acf1490a9
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment was not found. Please try again.",
+  "error_code": 248
+}
+
+ Test Context + + + + + + + + + + + + + + + + +
TestScenarioTest007_Should_Query_All_Delivery_Tokens
TestScenarioTest001_Should_Create_Delivery_Token
DeliveryTokenUidblt044a5f9a33f7138d
DeliveryTokenUidblt044a5f9a33f7138d
+
Passed1.74s
+
✅ Test009_Should_Create_Token_With_Multiple_Environments
+

Assertions

+
+
IsTrue(MultiEnvCreateSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Token should have UID)
+
+
Expected:
NotNull
+
Actual:
blt3d3bd8ad86e88d41
+
+
+
+
IsNotNull(Token should have scope)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "environments": [
+      {
+        "name": "test_delivery_environment",
+        "urls": [
+          {
+            "url": "https://example.com",
+            "locale": "en-us"
+          }
+        ],
+        "app_user_object_uid": "system",
+        "uid": "bltf1a9311ed6120511",
+        "created_by": "blt1930fc55e5669df9",
+        "updated_by": "blt1930fc55e5669df9",
+        "created_at": "2026-03-13T02:35:26.376Z",
+        "updated_at": "2026-03-13T02:35:26.376Z",
+        "ACL": [],
+        "_version": 1,
+        "tags": []
+      },
+      {
+        "name": "test_delivery_environment_2",
+        "urls": [
+          {
+            "url": "https://example.com",
+            "locale": "en-us"
+          }
+        ],
+        "app_user_object_uid": "system",
+        "uid": "blt748d28fa29b47ac7",
+        "created_by": "blt1930fc55e5669df9",
+        "updated_by": "blt1930fc55e5669df9",
+        "created_at": "2026-03-13T02:35:40.943Z",
+        "updated_at": "2026-03-13T02:35:40.943Z",
+        "ACL": [],
+        "_version": 1,
+        "tags": []
+      }
+    ],
+    "module": "environment",
+    "acl": {
+      "read": true
+    },
+    "_metadata": {
+      "uid": "cs493e2f3f5d98776d"
+    }
+  },
+  {
+    "module": "branch",
+    "acl": {
+      "read": true
+    },
+    "branches": [
+      "main"
+    ],
+    "_metadata": {
+      "uid": "cs7a3e4c209189eb8b"
+    }
+  }
+]
+
+
+
+
IsTrue(ScopeCount)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 131
+Content-Type: application/json
+
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 131' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:40 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 20ms
+X-Request-ID: 28bef972-3ab9-4273-a89a-77b87e3b1f9a
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment creation failed. Please try again.",
+  "error_code": 247,
+  "errors": {
+    "name": [
+      "is not unique."
+    ]
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 133
+Content-Type: application/json
+
Request Body
{"environment": {"name":"test_delivery_environment_2","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 133' \
+  -H 'Content-Type: application/json' \
+  -d '{"environment": {"name":"test_delivery_environment_2","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:40 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 97
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 28ms
+X-Request-ID: 8d0b2fee-f533-4804-ae07-e7591e0aa7cf
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Environment created successfully.",
+  "environment": {
+    "name": "test_delivery_environment_2",
+    "urls": [
+      {
+        "url": "https://example.com",
+        "locale": "en-us"
+      }
+    ],
+    "uid": "blt748d28fa29b47ac7",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:40.943Z",
+    "updated_at": "2026-03-13T02:35:40.943Z",
+    "ACL": {},
+    "_version": 1
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 303
+Content-Type: application/json
+
Request Body
{"token": {"name":"Multi Environment Delivery Token","description":"Token with multiple environment access","scope":[{"environments":["test_delivery_environment","test_delivery_environment_2"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 303' \
+  -H 'Content-Type: application/json' \
+  -d '{"token": {"name":"Multi Environment Delivery Token","description":"Token with multiple environment access","scope":[{"environments":["test_delivery_environment","test_delivery_environment_2"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:41 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 63ms
+X-Request-ID: ddfbd95e-559e-4963-b64e-2819bfc732fe
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token created successfully.",
+  "token": {
+    "name": "Multi Environment Delivery Token",
+    "description": "Token with multiple environment access",
+    "scope": [
+      {
+        "environments": [
+          {
+            "name": "test_delivery_environment",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "bltf1a9311ed6120511",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:26.376Z",
+            "updated_at": "2026-03-13T02:35:26.376Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          },
+          {
+            "name": "test_delivery_environment_2",
+            "urls": [
+              {
+                "url": "https://example.com",
+                "locale": "en-us"
+              }
+            ],
+            "app_user_object_uid": "system",
+            "uid": "blt748d28fa29b47ac7",
+            "created_by": "blt1930fc55e5669df9",
+            "updated_by": "blt1930fc55e5669df9",
+            "created_at": "2026-03-13T02:35:40.943Z",
+            "updated_at": "2026-03-13T02:35:40.943Z",
+            "ACL": [],
+            "_version": 1,
+            "tags": []
+          }
+        ],
+        "module": "environment",
+        "acl": {
+          "read": true
+        },
+        "_metadata": {
+          "uid": "cs493e2f3f5d98776d"
+        }
+      },
+      {
+        "module": "branch",
+        "acl": {
+          "read": true
+        },
+        "branches": [
+          "main"
+        ],
+        "_metadata": {
+          "uid": "cs7a3e4c209189eb8b"
+        }
+      }
+    ],
+    "uid": "blt3d3bd8ad86e88d41",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:41.245Z",
+    "updated_at": "2026-03-13T02:35:41.245Z",
+    "token": "csfc4d3f02f742562fe0316d0f",
+    "type": "delivery"
+  }
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blt3d3bd8ad86e88d41
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt3d3bd8ad86e88d41' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:41 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 55ms
+X-Request-ID: caf0c245-6b64-4d35-be51-525f256fb7be
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Delivery Token deleted successfully."
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:41 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 20ms
+X-Request-ID: 321c3fe7-6ce1-4cb3-a92d-dd3c5ecd2823
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "environments": [
+    {
+      "name": "test_delivery_environment_2",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blt748d28fa29b47ac7",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:40.943Z",
+      "updated_at": "2026-03-13T02:35:40.943Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "test_delivery_environment",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "bltf1a9311ed6120511",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:26.376Z",
+      "updated_at": "2026-03-13T02:35:26.376Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "bulk_test_env",
+      "urls": [
+        {
+          "url": "https://bulk-test-environment.example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blte3eca71ae4290097",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:46.311Z",
+      "updated_at": "2026-03-13T02:34:46.311Z",
+      "ACL": [],
+      "_version": 1
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/environments/blt748d28fa29b47ac7
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/environments/blt748d28fa29b47ac7' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:42 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 11ms
+X-Request-ID: 489ae873-fdfb-453d-a8fd-9a0eb607bb5f
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment was not found. Please try again.",
+  "error_code": 248
+}
+
+ +
GEThttps://api.contentstack.io/v3/environments
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/environments' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:42 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 21ms
+X-Request-ID: 59fdd7ee-2ac0-4b37-adf6-dbdbf72cf237
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "environments": [
+    {
+      "name": "test_delivery_environment_2",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blt748d28fa29b47ac7",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:40.943Z",
+      "updated_at": "2026-03-13T02:35:40.943Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "test_delivery_environment",
+      "urls": [
+        {
+          "url": "https://example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "bltf1a9311ed6120511",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:35:26.376Z",
+      "updated_at": "2026-03-13T02:35:26.376Z",
+      "ACL": [],
+      "_version": 1
+    },
+    {
+      "name": "bulk_test_env",
+      "urls": [
+        {
+          "url": "https://bulk-test-environment.example.com",
+          "locale": "en-us"
+        }
+      ],
+      "uid": "blte3eca71ae4290097",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:34:46.311Z",
+      "updated_at": "2026-03-13T02:34:46.311Z",
+      "ACL": [],
+      "_version": 1
+    }
+  ]
+}
+
+ +
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
422 Unprocessable Entity
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:42 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 98
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 10ms
+X-Request-ID: f7b78b06-4ff4-4853-a639-fca215eb2fa7
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "error_message": "Environment was not found. Please try again.",
+  "error_code": 248
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioTest009_Should_Create_Token_With_Multiple_Environments
SecondEnvironmentUidtest_delivery_environment_2
MultiEnvTokenUidblt3d3bd8ad86e88d41
+
Passed2.34s
+
+
+ +
+
+
+ + Contentstack017_TaxonomyTest +
+
+ 39 passed · + 0 failed · + 1 skipped · + 40 total +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Test NameStatusDuration
+
✅ Test006_Should_Create_Taxonomy_Async
+

Assertions

+
+
IsTrue(CreateAsyncSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Wrapper taxonomy)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.TaxonomyModel
+
+
+
+
AreEqual(AsyncTaxonomyUid)
+
+
Expected:
taxonomy_async_d624e490
+
Actual:
taxonomy_async_d624e490
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/taxonomies
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 123
+Content-Type: application/json
+
Request Body
{"taxonomy": {"uid":"taxonomy_async_d624e490","name":"Taxonomy Async Create Test","description":"Created via CreateAsync"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/taxonomies' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 123' \
+  -H 'Content-Type: application/json' \
+  -d '{"taxonomy": {"uid":"taxonomy_async_d624e490","name":"Taxonomy Async Create Test","description":"Created via CreateAsync"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:56 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: c3fcf4e6-7d0d-43f2-be4f-9100326dc9a7
+x-response-time: 128
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 289
+
Response Body +
{
+  "taxonomy": {
+    "uid": "taxonomy_async_d624e490",
+    "name": "Taxonomy Async Create Test",
+    "description": "Created via CreateAsync",
+    "locale": "en-us",
+    "created_at": "2026-03-13T02:35:56.726Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:35:56.726Z",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest006_Should_Create_Taxonomy_Async
AsyncCreatedTaxonomyUidtaxonomy_async_d624e490
+
Passed0.40s
+
✅ Test035_Should_Search_Terms_Async
+

Assertions

+
+
IsTrue(SearchAsyncTermsSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Terms or items in search async response)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "uid": "term_root_4dd5037e",
+    "name": "Root Term Updated Async",
+    "locale": "en-us",
+    "parent_uid": null,
+    "depth": 1,
+    "created_at": "2026-03-13T02:36:00.465Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:36:02.824Z",
+    "updated_by": "blt1930fc55e5669df9",
+    "taxonomy_uid": "taxonomy_integration_test_70bf770f",
+    "ancestors": [
+      {
+        "uid": "taxonomy_integration_test_70bf770f",
+        "name": "Taxonomy Integration Test Updated Async",
+        "type": "TAXONOMY"
+      }
+    ]
+  }
+]
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/taxonomies/$all/terms?typeahead=Root
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/taxonomies/$all/terms?typeahead=Root' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:07 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: c4fe97f9-939c-4b27-b7a2-44150c7a4e13
+x-response-time: 57
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 446
+
Response Body +
{
+  "terms": [
+    {
+      "uid": "term_root_4dd5037e",
+      "name": "Root Term Updated Async",
+      "locale": "en-us",
+      "parent_uid": null,
+      "depth": 1,
+      "created_at": "2026-03-13T02:36:00.465Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:36:02.824Z",
+      "updated_by": "blt1930fc55e5669df9",
+      "taxonomy_uid": "taxonomy_integration_test_70bf770f",
+      "ancestors": [
+        {
+          "uid": "taxonomy_integration_test_70bf770f",
+          "name": "Taxonomy Integration Test Updated Async",
+          "type": "TAXONOMY"
+        }
+      ]
+    }
+  ]
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest035_Should_Search_Terms_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
+
Passed0.33s
+
✅ Test027_Should_Get_Term_Descendants_Async
+

Assertions

+
+
IsTrue(DescendantsAsyncSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Descendants async response)
+
+
Expected:
NotNull
+
Actual:
{
+  "terms": [
+    {
+      "uid": "term_child_96d81ca7",
+      "name": "Child Term",
+      "locale": "en-us",
+      "parent_uid": "term_root_4dd5037e",
+      "depth": 2,
+      "created_at": "2026-03-13T02:36:00.765Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:36:00.765Z",
+      "updated_by": "blt1930fc55e5669df9"
+    }
+  ]
+}
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e/descendants
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e/descendants' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:04 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 40499414-3952-4e7d-8dcf-9220fa006a9b
+x-response-time: 58
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 272
+
Response Body +
{
+  "terms": [
+    {
+      "uid": "term_child_96d81ca7",
+      "name": "Child Term",
+      "locale": "en-us",
+      "parent_uid": "term_root_4dd5037e",
+      "depth": 2,
+      "created_at": "2026-03-13T02:36:00.765Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:36:00.765Z",
+      "updated_by": "blt1930fc55e5669df9"
+    }
+  ]
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioTest027_Should_Get_Term_Descendants_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
+
Passed0.35s
+
✅ Test011_Should_Localize_Taxonomy
+

Assertions

+
+
IsTrue(QueryLocalesSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsTrue(LocalizeSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Wrapper taxonomy)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.TaxonomyModel
+
+
+
+
AreEqual(LocalizedLocale)
+
+
Expected:
hi-in
+
Actual:
hi-in
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/locales
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/locales' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:58 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 19ms
+X-Request-ID: 92c419c9-ea9e-4eaf-b42b-c74fa45c31e8
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "locales": [
+    {
+      "code": "en-us",
+      "fallback_locale": null,
+      "uid": "blt83281ebe3abf75dc",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_by": "blt1930fc55e5669df9",
+      "created_at": "2026-03-13T02:33:34.686Z",
+      "updated_at": "2026-03-13T02:33:34.686Z",
+      "name": "English - United States",
+      "ACL": [],
+      "_version": 1
+    }
+  ]
+}
+
+ +
POSThttps://api.contentstack.io/v3/locales
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 51
+Content-Type: application/json
+
Request Body
{"locale": {"name":"Hindi (India)","code":"hi-in"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/locales' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 51' \
+  -H 'Content-Type: application/json' \
+  -d '{"locale": {"name":"Hindi (India)","code":"hi-in"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:58 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+x-ratelimit-limit: 100
+x-ratelimit-remaining: 99
+x-contentstack-organization: blt8d282118e2094bb8
+x-runtime: 33ms
+X-Request-ID: 56dcd19b-3f0f-4f8b-b6d7-a155f383dfc5
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "Language added successfully.",
+  "locale": {
+    "name": "Hindi (India)",
+    "code": "hi-in",
+    "uid": "blt6ca4648e976eac30",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_by": "blt1930fc55e5669df9",
+    "created_at": "2026-03-13T02:35:58.889Z",
+    "updated_at": "2026-03-13T02:35:58.889Z",
+    "fallback_locale": "en-us",
+    "ACL": {},
+    "_version": 1
+  }
+}
+
+ +
POSThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f?locale=hi-in
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 124
+Content-Type: application/json
+
Request Body
{"taxonomy": {"uid":"taxonomy_integration_test_70bf770f","name":"Taxonomy Localized","description":"Localized description"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f?locale=hi-in' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 124' \
+  -H 'Content-Type: application/json' \
+  -d '{"taxonomy": {"uid":"taxonomy_integration_test_70bf770f","name":"Taxonomy Localized","description":"Localized description"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:59 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 12379c29-242c-4187-be9e-56e72dcca5c2
+x-response-time: 44
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 290
+
Response Body +
{
+  "taxonomy": {
+    "uid": "taxonomy_integration_test_70bf770f",
+    "name": "Taxonomy Localized",
+    "description": "Localized description",
+    "locale": "hi-in",
+    "created_at": "2026-03-13T02:35:59.227Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:35:59.227Z",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioTest011_Should_Localize_Taxonomy
TaxonomyUidtaxonomy_integration_test_70bf770f
TestLocaleCodehi-in
+
Passed0.91s
+
✅ Test002_Should_Fetch_Taxonomy
+

Assertions

+
+
IsTrue(FetchSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Wrapper taxonomy)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.TaxonomyModel
+
+
+
+
AreEqual(TaxonomyUid)
+
+
Expected:
taxonomy_integration_test_70bf770f
+
Actual:
taxonomy_integration_test_70bf770f
+
+
+
+
IsNotNull(Taxonomy name)
+
+
Expected:
NotNull
+
Actual:
Taxonomy Integration Test
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:55 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 2f0caaa8-0d35-4a8d-ab3f-8f250aeaf8df
+x-response-time: 52
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 317
+
Response Body +
{
+  "taxonomy": {
+    "uid": "taxonomy_integration_test_70bf770f",
+    "name": "Taxonomy Integration Test",
+    "description": "Description for taxonomy integration test",
+    "locale": "en-us",
+    "created_at": "2026-03-13T02:35:54.784Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:35:54.784Z",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest002_Should_Fetch_Taxonomy
TaxonomyUidtaxonomy_integration_test_70bf770f
+
Passed0.35s
+
✅ Test042_Should_Throw_When_Delete_NonExistent_Term
+

Assertions

+
+
ThrowsException<ContentstackErrorException>(DeleteNonExistentTerm)
+
+
Expected:
ContentstackErrorException
+
Actual:
ContentstackErrorException
+
+

HTTP Transactions

+
+ +
DELETEhttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/non_existent_term_uid_12345
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/non_existent_term_uid_12345' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
404 Not Found
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:10 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: aa1c69cd-5f40-486d-bb99-2880e7ac0c30
+x-response-time: 31
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 69
+
Response Body +
{
+  "errors": {
+    "term": [
+      "The term is either invalid or does not exist."
+    ]
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest042_Should_Throw_When_Delete_NonExistent_Term
TaxonomyUidtaxonomy_integration_test_70bf770f
+
Passed0.30s
+
✅ Test040_Should_Throw_When_Fetch_NonExistent_Term
+

Assertions

+
+
ThrowsException<ContentstackErrorException>(FetchNonExistentTerm)
+
+
Expected:
ContentstackErrorException
+
Actual:
ContentstackErrorException
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/non_existent_term_uid_12345
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/non_existent_term_uid_12345' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
404 Not Found
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:09 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: cd67e899-44f8-4a30-a85f-b9fe5b17406c
+x-response-time: 169
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 69
+
Response Body +
{
+  "errors": {
+    "term": [
+      "The term is either invalid or does not exist."
+    ]
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest040_Should_Throw_When_Fetch_NonExistent_Term
TaxonomyUidtaxonomy_integration_test_70bf770f
+
Passed0.44s
+
✅ Test021_Should_Query_Terms_Async
+

Assertions

+
+
IsTrue(QueryTermsAsyncSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Terms in response)
+
+
Expected:
NotNull
+
Actual:
System.Collections.Generic.List`1[Contentstack.Management.Core.Models.TermModel]
+
+
+
+
IsTrue(TermsCount)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:02 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: db46c678-761b-4e35-a30a-414e9331d6d2
+x-response-time: 39
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 432
+
Response Body +
{
+  "terms": [
+    {
+      "uid": "term_root_4dd5037e",
+      "name": "Root Term",
+      "locale": "en-us",
+      "parent_uid": null,
+      "depth": 1,
+      "created_at": "2026-03-13T02:36:00.465Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:36:00.465Z",
+      "updated_by": "blt1930fc55e5669df9",
+      "taxonomy_uid": "taxonomy_integration_test_70bf770f",
+      "ancestors": [
+        {
+          "uid": "taxonomy_integration_test_70bf770f",
+          "name": "Taxonomy Integration Test Updated Async",
+          "type": "TAXONOMY"
+        }
+      ]
+    }
+  ]
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest021_Should_Query_Terms_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
+
Passed0.36s
+
✅ Test029_Should_Get_Term_Locales_Async
+

Assertions

+
+
IsTrue(TermLocalesAsyncSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Terms in locales async response)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "uid": "term_root_4dd5037e",
+    "name": "Root Term Updated Async",
+    "locale": "en-us",
+    "parent_uid": null,
+    "depth": 1,
+    "created_at": "2026-03-13T02:36:00.465Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:36:02.824Z",
+    "updated_by": "blt1930fc55e5669df9",
+    "localized": true
+  },
+  {
+    "uid": "term_root_4dd5037e",
+    "name": "Root Term Updated Async",
+    "locale": "hi-in",
+    "parent_uid": null,
+    "depth": 1,
+    "created_at": "2026-03-13T02:36:00.465Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:36:02.824Z",
+    "updated_by": "blt1930fc55e5669df9",
+    "localized": false
+  }
+]
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e/locales
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e/locales' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:05 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 49e3f416-7737-4a3a-922e-04a6bb3fc948
+x-response-time: 115
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 560
+
Response Body +
{
+  "terms": [
+    {
+      "uid": "term_root_4dd5037e",
+      "name": "Root Term Updated Async",
+      "locale": "en-us",
+      "parent_uid": null,
+      "depth": 1,
+      "created_at": "2026-03-13T02:36:00.465Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:36:02.824Z",
+      "updated_by": "blt1930fc55e5669df9",
+      "localized": true
+    },
+    {
+      "uid": "term_root_4dd5037e",
+      "name": "Root Term Updated Async",
+      "locale": "hi-in",
+      "parent_uid": null,
+      "depth": 1,
+      "created_at": "2026-03-13T02:36:00.465Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:36:02.824Z",
+      "updated_by": "blt1930fc55e5669df9",
+      "localized": false
+    }
+  ]
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioTest029_Should_Get_Term_Locales_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
+
Passed0.38s
+
✅ Test019_Should_Fetch_Term_Async
+

Assertions

+
+
IsTrue(FetchAsyncTermSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Term in response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.TermModel
+
+
+
+
AreEqual(RootTermUid)
+
+
Expected:
term_root_4dd5037e
+
Actual:
term_root_4dd5037e
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:01 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 539c8355-54ab-4f36-bfc6-cf2a629e34ae
+x-response-time: 154
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 251
+
Response Body +
{
+  "term": {
+    "uid": "term_root_4dd5037e",
+    "name": "Root Term",
+    "locale": "en-us",
+    "parent_uid": null,
+    "depth": 1,
+    "created_at": "2026-03-13T02:36:00.465Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:36:00.465Z",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioTest019_Should_Fetch_Term_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
+
Passed0.42s
+
✅ Test037_Should_Throw_When_Update_NonExistent_Taxonomy
+

Assertions

+
+
ThrowsException<ContentstackErrorException>(UpdateNonExistentTaxonomy)
+
+
Expected:
ContentstackErrorException
+
Actual:
ContentstackErrorException
+
+

HTTP Transactions

+
+ +
PUThttps://api.contentstack.io/v3/taxonomies/non_existent_taxonomy_uid_12345
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 46
+Content-Type: application/json
+
Request Body
{"taxonomy": {"name":"No","description":"No"}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/taxonomies/non_existent_taxonomy_uid_12345' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 46' \
+  -H 'Content-Type: application/json' \
+  -d '{"taxonomy": {"name":"No","description":"No"}}'
+ +
+
+
404 Not Found
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:08 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 86676842-2b04-4f5d-a287-9adaa011213c
+x-response-time: 173
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 77
+
Response Body +
{
+  "errors": {
+    "taxonomy": [
+      "The taxonomy is either invalid or does not exist."
+    ]
+  }
+}
+
+ Test Context + + + + +
TestScenarioTest037_Should_Throw_When_Update_NonExistent_Taxonomy
+
Passed0.46s
+
✅ Test023_Should_Update_Term_Async
+

Assertions

+
+
IsTrue(UpdateAsyncTermSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Term in response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.TermModel
+
+
+
+
AreEqual(UpdatedAsyncTermName)
+
+
Expected:
Root Term Updated Async
+
Actual:
Root Term Updated Async
+
+

HTTP Transactions

+
+ +
PUThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 44
+Content-Type: application/json
+
Request Body
{"term": {"name":"Root Term Updated Async"}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 44' \
+  -H 'Content-Type: application/json' \
+  -d '{"term": {"name":"Root Term Updated Async"}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:02 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: ec7ddd3c-d2ea-4730-a53c-c89dec517a16
+x-response-time: 36
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 265
+
Response Body +
{
+  "term": {
+    "uid": "term_root_4dd5037e",
+    "name": "Root Term Updated Async",
+    "locale": "en-us",
+    "parent_uid": null,
+    "depth": 1,
+    "created_at": "2026-03-13T02:36:00.465Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:36:02.824Z",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioTest023_Should_Update_Term_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
+
Passed0.30s
+
✅ Test018_Should_Fetch_Term
+

Assertions

+
+
IsTrue(FetchTermSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Term in response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.TermModel
+
+
+
+
AreEqual(RootTermUid)
+
+
Expected:
term_root_4dd5037e
+
Actual:
term_root_4dd5037e
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:01 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 04c51f34-ac89-4657-85f5-5ac4de73e5b5
+x-response-time: 58
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 251
+
Response Body +
{
+  "term": {
+    "uid": "term_root_4dd5037e",
+    "name": "Root Term",
+    "locale": "en-us",
+    "parent_uid": null,
+    "depth": 1,
+    "created_at": "2026-03-13T02:36:00.465Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:36:00.465Z",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioTest018_Should_Fetch_Term
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
+
Passed0.34s
+
✅ Test014_Should_Import_Taxonomy
+

Assertions

+
+
IsTrue(ImportSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Imported taxonomy)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.TaxonomyModel
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/taxonomies/import
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Type: multipart/form-data; boundary="90b467ab-dc83-46c1-8cf5-4fa17aa11f52"
+
Request Body
--90b467ab-dc83-46c1-8cf5-4fa17aa11f52
+Content-Disposition: form-data; name=taxonomy; filename=taxonomy.json; filename*=utf-8''taxonomy.json
+
+{"taxonomy":{"uid":"taxonomy_import_bc16bf87","name":"Imported Taxonomy","description":"Imported"}}
+--90b467ab-dc83-46c1-8cf5-4fa17aa11f52--
+
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/taxonomies/import' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Type: multipart/form-data; boundary="90b467ab-dc83-46c1-8cf5-4fa17aa11f52"' \
+  -d '--90b467ab-dc83-46c1-8cf5-4fa17aa11f52
+Content-Disposition: form-data; name=taxonomy; filename=taxonomy.json; filename*=utf-8'\'''\''taxonomy.json
+
+{"taxonomy":{"uid":"taxonomy_import_bc16bf87","name":"Imported Taxonomy","description":"Imported"}}
+--90b467ab-dc83-46c1-8cf5-4fa17aa11f52--
+'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:59 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 9596e47d-3008-4f30-8819-ac3631b09747
+x-response-time: 29
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 282
+
Response Body +
{
+  "taxonomy": {
+    "uid": "taxonomy_import_bc16bf87",
+    "name": "Imported Taxonomy",
+    "description": "Imported",
+    "locale": "en-us",
+    "created_at": "2026-03-13T02:35:59.845Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:35:59.845Z",
+    "updated_by": "blt1930fc55e5669df9",
+    "terms_count": 0
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest014_Should_Import_Taxonomy
ImportUidtaxonomy_import_bc16bf87
+
Passed0.31s
+
✅ Test022_Should_Update_Term
+

Assertions

+
+
IsTrue(UpdateTermSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Term in response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.TermModel
+
+
+
+
AreEqual(UpdatedTermName)
+
+
Expected:
Root Term Updated
+
Actual:
Root Term Updated
+
+

HTTP Transactions

+
+ +
PUThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 38
+Content-Type: application/json
+
Request Body
{"term": {"name":"Root Term Updated"}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 38' \
+  -H 'Content-Type: application/json' \
+  -d '{"term": {"name":"Root Term Updated"}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:02 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: add995f9-a8b8-418e-b7fa-1ab1c0728334
+x-response-time: 34
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 259
+
Response Body +
{
+  "term": {
+    "uid": "term_root_4dd5037e",
+    "name": "Root Term Updated",
+    "locale": "en-us",
+    "parent_uid": null,
+    "depth": 1,
+    "created_at": "2026-03-13T02:36:00.465Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:36:02.509Z",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioTest022_Should_Update_Term
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
+
Passed0.30s
+
✅ Test008_Should_Query_Taxonomies_Async
+

Assertions

+
+
IsTrue(QueryFindAsyncSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Wrapper taxonomies)
+
+
Expected:
NotNull
+
Actual:
System.Collections.Generic.List`1[Contentstack.Management.Core.Models.TaxonomyModel]
+
+
+
+
IsTrue(TaxonomiesCount)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/taxonomies
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/taxonomies' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:57 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: caf1c6b0-a614-47c9-9d0d-bcf872d4ee8e
+x-response-time: 54
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 594
+
Response Body +
{
+  "taxonomies": [
+    {
+      "uid": "taxonomy_integration_test_70bf770f",
+      "name": "Taxonomy Integration Test Updated Async",
+      "description": "Updated via UpdateAsync",
+      "locale": "en-us",
+      "created_at": "2026-03-13T02:35:54.784Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:35:57.042Z",
+      "updated_by": "blt1930fc55e5669df9"
+    },
+    {
+      "uid": "taxonomy_async_d624e490",
+      "name": "Taxonomy Async Create Test",
+      "description": "Created via CreateAsync",
+      "locale": "en-us",
+      "created_at": "2026-03-13T02:35:56.726Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:35:56.726Z",
+      "updated_by": "blt1930fc55e5669df9"
+    }
+  ]
+}
+
+ Test Context + + + + +
TestScenarioTest008_Should_Query_Taxonomies_Async
+
Passed0.33s
+
✅ Test030_Should_Localize_Term
+

Assertions

+
+
IsTrue(TermLocalizeSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Term in response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.TermModel
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e?locale=hi-in
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 67
+Content-Type: application/json
+
Request Body
{"term": {"uid":"term_root_4dd5037e","name":"Root Term Localized"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e?locale=hi-in' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 67' \
+  -H 'Content-Type: application/json' \
+  -d '{"term": {"uid":"term_root_4dd5037e","name":"Root Term Localized"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:05 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: e3ef2528-2df7-48eb-bdd0-a8d17179810c
+x-response-time: 41
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 261
+
Response Body +
{
+  "term": {
+    "uid": "term_root_4dd5037e",
+    "name": "Root Term Localized",
+    "locale": "hi-in",
+    "parent_uid": null,
+    "depth": 1,
+    "created_at": "2026-03-13T02:36:05.447Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:36:05.447Z",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ Test Context + + + + + + + + + + + + + + + + +
TestScenarioTest030_Should_Localize_Term
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
TestLocaleCodehi-in
+
Passed0.33s
+
✅ Test024_Should_Get_Term_Ancestors
+

Assertions

+
+
IsTrue(AncestorsSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Ancestors response)
+
+
Expected:
NotNull
+
Actual:
{
+  "terms": [
+    {
+      "uid": "term_root_4dd5037e",
+      "name": "Root Term Updated Async",
+      "locale": "en-us",
+      "parent_uid": null,
+      "depth": 1,
+      "created_at": "2026-03-13T02:36:00.465Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:36:02.824Z",
+      "updated_by": "blt1930fc55e5669df9"
+    }
+  ]
+}
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/ancestors
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/ancestors' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:03 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 06218f50-c75d-4d7d-9fdd-94a2fb2d86bd
+x-response-time: 60
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 268
+
Response Body +
{
+  "terms": [
+    {
+      "uid": "term_root_4dd5037e",
+      "name": "Root Term Updated Async",
+      "locale": "en-us",
+      "parent_uid": null,
+      "depth": 1,
+      "created_at": "2026-03-13T02:36:00.465Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:36:02.824Z",
+      "updated_by": "blt1930fc55e5669df9"
+    }
+  ]
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioTest024_Should_Get_Term_Ancestors
TaxonomyUidtaxonomy_integration_test_70bf770f
ChildTermUidterm_child_96d81ca7
+
Passed0.41s
+
⏭ Test032_Should_Move_Term
+

Assertions

+
+
Inconclusive
+
+
Expected:
N/A
+
Actual:
Move term failed: 
+
+

HTTP Transactions

+
+ +
PUThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/move
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 55
+Content-Type: application/json
+
Request Body
{"term": {"parent_uid":"term_root_4dd5037e","order":0}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/move' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 55' \
+  -H 'Content-Type: application/json' \
+  -d '{"term": {"parent_uid":"term_root_4dd5037e","order":0}}'
+ +
+
+
400 Bad Request
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:05 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: d63c47b7-44a4-4f6e-bb2f-85df59a03104
+x-response-time: 21
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 71
+
Response Body +
{
+  "errors": {
+    "force": [
+      "The force parameter should be a boolean value."
+    ]
+  }
+}
+
+ +
PUThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/move?force=true
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 55
+Content-Type: application/json
+
Request Body
{"term": {"parent_uid":"term_root_4dd5037e","order":0}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/move?force=true' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 55' \
+  -H 'Content-Type: application/json' \
+  -d '{"term": {"parent_uid":"term_root_4dd5037e","order":0}}'
+ +
+
+
400 Bad Request
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:06 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: f125ddf5-8c4b-4eab-8978-0074d4254539
+x-response-time: 21
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 88
+
Response Body +
{
+  "errors": {
+    "order": [
+      "The order parameter should be a numerical value greater than 1."
+    ]
+  }
+}
+
+ Test Context + + + + + + + + + + + + + + + + +
TestScenarioTest032_Should_Move_Term
TaxonomyUidtaxonomy_integration_test_70bf770f
ChildTermUidterm_child_96d81ca7
RootTermUidterm_root_4dd5037e
+
NotExecuted0.72s
+
✅ Test041_Should_Throw_When_Update_NonExistent_Term
+

Assertions

+
+
ThrowsException<ContentstackErrorException>(UpdateNonExistentTerm)
+
+
Expected:
ContentstackErrorException
+
Actual:
ContentstackErrorException
+
+

HTTP Transactions

+
+ +
PUThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/non_existent_term_uid_12345
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 23
+Content-Type: application/json
+
Request Body
{"term": {"name":"No"}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/non_existent_term_uid_12345' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 23' \
+  -H 'Content-Type: application/json' \
+  -d '{"term": {"name":"No"}}'
+ +
+
+
404 Not Found
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:09 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 9c93e891-7878-4c4d-a69f-4701abce750c
+x-response-time: 22
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 69
+
Response Body +
{
+  "errors": {
+    "term": [
+      "The term is either invalid or does not exist."
+    ]
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest041_Should_Throw_When_Update_NonExistent_Term
TaxonomyUidtaxonomy_integration_test_70bf770f
+
Passed0.31s
+
✅ Test013_Should_Throw_When_Localize_With_Invalid_Locale
+

Assertions

+
+
ThrowsException<ContentstackErrorException>(LocalizeInvalidLocale)
+
+
Expected:
ContentstackErrorException
+
Actual:
ContentstackErrorException
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f?locale=invalid_locale_code_xyz
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 99
+Content-Type: application/json
+
Request Body
{"taxonomy": {"uid":"taxonomy_integration_test_70bf770f","name":"Invalid","description":"Invalid"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f?locale=invalid_locale_code_xyz' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 99' \
+  -H 'Content-Type: application/json' \
+  -d '{"taxonomy": {"uid":"taxonomy_integration_test_70bf770f","name":"Invalid","description":"Invalid"}}'
+ +
+
+
404 Not Found
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:59 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: c6a797db-3a31-40c7-b7ce-da52268ed427
+x-response-time: 36
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 75
+
Response Body +
{
+  "errors": {
+    "taxonomy": [
+      "The locale is either invalid or does not exist."
+    ]
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest013_Should_Throw_When_Localize_With_Invalid_Locale
TaxonomyUidtaxonomy_integration_test_70bf770f
+
Passed0.31s
+
✅ Test017_Should_Create_Child_Term
+

Assertions

+
+
IsTrue(CreateChildTermSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Term in response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.TermModel
+
+
+
+
AreEqual(ChildTermUid)
+
+
Expected:
term_child_96d81ca7
+
Actual:
term_child_96d81ca7
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 93
+Content-Type: application/json
+
Request Body
{"term": {"uid":"term_child_96d81ca7","name":"Child Term","parent_uid":"term_root_4dd5037e"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 93' \
+  -H 'Content-Type: application/json' \
+  -d '{"term": {"uid":"term_child_96d81ca7","name":"Child Term","parent_uid":"term_root_4dd5037e"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:00 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 8187dbdb-92e8-436e-b5ec-962a2bf4c9c1
+x-response-time: 37
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 269
+
Response Body +
{
+  "term": {
+    "uid": "term_child_96d81ca7",
+    "name": "Child Term",
+    "locale": "en-us",
+    "parent_uid": "term_root_4dd5037e",
+    "depth": 2,
+    "created_at": "2026-03-13T02:36:00.765Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:36:00.765Z",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ Test Context + + + + + + + + + + + + + + + + +
TestScenarioTest017_Should_Create_Child_Term
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
ChildTermUidterm_child_96d81ca7
+
Passed0.30s
+
✅ Test001_Should_Create_Taxonomy
+

Assertions

+
+
IsTrue(CreateSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Wrapper taxonomy)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.TaxonomyModel
+
+
+
+
AreEqual(TaxonomyUid)
+
+
Expected:
taxonomy_integration_test_70bf770f
+
Actual:
taxonomy_integration_test_70bf770f
+
+
+
+
AreEqual(TaxonomyName)
+
+
Expected:
Taxonomy Integration Test
+
Actual:
Taxonomy Integration Test
+
+
+
+
AreEqual(TaxonomyDescription)
+
+
Expected:
Description for taxonomy integration test
+
Actual:
Description for taxonomy integration test
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/taxonomies
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 151
+Content-Type: application/json
+
Request Body
{"taxonomy": {"uid":"taxonomy_integration_test_70bf770f","name":"Taxonomy Integration Test","description":"Description for taxonomy integration test"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/taxonomies' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 151' \
+  -H 'Content-Type: application/json' \
+  -d '{"taxonomy": {"uid":"taxonomy_integration_test_70bf770f","name":"Taxonomy Integration Test","description":"Description for taxonomy integration test"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:54 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: d100501b-995a-4bec-8e82-22bdb903f4f1
+x-response-time: 219
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 317
+
Response Body +
{
+  "taxonomy": {
+    "uid": "taxonomy_integration_test_70bf770f",
+    "name": "Taxonomy Integration Test",
+    "description": "Description for taxonomy integration test",
+    "locale": "en-us",
+    "created_at": "2026-03-13T02:35:54.784Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:35:54.784Z",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest001_Should_Create_Taxonomy
TaxonomyUidtaxonomy_integration_test_70bf770f
+
Passed0.53s
+
✅ Test039_Should_Throw_When_Delete_NonExistent_Taxonomy
+

Assertions

+
+
ThrowsException<ContentstackErrorException>(DeleteNonExistentTaxonomy)
+
+
Expected:
ContentstackErrorException
+
Actual:
ContentstackErrorException
+
+

HTTP Transactions

+
+ +
DELETEhttps://api.contentstack.io/v3/taxonomies/non_existent_taxonomy_uid_12345
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/taxonomies/non_existent_taxonomy_uid_12345' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
404 Not Found
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:09 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: dc35b1f8-8ec6-427f-8a86-4681e2945557
+x-response-time: 28
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 77
+
Response Body +
{
+  "errors": {
+    "taxonomy": [
+      "The taxonomy is either invalid or does not exist."
+    ]
+  }
+}
+
+ Test Context + + + + +
TestScenarioTest039_Should_Throw_When_Delete_NonExistent_Taxonomy
+
Passed0.32s
+
✅ Test033_Should_Move_Term_Async
+

Assertions

+
+
IsTrue(MoveAsyncTermSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Term in response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.TermModel
+
+

HTTP Transactions

+
+ +
PUThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/move
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 55
+Content-Type: application/json
+
Request Body
{"term": {"parent_uid":"term_root_4dd5037e","order":1}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/move' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 55' \
+  -H 'Content-Type: application/json' \
+  -d '{"term": {"parent_uid":"term_root_4dd5037e","order":1}}'
+ +
+
+
400 Bad Request
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:06 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 15865084-645e-41f1-a5c3-f53b7f32a647
+x-response-time: 23
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 71
+
Response Body +
{
+  "errors": {
+    "force": [
+      "The force parameter should be a boolean value."
+    ]
+  }
+}
+
+ +
PUThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/move?force=true
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 55
+Content-Type: application/json
+
Request Body
{"term": {"parent_uid":"term_root_4dd5037e","order":1}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/move?force=true' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 55' \
+  -H 'Content-Type: application/json' \
+  -d '{"term": {"parent_uid":"term_root_4dd5037e","order":1}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:06 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: b4e39b6b-490c-4516-b777-083b7323ae6d
+x-response-time: 36
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 279
+
Response Body +
{
+  "term": {
+    "uid": "term_child_96d81ca7",
+    "name": "Child Term",
+    "locale": "en-us",
+    "parent_uid": "term_root_4dd5037e",
+    "depth": 2,
+    "created_at": "2026-03-13T02:36:00.765Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:36:06.893Z",
+    "updated_by": "blt1930fc55e5669df9",
+    "order": 1
+  }
+}
+
+ Test Context + + + + + + + + + + + + + + + + +
TestScenarioTest033_Should_Move_Term_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
ChildTermUidterm_child_96d81ca7
RootTermUidterm_root_4dd5037e
+
Passed0.71s
+
✅ Test009_Should_Get_Taxonomy_Locales
+

Assertions

+
+
IsTrue(LocalesSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Taxonomies in locales response)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "uid": "taxonomy_integration_test_70bf770f",
+    "name": "Taxonomy Integration Test Updated Async",
+    "description": "Updated via UpdateAsync",
+    "locale": "en-us",
+    "created_at": "2026-03-13T02:35:54.784Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:35:57.042Z",
+    "updated_by": "blt1930fc55e5669df9",
+    "localized": true
+  }
+]
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/locales
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/locales' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:57 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 7e7a1d37-6abd-475e-9013-e08a9d4a9dd4
+x-response-time: 142
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 334
+
Response Body +
{
+  "taxonomies": [
+    {
+      "uid": "taxonomy_integration_test_70bf770f",
+      "name": "Taxonomy Integration Test Updated Async",
+      "description": "Updated via UpdateAsync",
+      "locale": "en-us",
+      "created_at": "2026-03-13T02:35:54.784Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:35:57.042Z",
+      "updated_by": "blt1930fc55e5669df9",
+      "localized": true
+    }
+  ]
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest009_Should_Get_Taxonomy_Locales
TaxonomyUidtaxonomy_integration_test_70bf770f
+
Passed0.55s
+
✅ Test038_Should_Throw_When_Fetch_NonExistent_Taxonomy
+

Assertions

+
+
ThrowsException<ContentstackErrorException>(FetchNonExistentTaxonomy)
+
+
Expected:
ContentstackErrorException
+
Actual:
ContentstackErrorException
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/taxonomies/non_existent_taxonomy_uid_12345
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/taxonomies/non_existent_taxonomy_uid_12345' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
404 Not Found
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:08 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: a147e29d-f510-4d4e-b187-1d0b94117450
+x-response-time: 240
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 77
+
Response Body +
{
+  "errors": {
+    "taxonomy": [
+      "The taxonomy is either invalid or does not exist."
+    ]
+  }
+}
+
+ Test Context + + + + +
TestScenarioTest038_Should_Throw_When_Fetch_NonExistent_Taxonomy
+
Passed0.53s
+
✅ Test025_Should_Get_Term_Ancestors_Async
+

Assertions

+
+
IsTrue(AncestorsAsyncSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Ancestors async response)
+
+
Expected:
NotNull
+
Actual:
{
+  "terms": [
+    {
+      "uid": "term_root_4dd5037e",
+      "name": "Root Term Updated Async",
+      "locale": "en-us",
+      "parent_uid": null,
+      "depth": 1,
+      "created_at": "2026-03-13T02:36:00.465Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:36:02.824Z",
+      "updated_by": "blt1930fc55e5669df9"
+    }
+  ]
+}
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/ancestors
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/ancestors' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:03 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: c9b0c7e5-f2f8-41cd-8c92-6225c97043cf
+x-response-time: 38
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 268
+
Response Body +
{
+  "terms": [
+    {
+      "uid": "term_root_4dd5037e",
+      "name": "Root Term Updated Async",
+      "locale": "en-us",
+      "parent_uid": null,
+      "depth": 1,
+      "created_at": "2026-03-13T02:36:00.465Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:36:02.824Z",
+      "updated_by": "blt1930fc55e5669df9"
+    }
+  ]
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioTest025_Should_Get_Term_Ancestors_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
ChildTermUidterm_child_96d81ca7
+
Passed0.41s
+
✅ Test005_Should_Fetch_Taxonomy_Async
+

Assertions

+
+
IsTrue(FetchAsyncSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Wrapper taxonomy)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.TaxonomyModel
+
+
+
+
AreEqual(TaxonomyUid)
+
+
Expected:
taxonomy_integration_test_70bf770f
+
Actual:
taxonomy_integration_test_70bf770f
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:56 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 37bf3e4d-ce0d-4952-993e-762b5f5ede5a
+x-response-time: 246
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 303
+
Response Body +
{
+  "taxonomy": {
+    "uid": "taxonomy_integration_test_70bf770f",
+    "name": "Taxonomy Integration Test Updated",
+    "description": "Updated description",
+    "locale": "en-us",
+    "created_at": "2026-03-13T02:35:54.784Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:35:55.810Z",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest005_Should_Fetch_Taxonomy_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
+
Passed0.52s
+
✅ Test003_Should_Query_Taxonomies
+

Assertions

+
+
IsTrue(QuerySuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Wrapper taxonomies)
+
+
Expected:
NotNull
+
Actual:
System.Collections.Generic.List`1[Contentstack.Management.Core.Models.TaxonomyModel]
+
+
+
+
IsTrue(TaxonomiesCount)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/taxonomies
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/taxonomies' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:55 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: acb2ca4a-1def-482e-a92d-553018d32dbf
+x-response-time: 48
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 321
+
Response Body +
{
+  "taxonomies": [
+    {
+      "uid": "taxonomy_integration_test_70bf770f",
+      "name": "Taxonomy Integration Test",
+      "description": "Description for taxonomy integration test",
+      "locale": "en-us",
+      "created_at": "2026-03-13T02:35:54.784Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:35:54.784Z",
+      "updated_by": "blt1930fc55e5669df9"
+    }
+  ]
+}
+
+ Test Context + + + + +
TestScenarioTest003_Should_Query_Taxonomies
+
Passed0.33s
+
✅ Test015_Should_Import_Taxonomy_Async
+

Assertions

+
+
IsTrue(ImportAsyncSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Imported taxonomy)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.TaxonomyModel
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/taxonomies/import
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Type: multipart/form-data; boundary="e0712e99-f928-4855-95cd-e403444624c7"
+
Request Body
--e0712e99-f928-4855-95cd-e403444624c7
+Content-Disposition: form-data; name=taxonomy; filename=taxonomy.json; filename*=utf-8''taxonomy.json
+
+{"taxonomy":{"uid":"taxonomy_import_async_ef5ae61d","name":"Imported Async","description":"Imported via Async"}}
+--e0712e99-f928-4855-95cd-e403444624c7--
+
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/taxonomies/import' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Type: multipart/form-data; boundary="e0712e99-f928-4855-95cd-e403444624c7"' \
+  -d '--e0712e99-f928-4855-95cd-e403444624c7
+Content-Disposition: form-data; name=taxonomy; filename=taxonomy.json; filename*=utf-8'\'''\''taxonomy.json
+
+{"taxonomy":{"uid":"taxonomy_import_async_ef5ae61d","name":"Imported Async","description":"Imported via Async"}}
+--e0712e99-f928-4855-95cd-e403444624c7--
+'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:00 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 1f17fc13-5a84-4000-9c74-589325767c74
+x-response-time: 28
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 295
+
Response Body +
{
+  "taxonomy": {
+    "uid": "taxonomy_import_async_ef5ae61d",
+    "name": "Imported Async",
+    "description": "Imported via Async",
+    "locale": "en-us",
+    "created_at": "2026-03-13T02:36:00.161Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:36:00.161Z",
+    "updated_by": "blt1930fc55e5669df9",
+    "terms_count": 0
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest015_Should_Import_Taxonomy_Async
ImportUidtaxonomy_import_async_ef5ae61d
+
Passed0.31s
+
✅ Test007_Should_Update_Taxonomy_Async
+

Assertions

+
+
IsTrue(UpdateAsyncSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Wrapper taxonomy)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.TaxonomyModel
+
+
+
+
AreEqual(UpdatedAsyncName)
+
+
Expected:
Taxonomy Integration Test Updated Async
+
Actual:
Taxonomy Integration Test Updated Async
+
+

HTTP Transactions

+
+ +
PUThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 104
+Content-Type: application/json
+
Request Body
{"taxonomy": {"name":"Taxonomy Integration Test Updated Async","description":"Updated via UpdateAsync"}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 104' \
+  -H 'Content-Type: application/json' \
+  -d '{"taxonomy": {"name":"Taxonomy Integration Test Updated Async","description":"Updated via UpdateAsync"}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:57 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: a8cb585f-f709-4ac9-87d0-e3d8c635aa7f
+x-response-time: 33
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 313
+
Response Body +
{
+  "taxonomy": {
+    "uid": "taxonomy_integration_test_70bf770f",
+    "name": "Taxonomy Integration Test Updated Async",
+    "description": "Updated via UpdateAsync",
+    "locale": "en-us",
+    "created_at": "2026-03-13T02:35:54.784Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:35:57.042Z",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest007_Should_Update_Taxonomy_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
+
Passed0.35s
+
✅ Test016_Should_Create_Root_Term
+

Assertions

+
+
IsTrue(CreateTermSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Term in response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.TermModel
+
+
+
+
AreEqual(RootTermUid)
+
+
Expected:
term_root_4dd5037e
+
Actual:
term_root_4dd5037e
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 57
+Content-Type: application/json
+
Request Body
{"term": {"uid":"term_root_4dd5037e","name":"Root Term"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 57' \
+  -H 'Content-Type: application/json' \
+  -d '{"term": {"uid":"term_root_4dd5037e","name":"Root Term"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:00 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 8435a380-ece8-45cc-9bed-6dc2b868e671
+x-response-time: 40
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 196
+Content-Type: application/json; charset=utf-8
+Content-Length: 251
+
Response Body +
{
+  "term": {
+    "uid": "term_root_4dd5037e",
+    "name": "Root Term",
+    "locale": "en-us",
+    "parent_uid": null,
+    "depth": 1,
+    "created_at": "2026-03-13T02:36:00.465Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:36:00.465Z",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioTest016_Should_Create_Root_Term
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
+
Passed0.31s
+
✅ Test036_Should_Create_Term_Async
+

Assertions

+
+
IsTrue(CreateAsyncTermSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Term in response)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.TermModel
+
+

HTTP Transactions

+
+ +
POSThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 93
+Content-Type: application/json
+
Request Body
{"term": {"uid":"term_async_15ce1b96","name":"Async Term","parent_uid":"term_root_4dd5037e"}}
+
cURL Command +
curl -X POST \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 93' \
+  -H 'Content-Type: application/json' \
+  -d '{"term": {"uid":"term_async_15ce1b96","name":"Async Term","parent_uid":"term_root_4dd5037e"}}'
+ +
+
+
201 Created
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:07 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 28cac35e-bdce-41a5-84b2-affeb099c3e3
+x-response-time: 36
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 269
+
Response Body +
{
+  "term": {
+    "uid": "term_async_15ce1b96",
+    "name": "Async Term",
+    "locale": "en-us",
+    "parent_uid": "term_root_4dd5037e",
+    "depth": 2,
+    "created_at": "2026-03-13T02:36:07.868Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:36:07.868Z",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ Test Context + + + + + + + + + + + + + + + + +
TestScenarioTest036_Should_Create_Term_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
AsyncTermUidterm_async_15ce1b96
+
Passed0.31s
+
✅ Test034_Should_Search_Terms
+

Assertions

+
+
IsTrue(SearchTermsSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Terms or items in search response)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "uid": "term_root_4dd5037e",
+    "name": "Root Term Updated Async",
+    "locale": "en-us",
+    "parent_uid": null,
+    "depth": 1,
+    "created_at": "2026-03-13T02:36:00.465Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:36:02.824Z",
+    "updated_by": "blt1930fc55e5669df9",
+    "taxonomy_uid": "taxonomy_integration_test_70bf770f",
+    "ancestors": [
+      {
+        "uid": "taxonomy_integration_test_70bf770f",
+        "name": "Taxonomy Integration Test Updated Async",
+        "type": "TAXONOMY"
+      }
+    ]
+  }
+]
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/taxonomies/$all/terms?typeahead=Root
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/taxonomies/$all/terms?typeahead=Root' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:07 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 0d701902-e3c2-49ca-b8e3-537f0e9cce20
+x-response-time: 58
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 446
+
Response Body +
{
+  "terms": [
+    {
+      "uid": "term_root_4dd5037e",
+      "name": "Root Term Updated Async",
+      "locale": "en-us",
+      "parent_uid": null,
+      "depth": 1,
+      "created_at": "2026-03-13T02:36:00.465Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:36:02.824Z",
+      "updated_by": "blt1930fc55e5669df9",
+      "taxonomy_uid": "taxonomy_integration_test_70bf770f",
+      "ancestors": [
+        {
+          "uid": "taxonomy_integration_test_70bf770f",
+          "name": "Taxonomy Integration Test Updated Async",
+          "type": "TAXONOMY"
+        }
+      ]
+    }
+  ]
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest034_Should_Search_Terms
TaxonomyUidtaxonomy_integration_test_70bf770f
+
Passed0.34s
+
✅ Test010_Should_Get_Taxonomy_Locales_Async
+

Assertions

+
+
IsTrue(LocalesAsyncSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Taxonomies in locales response)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "uid": "taxonomy_integration_test_70bf770f",
+    "name": "Taxonomy Integration Test Updated Async",
+    "description": "Updated via UpdateAsync",
+    "locale": "en-us",
+    "created_at": "2026-03-13T02:35:54.784Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:35:57.042Z",
+    "updated_by": "blt1930fc55e5669df9",
+    "localized": true
+  }
+]
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/locales
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/locales' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:58 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 04f5093a-bf98-4b8f-825c-3af682cf17d2
+x-response-time: 77
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 334
+
Response Body +
{
+  "taxonomies": [
+    {
+      "uid": "taxonomy_integration_test_70bf770f",
+      "name": "Taxonomy Integration Test Updated Async",
+      "description": "Updated via UpdateAsync",
+      "locale": "en-us",
+      "created_at": "2026-03-13T02:35:54.784Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:35:57.042Z",
+      "updated_by": "blt1930fc55e5669df9",
+      "localized": true
+    }
+  ]
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest010_Should_Get_Taxonomy_Locales_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
+
Passed0.35s
+
✅ Test004_Should_Update_Taxonomy
+

Assertions

+
+
IsTrue(UpdateSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Wrapper taxonomy)
+
+
Expected:
NotNull
+
Actual:
Contentstack.Management.Core.Models.TaxonomyModel
+
+
+
+
AreEqual(UpdatedName)
+
+
Expected:
Taxonomy Integration Test Updated
+
Actual:
Taxonomy Integration Test Updated
+
+
+
+
AreEqual(UpdatedDescription)
+
+
Expected:
Updated description
+
Actual:
Updated description
+
+

HTTP Transactions

+
+ +
PUThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+Content-Length: 94
+Content-Type: application/json
+
Request Body
{"taxonomy": {"name":"Taxonomy Integration Test Updated","description":"Updated description"}}
+
cURL Command +
curl -X PUT \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
+  -H 'Content-Length: 94' \
+  -H 'Content-Type: application/json' \
+  -d '{"taxonomy": {"name":"Taxonomy Integration Test Updated","description":"Updated description"}}'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:35:55 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: c248e578-125f-4fb9-9b88-2836d488d4a6
+x-response-time: 28
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 303
+
Response Body +
{
+  "taxonomy": {
+    "uid": "taxonomy_integration_test_70bf770f",
+    "name": "Taxonomy Integration Test Updated",
+    "description": "Updated description",
+    "locale": "en-us",
+    "created_at": "2026-03-13T02:35:54.784Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:35:55.810Z",
+    "updated_by": "blt1930fc55e5669df9"
+  }
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest004_Should_Update_Taxonomy
TaxonomyUidtaxonomy_integration_test_70bf770f
+
Passed0.29s
+
✅ Test020_Should_Query_Terms
+

Assertions

+
+
IsTrue(QueryTermsSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Terms in response)
+
+
Expected:
NotNull
+
Actual:
System.Collections.Generic.List`1[Contentstack.Management.Core.Models.TermModel]
+
+
+
+
IsTrue(TermsCount)
+
+
Expected:
True
+
Actual:
True
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:01 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 860647eb-35af-4da6-911e-304cb2deae19
+x-response-time: 38
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 199
+Content-Type: application/json; charset=utf-8
+Content-Length: 432
+
Response Body +
{
+  "terms": [
+    {
+      "uid": "term_root_4dd5037e",
+      "name": "Root Term",
+      "locale": "en-us",
+      "parent_uid": null,
+      "depth": 1,
+      "created_at": "2026-03-13T02:36:00.465Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:36:00.465Z",
+      "updated_by": "blt1930fc55e5669df9",
+      "taxonomy_uid": "taxonomy_integration_test_70bf770f",
+      "ancestors": [
+        {
+          "uid": "taxonomy_integration_test_70bf770f",
+          "name": "Taxonomy Integration Test Updated Async",
+          "type": "TAXONOMY"
+        }
+      ]
+    }
+  ]
+}
+
+ Test Context + + + + + + + + +
TestScenarioTest020_Should_Query_Terms
TaxonomyUidtaxonomy_integration_test_70bf770f
+
Passed0.31s
+
✅ Test028_Should_Get_Term_Locales
+

Assertions

+
+
IsTrue(TermLocalesSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Terms in locales response)
+
+
Expected:
NotNull
+
Actual:
[
+  {
+    "uid": "term_root_4dd5037e",
+    "name": "Root Term Updated Async",
+    "locale": "en-us",
+    "parent_uid": null,
+    "depth": 1,
+    "created_at": "2026-03-13T02:36:00.465Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:36:02.824Z",
+    "updated_by": "blt1930fc55e5669df9",
+    "localized": true
+  },
+  {
+    "uid": "term_root_4dd5037e",
+    "name": "Root Term Updated Async",
+    "locale": "hi-in",
+    "parent_uid": null,
+    "depth": 1,
+    "created_at": "2026-03-13T02:36:00.465Z",
+    "created_by": "blt1930fc55e5669df9",
+    "updated_at": "2026-03-13T02:36:02.824Z",
+    "updated_by": "blt1930fc55e5669df9",
+    "localized": false
+  }
+]
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e/locales
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e/locales' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:04 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 9f865389-a9f4-4aa5-8097-9333dd9e56e0
+x-response-time: 62
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 198
+Content-Type: application/json; charset=utf-8
+Content-Length: 560
+
Response Body +
{
+  "terms": [
+    {
+      "uid": "term_root_4dd5037e",
+      "name": "Root Term Updated Async",
+      "locale": "en-us",
+      "parent_uid": null,
+      "depth": 1,
+      "created_at": "2026-03-13T02:36:00.465Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:36:02.824Z",
+      "updated_by": "blt1930fc55e5669df9",
+      "localized": true
+    },
+    {
+      "uid": "term_root_4dd5037e",
+      "name": "Root Term Updated Async",
+      "locale": "hi-in",
+      "parent_uid": null,
+      "depth": 1,
+      "created_at": "2026-03-13T02:36:00.465Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:36:02.824Z",
+      "updated_by": "blt1930fc55e5669df9",
+      "localized": false
+    }
+  ]
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioTest028_Should_Get_Term_Locales
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
+
Passed0.45s
+
✅ Test026_Should_Get_Term_Descendants
+

Assertions

+
+
IsTrue(DescendantsSuccess)
+
+
Expected:
True
+
Actual:
True
+
+
+
+
IsNotNull(Descendants response)
+
+
Expected:
NotNull
+
Actual:
{
+  "terms": [
+    {
+      "uid": "term_child_96d81ca7",
+      "name": "Child Term",
+      "locale": "en-us",
+      "parent_uid": "term_root_4dd5037e",
+      "depth": 2,
+      "created_at": "2026-03-13T02:36:00.765Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:36:00.765Z",
+      "updated_by": "blt1930fc55e5669df9"
+    }
+  ]
+}
+
+

HTTP Transactions

+
+ +
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e/descendants
+
Request Headers
api_key: blt1bca31da998b57a9
+authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X GET \
+  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e/descendants' \
+  -H 'api_key: blt1bca31da998b57a9' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:03 GMT
+Connection: keep-alive
+Access-Control-Allow-Origin: *
+X-Request-ID: 72b8149c-71a8-4465-8392-ff6bd7cf6992
+x-response-time: 47
+Server: contentstack
+x-organization-name: SDK org
+x-organization-uid: blt8d282118e2094bb8
+x-ratelimit-limit: 200
+x-ratelimit-remaining: 197
+Content-Type: application/json; charset=utf-8
+Content-Length: 272
+
Response Body +
{
+  "terms": [
+    {
+      "uid": "term_child_96d81ca7",
+      "name": "Child Term",
+      "locale": "en-us",
+      "parent_uid": "term_root_4dd5037e",
+      "depth": 2,
+      "created_at": "2026-03-13T02:36:00.765Z",
+      "created_by": "blt1930fc55e5669df9",
+      "updated_at": "2026-03-13T02:36:00.765Z",
+      "updated_by": "blt1930fc55e5669df9"
+    }
+  ]
+}
+
+ Test Context + + + + + + + + + + + + +
TestScenarioTest026_Should_Get_Term_Descendants
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
+
Passed0.31s
+
+
+ +
+
+
+ + Contentstack999_LogoutTest +
+
+ 1 passed · + 0 failed · + 0 skipped · + 1 total +
+
+
+ + + + + + + + + + + + + + + +
Test NameStatusDuration
+
✅ Test001_Should_Return_Success_On_Logout
+

Assertions

+
+
IsNull(Authtoken)
+
+
Expected:
null
+
Actual:
null
+
+
+
+
IsNotNull(loginResponse)
+
+
Expected:
NotNull
+
Actual:
{"notice":"You've logged out successfully."}
+
+

HTTP Transactions

+
+ +
DELETEhttps://api.contentstack.io/v3/user-session
+
Request Headers
authtoken: bltf12f72b6cb204c70
+X-User-Agent: contentstack-management-dotnet/0.5.0
+User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
+Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
+
cURL Command +
curl -X DELETE \
+  'https://api.contentstack.io/v3/user-session' \
+  -H 'authtoken: bltf12f72b6cb204c70' \
+  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
+  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
+  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
+ +
+
+
200 OK
+
Response Headers
Date: Fri, 13 Mar 2026 02:36:10 GMT
+Transfer-Encoding: chunked
+Connection: keep-alive
+Vary: Accept-Encoding
+Set-Cookie: authtoken=; path=/; expires=Thu, 01 Jan 1970 00:00:00 GMT; httponly
+clear-site-data: *
+x-runtime: 25ms
+X-Request-ID: 9eae58b6-9f9f-4720-b7e6-45176ff279b0
+Strict-Transport-Security: max-age=31536000; includeSubDomains
+Server: contentstack
+Content-Type: application/json
+
Response Body +
{
+  "notice": "You've logged out successfully."
+}
+
+ Test Context + + + + +
TestScenarioLogout
+
Passed0.30s
+
+
+
+ + + +
\ No newline at end of file From 5e0ad6d57e87c976141f3565ca04b82709eebe46 Mon Sep 17 00:00:00 2001 From: OMpawar-21 Date: Fri, 13 Mar 2026 10:34:14 +0530 Subject: [PATCH 2/8] feat: fixed taxonomy skipped test cases --- .gitignore | 5 +- .../Contentstack001_LoginTest.cs | 31 +- .../Contentstack017_TaxonomyTest.cs | 145 +- integration-test-report_20260313_080307.html | 47577 ---------------- 4 files changed, 128 insertions(+), 47630 deletions(-) delete mode 100644 integration-test-report_20260313_080307.html diff --git a/.gitignore b/.gitignore index a1e0da3..f0d5f50 100644 --- a/.gitignore +++ b/.gitignore @@ -24,4 +24,7 @@ packages/ */mono** */appSettings.json api_referece/* -.sonarqube/ \ No newline at end of file +.sonarqube/ +*.html +*.cobertura.xml +integration-test-report_*.html diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack001_LoginTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack001_LoginTest.cs index 2f40b48..eef6538 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack001_LoginTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack001_LoginTest.cs @@ -1,5 +1,6 @@ using System; using System.Net; +using System.Net.Http; using Contentstack.Management.Core.Exceptions; using Contentstack.Management.Core.Models; using Contentstack.Management.Core.Tests.Helpers; @@ -16,12 +17,20 @@ namespace Contentstack.Management.Core.Tests.IntegrationTest public class Contentstack001_LoginTest { private readonly IConfigurationRoot _configuration = new ConfigurationBuilder().AddJsonFile("appsettings.json").Build(); + + private static ContentstackClient CreateClientWithLogging() + { + var handler = new LoggingHttpHandler(); + var httpClient = new HttpClient(handler); + return new ContentstackClient(httpClient, new ContentstackClientOptions()); + } + [TestMethod] [DoNotParallelize] public void Test001_Should_Return_Failuer_On_Wrong_Login_Credentials() { TestOutputLogger.LogContext("TestScenario", "WrongCredentials"); - ContentstackClient client = new ContentstackClient(); + ContentstackClient client = CreateClientWithLogging(); NetworkCredential credentials = new NetworkCredential("mock_user", "mock_pasword"); try @@ -42,7 +51,7 @@ public void Test001_Should_Return_Failuer_On_Wrong_Login_Credentials() public void Test002_Should_Return_Failuer_On_Wrong_Async_Login_Credentials() { TestOutputLogger.LogContext("TestScenario", "WrongCredentialsAsync"); - ContentstackClient client = new ContentstackClient(); + ContentstackClient client = CreateClientWithLogging(); NetworkCredential credentials = new NetworkCredential("mock_user", "mock_pasword"); var response = client.LoginAsync(credentials); @@ -65,7 +74,7 @@ public void Test002_Should_Return_Failuer_On_Wrong_Async_Login_Credentials() public async System.Threading.Tasks.Task Test003_Should_Return_Success_On_Async_Login() { TestOutputLogger.LogContext("TestScenario", "AsyncLoginSuccess"); - ContentstackClient client = new ContentstackClient(); + ContentstackClient client = CreateClientWithLogging(); try { @@ -90,7 +99,7 @@ public void Test004_Should_Return_Success_On_Login() TestOutputLogger.LogContext("TestScenario", "SyncLoginSuccess"); try { - ContentstackClient client = new ContentstackClient(); + ContentstackClient client = CreateClientWithLogging(); ContentstackResponse contentstackResponse = client.Login(Contentstack.Credential); string loginResponse = contentstackResponse.OpenResponse(); @@ -111,7 +120,7 @@ public void Test005_Should_Return_Loggedin_User() TestOutputLogger.LogContext("TestScenario", "GetUser"); try { - ContentstackClient client = new ContentstackClient(); + ContentstackClient client = CreateClientWithLogging(); client.Login(Contentstack.Credential); @@ -135,7 +144,7 @@ public async System.Threading.Tasks.Task Test006_Should_Return_Loggedin_User_Asy TestOutputLogger.LogContext("TestScenario", "GetUserAsync"); try { - ContentstackClient client = new ContentstackClient(); + ContentstackClient client = CreateClientWithLogging(); await client.LoginAsync(Contentstack.Credential); @@ -165,7 +174,7 @@ public void Test007_Should_Return_Loggedin_User_With_Organizations_detail() ParameterCollection collection = new ParameterCollection(); collection.Add("include_orgs_roles", true); - ContentstackClient client = new ContentstackClient(); + ContentstackClient client = CreateClientWithLogging(); client.Login(Contentstack.Credential); @@ -189,7 +198,7 @@ public void Test007_Should_Return_Loggedin_User_With_Organizations_detail() public void Test008_Should_Fail_Login_With_Invalid_MfaSecret() { TestOutputLogger.LogContext("TestScenario", "InvalidMfaSecret"); - ContentstackClient client = new ContentstackClient(); + ContentstackClient client = CreateClientWithLogging(); NetworkCredential credentials = new NetworkCredential("test_user", "test_password"); string invalidMfaSecret = "INVALID_BASE32_SECRET!@#"; @@ -213,7 +222,7 @@ public void Test008_Should_Fail_Login_With_Invalid_MfaSecret() public void Test009_Should_Generate_TOTP_Token_With_Valid_MfaSecret() { TestOutputLogger.LogContext("TestScenario", "ValidMfaSecret"); - ContentstackClient client = new ContentstackClient(); + ContentstackClient client = CreateClientWithLogging(); NetworkCredential credentials = new NetworkCredential("test_user", "test_password"); string validMfaSecret = "JBSWY3DPEHPK3PXP"; @@ -243,7 +252,7 @@ public void Test009_Should_Generate_TOTP_Token_With_Valid_MfaSecret() public async System.Threading.Tasks.Task Test010_Should_Generate_TOTP_Token_With_Valid_MfaSecret_Async() { TestOutputLogger.LogContext("TestScenario", "ValidMfaSecretAsync"); - ContentstackClient client = new ContentstackClient(); + ContentstackClient client = CreateClientWithLogging(); NetworkCredential credentials = new NetworkCredential("test_user", "test_password"); string validMfaSecret = "JBSWY3DPEHPK3PXP"; @@ -273,7 +282,7 @@ public async System.Threading.Tasks.Task Test010_Should_Generate_TOTP_Token_With public void Test011_Should_Prefer_Explicit_Token_Over_MfaSecret() { TestOutputLogger.LogContext("TestScenario", "ExplicitTokenOverMfa"); - ContentstackClient client = new ContentstackClient(); + ContentstackClient client = CreateClientWithLogging(); NetworkCredential credentials = new NetworkCredential("test_user", "test_password"); string validMfaSecret = "JBSWY3DPEHPK3PXP"; string explicitToken = "123456"; diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs index 6e8b265..ba8cf83 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs @@ -21,7 +21,9 @@ public class Contentstack017_TaxonomyTest private static string _asyncCreatedTaxonomyUid; private static string _importedTaxonomyUid; private static string _testLocaleCode; + private static string _asyncTestLocaleCode; private static bool _weCreatedTestLocale; + private static bool _weCreatedAsyncTestLocale; private static List _createdTermUids; private static string _rootTermUid; private static string _childTermUid; @@ -213,13 +215,17 @@ public void Test011_Should_Localize_Taxonomy() } string masterLocale = "en-us"; _testLocaleCode = null; + _asyncTestLocaleCode = null; foreach (var item in localesArray) { var code = item["code"]?.ToString(); if (string.IsNullOrEmpty(code)) continue; - if (!string.Equals(code, masterLocale, StringComparison.OrdinalIgnoreCase)) - { + if (string.Equals(code, masterLocale, StringComparison.OrdinalIgnoreCase)) continue; + if (_testLocaleCode == null) _testLocaleCode = code; + else if (_asyncTestLocaleCode == null) + { + _asyncTestLocaleCode = code; break; } } @@ -249,6 +255,27 @@ public void Test011_Should_Localize_Taxonomy() AssertLogger.Inconclusive("Stack has no non-master locale and could not create one; skipping taxonomy localize tests."); return; } + if (string.IsNullOrEmpty(_asyncTestLocaleCode)) + { + try + { + _asyncTestLocaleCode = "mr-in"; + var localeModel = new LocaleModel + { + Code = _asyncTestLocaleCode, + Name = "Marathi (India)" + }; + ContentstackResponse createResponse = _stack.Locale().Create(localeModel); + if (createResponse.IsSuccessStatusCode) + _weCreatedAsyncTestLocale = true; + else + _asyncTestLocaleCode = null; + } + catch (ContentstackErrorException) + { + _asyncTestLocaleCode = null; + } + } TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); TestOutputLogger.LogContext("TestLocaleCode", _testLocaleCode ?? ""); @@ -268,6 +295,34 @@ public void Test011_Should_Localize_Taxonomy() AssertLogger.AreEqual(_testLocaleCode, wrapper.Taxonomy.Locale, "LocalizedLocale"); } + [TestMethod] + [DoNotParallelize] + public async Task Test012_Should_Localize_Taxonomy_Async() + { + TestOutputLogger.LogContext("TestScenario", "Test012_Should_Localize_Taxonomy_Async"); + if (string.IsNullOrEmpty(_asyncTestLocaleCode)) + { + AssertLogger.Inconclusive("No second non-master locale available; skipping async taxonomy localize test."); + return; + } + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("AsyncTestLocaleCode", _asyncTestLocaleCode ?? ""); + var localizeModel = new TaxonomyModel + { + Uid = _taxonomyUid, + Name = "Taxonomy Localized Async", + Description = "Localized description async" + }; + var coll = new ParameterCollection(); + coll.Add("locale", _asyncTestLocaleCode); + ContentstackResponse response = await _stack.Taxonomy(_taxonomyUid).LocalizeAsync(localizeModel, coll); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"LocalizeAsync failed: {response.OpenResponse()}", "LocalizeAsyncSuccess"); + var wrapper = response.OpenTResponse(); + AssertLogger.IsNotNull(wrapper?.Taxonomy, "Wrapper taxonomy"); + if (!string.IsNullOrEmpty(wrapper.Taxonomy.Locale)) + AssertLogger.AreEqual(_asyncTestLocaleCode, wrapper.Taxonomy.Locale, "LocalizedAsyncLocale"); + } + [TestMethod] [DoNotParallelize] public void Test013_Should_Throw_When_Localize_With_Invalid_Locale() @@ -565,6 +620,33 @@ public void Test030_Should_Localize_Term() AssertLogger.IsNotNull(wrapper?.Term, "Term in response"); } + [TestMethod] + [DoNotParallelize] + public async Task Test031_Should_Localize_Term_Async() + { + TestOutputLogger.LogContext("TestScenario", "Test031_Should_Localize_Term_Async"); + if (string.IsNullOrEmpty(_asyncTestLocaleCode)) + { + AssertLogger.Inconclusive("No second non-master locale available."); + return; + } + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); + TestOutputLogger.LogContext("AsyncTestLocaleCode", _asyncTestLocaleCode ?? ""); + var localizeModel = new TermModel + { + Uid = _rootTermUid, + Name = "Root Term Localized Async", + ParentUid = null + }; + var coll = new ParameterCollection(); + coll.Add("locale", _asyncTestLocaleCode); + ContentstackResponse response = await _stack.Taxonomy(_taxonomyUid).Terms(_rootTermUid).LocalizeAsync(localizeModel, coll); + AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Term LocalizeAsync failed: {response.OpenResponse()}", "TermLocalizeAsyncSuccess"); + var wrapper = response.OpenTResponse(); + AssertLogger.IsNotNull(wrapper?.Term, "Term in response"); + } + [TestMethod] [DoNotParallelize] public void Test032_Should_Move_Term() @@ -576,27 +658,11 @@ public void Test032_Should_Move_Term() var moveModel = new TermMoveModel { ParentUid = _rootTermUid, - Order = 0 + Order = 1 }; - ContentstackResponse response = null; - try - { - response = _stack.Taxonomy(_taxonomyUid).Terms(_childTermUid).Move(moveModel, null); - } - catch (ContentstackErrorException) - { - try - { - var coll = new ParameterCollection(); - coll.Add("force", true); - response = _stack.Taxonomy(_taxonomyUid).Terms(_childTermUid).Move(moveModel, coll); - } - catch (ContentstackErrorException ex) - { - AssertLogger.Inconclusive(string.Format("Move term failed: {0}", ex.Message)); - return; - } - } + var coll = new ParameterCollection(); + coll.Add("force", true); + ContentstackResponse response = _stack.Taxonomy(_taxonomyUid).Terms(_childTermUid).Move(moveModel, coll); AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Move term failed: {response.OpenResponse()}", "MoveTermSuccess"); var wrapper = response.OpenTResponse(); AssertLogger.IsNotNull(wrapper?.Term, "Term in response"); @@ -615,25 +681,9 @@ public async Task Test033_Should_Move_Term_Async() ParentUid = _rootTermUid, Order = 1 }; - ContentstackResponse response = null; - try - { - response = await _stack.Taxonomy(_taxonomyUid).Terms(_childTermUid).MoveAsync(moveModel, null); - } - catch (ContentstackErrorException) - { - try - { - var coll = new ParameterCollection(); - coll.Add("force", true); - response = await _stack.Taxonomy(_taxonomyUid).Terms(_childTermUid).MoveAsync(moveModel, coll); - } - catch (ContentstackErrorException ex) - { - AssertLogger.Inconclusive(string.Format("Move term failed: {0}", ex.Message)); - return; - } - } + var coll = new ParameterCollection(); + coll.Add("force", true); + ContentstackResponse response = await _stack.Taxonomy(_taxonomyUid).Terms(_childTermUid).MoveAsync(moveModel, coll); AssertLogger.IsTrue(response.IsSuccessStatusCode, $"MoveAsync term failed: {response.OpenResponse()}", "MoveAsyncTermSuccess"); var wrapper = response.OpenTResponse(); AssertLogger.IsNotNull(wrapper?.Term, "Term in response"); @@ -820,6 +870,19 @@ public static void Cleanup() } } + if (_weCreatedAsyncTestLocale && !string.IsNullOrEmpty(_asyncTestLocaleCode)) + { + try + { + stack.Locale(_asyncTestLocaleCode).Delete(); + Console.WriteLine($"[Cleanup] Deleted async test locale: {_asyncTestLocaleCode}"); + } + catch (Exception ex) + { + Console.WriteLine($"[Cleanup] Failed to delete async test locale {_asyncTestLocaleCode}: {ex.Message}"); + } + } + if (_weCreatedTestLocale && !string.IsNullOrEmpty(_testLocaleCode)) { try diff --git a/integration-test-report_20260313_080307.html b/integration-test-report_20260313_080307.html deleted file mode 100644 index 51141eb..0000000 --- a/integration-test-report_20260313_080307.html +++ /dev/null @@ -1,47577 +0,0 @@ - - - - - - .NET CMA SDK - Integration Test Report - - - -
- -
-

Integration Test Results

-

.NET CMA SDK — March 13, 2026 at 08:06 AM

-
- -
-
193
Total Tests
-
192
Passed
-
0
Failed
-
1
Skipped
-
0.0s
Duration
-
- -
-

Pass Rate

-
-
99.5%
-
-
- -
-

Global Code Coverage

- - - - - - - - - - -
StatementsBranchesFunctionsLines
43.3%33.9%52.8%43.3%
-
-

Test Results by Integration File

-
-
-
- - Contentstack001_LoginTest -
-
- 11 passed · - 0 failed · - 0 skipped · - 11 total -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Test NameStatusDuration
-
✅ Test009_Should_Generate_TOTP_Token_With_Valid_MfaSecret
-

Assertions

-
-
AreEqual(StatusCode)
-
-
Expected:
UnprocessableEntity
-
Actual:
UnprocessableEntity
-
-
-
-
IsTrue(MFA error message check)
-
-
Expected:
True
-
Actual:
True
-
-
-
- Test Context - - - - -
TestScenarioValidMfaSecret
-
Passed1.18s
-
✅ Test005_Should_Return_Loggedin_User
-

Assertions

-
-
IsNotNull(user)
-
-
Expected:
NotNull
-
Actual:
{
-  "user": {
-    "uid": "blt1930fc55e5669df9",
-    "created_at": "2026-01-08T05:36:36.548Z",
-    "updated_at": "2026-03-13T02:33:18.172Z",
-    "email": "om.pawar@contentstack.com",
-    "username": "om_bltd30a4c66",
-    "first_name": "OM",
-    "last_name": "PAWAR",
-    "org_uid": [],
-    "shared_org_uid": [
-      "bltc27b596a90cf8edc",
-      "blt8d282118e2094bb8"
-    ],
-    "active": true,
-    "failed_attempts": 0,
-    "last_login_at": "2026-03-13T02:33:18.172Z",
-    "password_updated_at": "2026-01-08T06:08:52.139Z",
-    "password_reset_required": false,
-    "roles": [
-      {
-        "uid": "bltac311a6c848e575e",
-        "name": "Admin",
-        "description": "Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.",
-        "roles": [],
-        "created_at": "2023-12-19T09:09:51.744Z",
-        "updated_at": "2026-02-11T11:15:32.423Z",
-        "api_key": "bltf16a9d5b53d522d7"
-      },
-      {
-        "uid": "blt3e4a83f62c3ed726",
-        "name": "Developer",
-        "description": "Developer can perform all Content Manager's actions, view audit logs, create roles, invite users, manage content types, languages, and environments.",
-        "roles": [],
-        "created_at": "2026-01-08T05:35:15.205Z",
-        "updated_at": "2026-01-08T05:36:36.776Z",
-        "api_key": "blt2fe3288bcebfa8ae",
-        "rules": [
-          {
-            "module": "taxonomy",
-            "taxonomies": [
-              "$all"
-            ],
-            "terms": [
-              "$all.$all"
-            ],
-            "content_types": [
-              {
-                "uid": "$all",
-                "acl": {
-                  "read": true,
-                  "sub_acl": {
-                    "read": true,
-                    "create": true,
-                    "update": true,
-                    "delete": true,
-                    "publish": true
-                  }
-                }
-              }
-            ],
-            "acl": {
-              "read": true,
-              "sub_acl": {
-                "read": true,
-                "create": true,
-                "update": true,
-                "delete": true,
-                "publish": true
-              }
-            }
-          },
-          {
-            "module": "locale",
-            "locales": [
-              "$all"
-            ]
-          },
-          {
-            "module": "environment",
-            "environments": [
-              "$all"
-            ]
-          },
-          {
-            "module": "asset",
-            "assets": [
-              "$all"
-            ],
-            "acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true,
-              "publish": true
-            }
-          }
-        ]
-      },
-      {
-        "uid": "blte050fa9e897278d5",
-        "name": "Admin",
-        "description": "Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.",
-        "roles": [],
-        "created_at": "2026-01-08T05:35:15.205Z",
-        "updated_at": "2026-01-08T05:36:36.776Z",
-        "api_key": "blt2fe3288bcebfa8ae"
-      },
-      {
-        "uid": "blt167f15fb55232230",
-        "name": "Admin",
-        "description": "Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.",
-        "created_at": "2026-03-06T15:18:49.942Z",
-        "updated_at": "2026-03-06T15:18:49.942Z",
-        "api_key": "blta23060d14351eb10"
-      }
-    ],
-    "organizations": [
-      {
-        "uid": "bltc27b596a90cf8edc",
-        "name": "Devfest sept 2022",
-        "plan_id": "copy_of_cs_qa_test",
-        "expires_on": "2031-12-30T00:00:00Z",
-        "enabled": true,
-        "is_over_usage_allowed": true,
-        "created_at": "2022-09-08T09:39:29.233Z",
-        "updated_at": "2025-07-15T09:46:32.058Z",
-        "tags": [
-          "employee"
-        ]
-      },
-      {
-        "uid": "blt8d282118e2094bb8",
-        "name": "SDK org",
-        "plan_id": "sdk_branch_plan",
-        "expires_on": "2029-12-21T00:00:00Z",
-        "enabled": true,
-        "is_over_usage_allowed": true,
-        "created_at": "2023-05-15T05:46:26.262Z",
-        "updated_at": "2025-03-17T06:07:47.263Z",
-        "tags": [
-          "testing"
-        ]
-      }
-    ]
-  }
-}
-
-
-
- Test Context - - - - -
TestScenarioGetUser
-
Passed1.48s
-
✅ Test003_Should_Return_Success_On_Async_Login
-

Assertions

-
-
IsNotNull(Authtoken)
-
-
Expected:
NotNull
-
Actual:
blte273a998f71b31a3
-
-
-
-
IsNotNull(loginResponse)
-
-
Expected:
NotNull
-
Actual:
{"notice":"Login Successful.","user":{"uid":"blt1930fc55e5669df9","created_at":"2026-01-08T05:36:36.548Z","updated_at":"2026-03-13T02:33:15.558Z","email":"om.pawar@contentstack.com","username":"om_bltd30a4c66","first_name":"OM","last_name":"PAWAR","org_uid":[],"shared_org_uid":["bltc27b596a90cf8edc","blt8d282118e2094bb8"],"active":true,"failed_attempts":0,"settings":{"global":[{"key":"favorite_stacks","value":[{"org_uid":"blt8d282118e2094bb8","stacks":[{"api_key":"blteda07f97e97feb91"}]},{"org_uid":"bltbe479f273f7e8624","stacks":[]}]}]},"last_login_at":"2026-03-13T02:33:15.558Z","password_updated_at":"2026-01-08T06:08:52.139Z","password_reset_required":false,"authtoken":"blte273a998f71b31a3","roles":[{"uid":"bltac311a6c848e575e","name":"Admin","description":"Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.","roles":[],"created_at":"2023-12-19T09:09:51.744Z","updated_at":"2026-02-11T11:15:32.423Z","api_key":"bltf16a9d5b53d522d7"},{"uid":"blt3e4a83f62c3ed726","name":"Developer","description":"Developer can perform all Content Manager's actions, view audit logs, create roles, invite users, manage content types, languages, and environments.","roles":[],"created_at":"2026-01-08T05:35:15.205Z","updated_at":"2026-01-08T05:36:36.776Z","api_key":"blt2fe3288bcebfa8ae","rules":[{"module":"taxonomy","taxonomies":["$all"],"terms":["$all.$all"],"content_types":[{"uid":"$all","acl":{"read":true,"sub_acl":{"read":true,"create":true,"update":true,"delete":true,"publish":true}}}],"acl":{"read":true,"sub_acl":{"read":true,"create":true,"update":true,"delete":true,"publish":true}}},{"module":"locale","locales":["$all"]},{"module":"environment","environments":["$all"]},{"module":"asset","assets":["$all"],"acl":{"create":true,"read":true,"update":true,"delete":true,"publish":true}}]},{"uid":"blte050fa9e897278d5","name":"Admin","description":"Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.","roles":[],"created_at":"2026-01-08T05:35:15.205Z","updated_at":"2026-01-08T05:36:36.776Z","api_key":"blt2fe3288bcebfa8ae"},{"uid":"blt167f15fb55232230","name":"Admin","description":"Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.","created_at":"2026-03-06T15:18:49.942Z","updated_at":"2026-03-06T15:18:49.942Z","api_key":"blta23060d14351eb10"}],"organizations":[{"uid":"bltc27b596a90cf8edc","name":"Devfest sept 2022","plan_id":"copy_of_cs_qa_test","expires_on":"2031-12-30T00:00:00.000Z","enabled":true,"is_over_usage_allowed":true,"created_at":"2022-09-08T09:39:29.233Z","updated_at":"2025-07-15T09:46:32.058Z","tags":["employee"]},{"uid":"blt8d282118e2094bb8","name":"SDK org","plan_id":"sdk_branch_plan","expires_on":"2029-12-21T00:00:00.000Z","enabled":true,"is_over_usage_allowed":true,"created_at":"2023-05-15T05:46:26.262Z","updated_at":"2025-03-17T06:07:47.263Z","tags":["testing"]}],"has_pending_invites":false}}
-
-
-
- Test Context - - - - -
TestScenarioAsyncLoginSuccess
-
Passed1.53s
-
✅ Test006_Should_Return_Loggedin_User_Async
-

Assertions

-
-
IsNotNull(user)
-
-
Expected:
NotNull
-
Actual:
{
-  "user": {
-    "uid": "blt1930fc55e5669df9",
-    "created_at": "2026-01-08T05:36:36.548Z",
-    "updated_at": "2026-03-13T02:33:21.137Z",
-    "email": "om.pawar@contentstack.com",
-    "username": "om_bltd30a4c66",
-    "first_name": "OM",
-    "last_name": "PAWAR",
-    "org_uid": [],
-    "shared_org_uid": [
-      "bltc27b596a90cf8edc",
-      "blt8d282118e2094bb8"
-    ],
-    "active": true,
-    "failed_attempts": 0,
-    "last_login_at": "2026-03-13T02:33:21.137Z",
-    "password_updated_at": "2026-01-08T06:08:52.139Z",
-    "password_reset_required": false,
-    "roles": [
-      {
-        "uid": "bltac311a6c848e575e",
-        "name": "Admin",
-        "description": "Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.",
-        "roles": [],
-        "created_at": "2023-12-19T09:09:51.744Z",
-        "updated_at": "2026-02-11T11:15:32.423Z",
-        "api_key": "bltf16a9d5b53d522d7"
-      },
-      {
-        "uid": "blt3e4a83f62c3ed726",
-        "name": "Developer",
-        "description": "Developer can perform all Content Manager's actions, view audit logs, create roles, invite users, manage content types, languages, and environments.",
-        "roles": [],
-        "created_at": "2026-01-08T05:35:15.205Z",
-        "updated_at": "2026-01-08T05:36:36.776Z",
-        "api_key": "blt2fe3288bcebfa8ae",
-        "rules": [
-          {
-            "module": "taxonomy",
-            "taxonomies": [
-              "$all"
-            ],
-            "terms": [
-              "$all.$all"
-            ],
-            "content_types": [
-              {
-                "uid": "$all",
-                "acl": {
-                  "read": true,
-                  "sub_acl": {
-                    "read": true,
-                    "create": true,
-                    "update": true,
-                    "delete": true,
-                    "publish": true
-                  }
-                }
-              }
-            ],
-            "acl": {
-              "read": true,
-              "sub_acl": {
-                "read": true,
-                "create": true,
-                "update": true,
-                "delete": true,
-                "publish": true
-              }
-            }
-          },
-          {
-            "module": "locale",
-            "locales": [
-              "$all"
-            ]
-          },
-          {
-            "module": "environment",
-            "environments": [
-              "$all"
-            ]
-          },
-          {
-            "module": "asset",
-            "assets": [
-              "$all"
-            ],
-            "acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true,
-              "publish": true
-            }
-          }
-        ]
-      },
-      {
-        "uid": "blte050fa9e897278d5",
-        "name": "Admin",
-        "description": "Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.",
-        "roles": [],
-        "created_at": "2026-01-08T05:35:15.205Z",
-        "updated_at": "2026-01-08T05:36:36.776Z",
-        "api_key": "blt2fe3288bcebfa8ae"
-      },
-      {
-        "uid": "blt167f15fb55232230",
-        "name": "Admin",
-        "description": "Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.",
-        "created_at": "2026-03-06T15:18:49.942Z",
-        "updated_at": "2026-03-06T15:18:49.942Z",
-        "api_key": "blta23060d14351eb10"
-      }
-    ],
-    "organizations": [
-      {
-        "uid": "bltc27b596a90cf8edc",
-        "name": "Devfest sept 2022",
-        "plan_id": "copy_of_cs_qa_test",
-        "expires_on": "2031-12-30T00:00:00Z",
-        "enabled": true,
-        "is_over_usage_allowed": true,
-        "created_at": "2022-09-08T09:39:29.233Z",
-        "updated_at": "2025-07-15T09:46:32.058Z",
-        "tags": [
-          "employee"
-        ]
-      },
-      {
-        "uid": "blt8d282118e2094bb8",
-        "name": "SDK org",
-        "plan_id": "sdk_branch_plan",
-        "expires_on": "2029-12-21T00:00:00Z",
-        "enabled": true,
-        "is_over_usage_allowed": true,
-        "created_at": "2023-05-15T05:46:26.262Z",
-        "updated_at": "2025-03-17T06:07:47.263Z",
-        "tags": [
-          "testing"
-        ]
-      }
-    ]
-  }
-}
-
-
-
-
IsNotNull(organizations)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "uid": "bltc27b596a90cf8edc",
-    "name": "Devfest sept 2022",
-    "plan_id": "copy_of_cs_qa_test",
-    "expires_on": "2031-12-30T00:00:00Z",
-    "enabled": true,
-    "is_over_usage_allowed": true,
-    "created_at": "2022-09-08T09:39:29.233Z",
-    "updated_at": "2025-07-15T09:46:32.058Z",
-    "tags": [
-      "employee"
-    ]
-  },
-  {
-    "uid": "blt8d282118e2094bb8",
-    "name": "SDK org",
-    "plan_id": "sdk_branch_plan",
-    "expires_on": "2029-12-21T00:00:00Z",
-    "enabled": true,
-    "is_over_usage_allowed": true,
-    "created_at": "2023-05-15T05:46:26.262Z",
-    "updated_at": "2025-03-17T06:07:47.263Z",
-    "tags": [
-      "testing"
-    ]
-  }
-]
-
-
-
-
IsInstanceOfType(organizations)
-
-
Expected:
JArray
-
Actual:
JArray
-
-
-
-
IsNull(org_roles)
-
-
Expected:
null
-
Actual:
null
-
-
-
- Test Context - - - - -
TestScenarioGetUserAsync
-
Passed2.97s
-
✅ Test011_Should_Prefer_Explicit_Token_Over_MfaSecret
-

Assertions

-
-
AreEqual(StatusCode)
-
-
Expected:
UnprocessableEntity
-
Actual:
UnprocessableEntity
-
-
-
- Test Context - - - - -
TestScenarioExplicitTokenOverMfa
-
Passed1.41s
-
✅ Test010_Should_Generate_TOTP_Token_With_Valid_MfaSecret_Async
-

Assertions

-
-
AreEqual(StatusCode)
-
-
Expected:
UnprocessableEntity
-
Actual:
UnprocessableEntity
-
-
-
-
IsTrue(MFA error message check)
-
-
Expected:
True
-
Actual:
True
-
-
-
- Test Context - - - - -
TestScenarioValidMfaSecretAsync
-
Passed1.28s
-
✅ Test002_Should_Return_Failuer_On_Wrong_Async_Login_Credentials
-

Assertions

-
-
AreEqual(StatusCode)
-
-
Expected:
UnprocessableEntity
-
Actual:
UnprocessableEntity
-
-
-
-
AreEqual(Message)
-
-
Expected:
Looks like your email or password is invalid. Please try again or reset your password.
-
Actual:
Looks like your email or password is invalid. Please try again or reset your password.
-
-
-
-
AreEqual(ErrorMessage)
-
-
Expected:
Looks like your email or password is invalid. Please try again or reset your password.
-
Actual:
Looks like your email or password is invalid. Please try again or reset your password.
-
-
-
-
AreEqual(ErrorCode)
-
-
Expected:
104
-
Actual:
104
-
-
-
- Test Context - - - - -
TestScenarioWrongCredentialsAsync
-
Passed3.00s
-
✅ Test004_Should_Return_Success_On_Login
-

Assertions

-
-
IsNotNull(Authtoken)
-
-
Expected:
NotNull
-
Actual:
bltfab616501a6f84c4
-
-
-
-
IsNotNull(loginResponse)
-
-
Expected:
NotNull
-
Actual:
{"notice":"Login Successful.","user":{"uid":"blt1930fc55e5669df9","created_at":"2026-01-08T05:36:36.548Z","updated_at":"2026-03-13T02:33:17.008Z","email":"om.pawar@contentstack.com","username":"om_bltd30a4c66","first_name":"OM","last_name":"PAWAR","org_uid":[],"shared_org_uid":["bltc27b596a90cf8edc","blt8d282118e2094bb8"],"active":true,"failed_attempts":0,"settings":{"global":[{"key":"favorite_stacks","value":[{"org_uid":"blt8d282118e2094bb8","stacks":[{"api_key":"blteda07f97e97feb91"}]},{"org_uid":"bltbe479f273f7e8624","stacks":[]}]}]},"last_login_at":"2026-03-13T02:33:17.008Z","password_updated_at":"2026-01-08T06:08:52.139Z","password_reset_required":false,"authtoken":"bltfab616501a6f84c4","roles":[{"uid":"bltac311a6c848e575e","name":"Admin","description":"Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.","roles":[],"created_at":"2023-12-19T09:09:51.744Z","updated_at":"2026-02-11T11:15:32.423Z","api_key":"bltf16a9d5b53d522d7"},{"uid":"blt3e4a83f62c3ed726","name":"Developer","description":"Developer can perform all Content Manager's actions, view audit logs, create roles, invite users, manage content types, languages, and environments.","roles":[],"created_at":"2026-01-08T05:35:15.205Z","updated_at":"2026-01-08T05:36:36.776Z","api_key":"blt2fe3288bcebfa8ae","rules":[{"module":"taxonomy","taxonomies":["$all"],"terms":["$all.$all"],"content_types":[{"uid":"$all","acl":{"read":true,"sub_acl":{"read":true,"create":true,"update":true,"delete":true,"publish":true}}}],"acl":{"read":true,"sub_acl":{"read":true,"create":true,"update":true,"delete":true,"publish":true}}},{"module":"locale","locales":["$all"]},{"module":"environment","environments":["$all"]},{"module":"asset","assets":["$all"],"acl":{"create":true,"read":true,"update":true,"delete":true,"publish":true}}]},{"uid":"blte050fa9e897278d5","name":"Admin","description":"Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.","roles":[],"created_at":"2026-01-08T05:35:15.205Z","updated_at":"2026-01-08T05:36:36.776Z","api_key":"blt2fe3288bcebfa8ae"},{"uid":"blt167f15fb55232230","name":"Admin","description":"Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.","created_at":"2026-03-06T15:18:49.942Z","updated_at":"2026-03-06T15:18:49.942Z","api_key":"blta23060d14351eb10"}],"organizations":[{"uid":"bltc27b596a90cf8edc","name":"Devfest sept 2022","plan_id":"copy_of_cs_qa_test","expires_on":"2031-12-30T00:00:00.000Z","enabled":true,"is_over_usage_allowed":true,"created_at":"2022-09-08T09:39:29.233Z","updated_at":"2025-07-15T09:46:32.058Z","tags":["employee"]},{"uid":"blt8d282118e2094bb8","name":"SDK org","plan_id":"sdk_branch_plan","expires_on":"2029-12-21T00:00:00.000Z","enabled":true,"is_over_usage_allowed":true,"created_at":"2023-05-15T05:46:26.262Z","updated_at":"2025-03-17T06:07:47.263Z","tags":["testing"]}],"has_pending_invites":false}}
-
-
-
- Test Context - - - - -
TestScenarioSyncLoginSuccess
-
Passed1.12s
-
✅ Test007_Should_Return_Loggedin_User_With_Organizations_detail
-

Assertions

-
-
IsNotNull(user)
-
-
Expected:
NotNull
-
Actual:
{
-  "user": {
-    "uid": "blt1930fc55e5669df9",
-    "created_at": "2026-01-08T05:36:36.548Z",
-    "updated_at": "2026-03-13T02:33:22.659Z",
-    "email": "om.pawar@contentstack.com",
-    "username": "om_bltd30a4c66",
-    "first_name": "OM",
-    "last_name": "PAWAR",
-    "org_uid": [],
-    "shared_org_uid": [
-      "bltc27b596a90cf8edc",
-      "blt8d282118e2094bb8"
-    ],
-    "active": true,
-    "failed_attempts": 0,
-    "last_login_at": "2026-03-13T02:33:22.658Z",
-    "password_updated_at": "2026-01-08T06:08:52.139Z",
-    "password_reset_required": false,
-    "roles": [
-      {
-        "uid": "bltac311a6c848e575e",
-        "name": "Admin",
-        "description": "Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.",
-        "roles": [],
-        "created_at": "2023-12-19T09:09:51.744Z",
-        "updated_at": "2026-02-11T11:15:32.423Z",
-        "api_key": "bltf16a9d5b53d522d7"
-      },
-      {
-        "uid": "blt3e4a83f62c3ed726",
-        "name": "Developer",
-        "description": "Developer can perform all Content Manager's actions, view audit logs, create roles, invite users, manage content types, languages, and environments.",
-        "roles": [],
-        "created_at": "2026-01-08T05:35:15.205Z",
-        "updated_at": "2026-01-08T05:36:36.776Z",
-        "api_key": "blt2fe3288bcebfa8ae",
-        "rules": [
-          {
-            "module": "taxonomy",
-            "taxonomies": [
-              "$all"
-            ],
-            "terms": [
-              "$all.$all"
-            ],
-            "content_types": [
-              {
-                "uid": "$all",
-                "acl": {
-                  "read": true,
-                  "sub_acl": {
-                    "read": true,
-                    "create": true,
-                    "update": true,
-                    "delete": true,
-                    "publish": true
-                  }
-                }
-              }
-            ],
-            "acl": {
-              "read": true,
-              "sub_acl": {
-                "read": true,
-                "create": true,
-                "update": true,
-                "delete": true,
-                "publish": true
-              }
-            }
-          },
-          {
-            "module": "locale",
-            "locales": [
-              "$all"
-            ]
-          },
-          {
-            "module": "environment",
-            "environments": [
-              "$all"
-            ]
-          },
-          {
-            "module": "asset",
-            "assets": [
-              "$all"
-            ],
-            "acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true,
-              "publish": true
-            }
-          }
-        ]
-      },
-      {
-        "uid": "blte050fa9e897278d5",
-        "name": "Admin",
-        "description": "Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.",
-        "roles": [],
-        "created_at": "2026-01-08T05:35:15.205Z",
-        "updated_at": "2026-01-08T05:36:36.776Z",
-        "api_key": "blt2fe3288bcebfa8ae"
-      },
-      {
-        "uid": "blt167f15fb55232230",
-        "name": "Admin",
-        "description": "Admin can perform all actions and manage all settings of the stack, except the ability to delete or transfer ownership of the stack.",
-        "created_at": "2026-03-06T15:18:49.942Z",
-        "updated_at": "2026-03-06T15:18:49.942Z",
-        "api_key": "blta23060d14351eb10"
-      }
-    ],
-    "organizations": [
-      {
-        "uid": "bltc27b596a90cf8edc",
-        "name": "Devfest sept 2022",
-        "plan_id": "copy_of_cs_qa_test",
-        "expires_on": "2031-12-30T00:00:00Z",
-        "enabled": true,
-        "is_over_usage_allowed": true,
-        "created_at": "2022-09-08T09:39:29.233Z",
-        "updated_at": "2025-07-15T09:46:32.058Z",
-        "tags": [
-          "employee"
-        ],
-        "org_roles": [
-          {
-            "uid": "blt38770ac252ae1352",
-            "name": "admin",
-            "description": "Admin role has full access to org admin related features",
-            "org_uid": "bltc27b596a90cf8edc",
-            "owner_uid": "blte4e676b5c330f66c",
-            "admin": true,
-            "default": true,
-            "permissions": [
-              "org.info:read",
-              "org.analytics:read",
-              "org.stacks:read",
-              "org.users:read",
-              "org.users:write",
-              "org.users:delete",
-              "org.users:unlock",
-              "org.roles:read",
-              "org.roles:write",
-              "org.roles:delete",
-              "org.scim:read",
-              "org.scim:write",
-              "org.bulk_task_queue:read",
-              "org.bulk_task_queue:write",
-              "org.teams:read",
-              "org.teams:write",
-              "org.teams:delete",
-              "org.security_config:read",
-              "org.security_config:write",
-              "org.webhooks_config:read",
-              "org.webhooks_config:write",
-              "org.audit_logs:read",
-              "am.spaces:create",
-              "am.fields:read",
-              "am.fields:create",
-              "am.fields:edit",
-              "am.fields:delete",
-              "am.asset_types:read",
-              "am.asset_types:create",
-              "am.asset_types:edit",
-              "am.asset_types:delete",
-              "am.users:read",
-              "am.users:create",
-              "am.users:edit",
-              "am.users:delete",
-              "am.roles:read",
-              "am.roles:create",
-              "am.roles:edit",
-              "am.roles:delete",
-              "am.languages:create",
-              "am.languages:read",
-              "am.languages:edit",
-              "am.languages:delete"
-            ],
-            "domain": "organization"
-          }
-        ]
-      },
-      {
-        "uid": "blt8d282118e2094bb8",
-        "name": "SDK org",
-        "plan_id": "sdk_branch_plan",
-        "expires_on": "2029-12-21T00:00:00Z",
-        "enabled": true,
-        "is_over_usage_allowed": true,
-        "created_at": "2023-05-15T05:46:26.262Z",
-        "updated_at": "2025-03-17T06:07:47.263Z",
-        "tags": [
-          "testing"
-        ],
-        "org_roles": [
-          {
-            "uid": "bltb8a7ba0eb93838aa",
-            "name": "admin",
-            "description": "Admin role has full access to org admin related features",
-            "org_uid": "blt8d282118e2094bb8",
-            "owner_uid": "bltc11e668e0295477f",
-            "admin": true,
-            "default": true,
-            "permissions": [
-              "org.info:read",
-              "org.analytics:read",
-              "org.stacks:read",
-              "org.users:read",
-              "org.users:write",
-              "org.users:delete",
-              "org.users:unlock",
-              "org.roles:read",
-              "org.roles:write",
-              "org.roles:delete",
-              "org.scim:read",
-              "org.scim:write",
-              "org.bulk_task_queue:read",
-              "org.bulk_task_queue:write",
-              "org.teams:read",
-              "org.teams:write",
-              "org.teams:delete",
-              "org.security_config:read",
-              "org.security_config:write",
-              "org.webhooks_config:read",
-              "org.webhooks_config:write",
-              "org.audit_logs:read",
-              "am.spaces:create",
-              "am.fields:read",
-              "am.fields:create",
-              "am.fields:edit",
-              "am.fields:delete",
-              "am.asset_types:read",
-              "am.asset_types:create",
-              "am.asset_types:edit",
-              "am.asset_types:delete",
-              "am.users:read",
-              "am.users:create",
-              "am.users:edit",
-              "am.users:delete",
-              "am.roles:read",
-              "am.roles:create",
-              "am.roles:edit",
-              "am.roles:delete",
-              "am.languages:create",
-              "am.languages:read",
-              "am.languages:edit",
-              "am.languages:delete"
-            ],
-            "domain": "organization"
-          }
-        ]
-      }
-    ]
-  }
-}
-
-
-
-
IsNotNull(organizations)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "uid": "bltc27b596a90cf8edc",
-    "name": "Devfest sept 2022",
-    "plan_id": "copy_of_cs_qa_test",
-    "expires_on": "2031-12-30T00:00:00Z",
-    "enabled": true,
-    "is_over_usage_allowed": true,
-    "created_at": "2022-09-08T09:39:29.233Z",
-    "updated_at": "2025-07-15T09:46:32.058Z",
-    "tags": [
-      "employee"
-    ],
-    "org_roles": [
-      {
-        "uid": "blt38770ac252ae1352",
-        "name": "admin",
-        "description": "Admin role has full access to org admin related features",
-        "org_uid": "bltc27b596a90cf8edc",
-        "owner_uid": "blte4e676b5c330f66c",
-        "admin": true,
-        "default": true,
-        "permissions": [
-          "org.info:read",
-          "org.analytics:read",
-          "org.stacks:read",
-          "org.users:read",
-          "org.users:write",
-          "org.users:delete",
-          "org.users:unlock",
-          "org.roles:read",
-          "org.roles:write",
-          "org.roles:delete",
-          "org.scim:read",
-          "org.scim:write",
-          "org.bulk_task_queue:read",
-          "org.bulk_task_queue:write",
-          "org.teams:read",
-          "org.teams:write",
-          "org.teams:delete",
-          "org.security_config:read",
-          "org.security_config:write",
-          "org.webhooks_config:read",
-          "org.webhooks_config:write",
-          "org.audit_logs:read",
-          "am.spaces:create",
-          "am.fields:read",
-          "am.fields:create",
-          "am.fields:edit",
-          "am.fields:delete",
-          "am.asset_types:read",
-          "am.asset_types:create",
-          "am.asset_types:edit",
-          "am.asset_types:delete",
-          "am.users:read",
-          "am.users:create",
-          "am.users:edit",
-          "am.users:delete",
-          "am.roles:read",
-          "am.roles:create",
-          "am.roles:edit",
-          "am.roles:delete",
-          "am.languages:create",
-          "am.languages:read",
-          "am.languages:edit",
-          "am.languages:delete"
-        ],
-        "domain": "organization"
-      }
-    ]
-  },
-  {
-    "uid": "blt8d282118e2094bb8",
-    "name": "SDK org",
-    "plan_id": "sdk_branch_plan",
-    "expires_on": "2029-12-21T00:00:00Z",
-    "enabled": true,
-    "is_over_usage_allowed": true,
-    "created_at": "2023-05-15T05:46:26.262Z",
-    "updated_at": "2025-03-17T06:07:47.263Z",
-    "tags": [
-      "testing"
-    ],
-    "org_roles": [
-      {
-        "uid": "bltb8a7ba0eb93838aa",
-        "name": "admin",
-        "description": "Admin role has full access to org admin related features",
-        "org_uid": "blt8d282118e2094bb8",
-        "owner_uid": "bltc11e668e0295477f",
-        "admin": true,
-        "default": true,
-        "permissions": [
-          "org.info:read",
-          "org.analytics:read",
-          "org.stacks:read",
-          "org.users:read",
-          "org.users:write",
-          "org.users:delete",
-          "org.users:unlock",
-          "org.roles:read",
-          "org.roles:write",
-          "org.roles:delete",
-          "org.scim:read",
-          "org.scim:write",
-          "org.bulk_task_queue:read",
-          "org.bulk_task_queue:write",
-          "org.teams:read",
-          "org.teams:write",
-          "org.teams:delete",
-          "org.security_config:read",
-          "org.security_config:write",
-          "org.webhooks_config:read",
-          "org.webhooks_config:write",
-          "org.audit_logs:read",
-          "am.spaces:create",
-          "am.fields:read",
-          "am.fields:create",
-          "am.fields:edit",
-          "am.fields:delete",
-          "am.asset_types:read",
-          "am.asset_types:create",
-          "am.asset_types:edit",
-          "am.asset_types:delete",
-          "am.users:read",
-          "am.users:create",
-          "am.users:edit",
-          "am.users:delete",
-          "am.roles:read",
-          "am.roles:create",
-          "am.roles:edit",
-          "am.roles:delete",
-          "am.languages:create",
-          "am.languages:read",
-          "am.languages:edit",
-          "am.languages:delete"
-        ],
-        "domain": "organization"
-      }
-    ]
-  }
-]
-
-
-
-
IsInstanceOfType(organizations)
-
-
Expected:
JArray
-
Actual:
JArray
-
-
-
-
IsNotNull(org_roles)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "uid": "blt38770ac252ae1352",
-    "name": "admin",
-    "description": "Admin role has full access to org admin related features",
-    "org_uid": "bltc27b596a90cf8edc",
-    "owner_uid": "blte4e676b5c330f66c",
-    "admin": true,
-    "default": true,
-    "permissions": [
-      "org.info:read",
-      "org.analytics:read",
-      "org.stacks:read",
-      "org.users:read",
-      "org.users:write",
-      "org.users:delete",
-      "org.users:unlock",
-      "org.roles:read",
-      "org.roles:write",
-      "org.roles:delete",
-      "org.scim:read",
-      "org.scim:write",
-      "org.bulk_task_queue:read",
-      "org.bulk_task_queue:write",
-      "org.teams:read",
-      "org.teams:write",
-      "org.teams:delete",
-      "org.security_config:read",
-      "org.security_config:write",
-      "org.webhooks_config:read",
-      "org.webhooks_config:write",
-      "org.audit_logs:read",
-      "am.spaces:create",
-      "am.fields:read",
-      "am.fields:create",
-      "am.fields:edit",
-      "am.fields:delete",
-      "am.asset_types:read",
-      "am.asset_types:create",
-      "am.asset_types:edit",
-      "am.asset_types:delete",
-      "am.users:read",
-      "am.users:create",
-      "am.users:edit",
-      "am.users:delete",
-      "am.roles:read",
-      "am.roles:create",
-      "am.roles:edit",
-      "am.roles:delete",
-      "am.languages:create",
-      "am.languages:read",
-      "am.languages:edit",
-      "am.languages:delete"
-    ],
-    "domain": "organization"
-  }
-]
-
-
-
- Test Context - - - - -
TestScenarioGetUserWithOrgRoles
-
Passed1.53s
-
✅ Test008_Should_Fail_Login_With_Invalid_MfaSecret
-

Assertions

-
-
IsTrue(ArgumentException thrown as expected)
-
-
Expected:
True
-
Actual:
True
-
-
-
- Test Context - - - - -
TestScenarioInvalidMfaSecret
-
Passed0.00s
-
✅ Test001_Should_Return_Failuer_On_Wrong_Login_Credentials
-

Assertions

-
-
AreEqual(StatusCode)
-
-
Expected:
UnprocessableEntity
-
Actual:
UnprocessableEntity
-
-
-
-
AreEqual(Message)
-
-
Expected:
Looks like your email or password is invalid. Please try again or reset your password.
-
Actual:
Looks like your email or password is invalid. Please try again or reset your password.
-
-
-
-
AreEqual(ErrorMessage)
-
-
Expected:
Looks like your email or password is invalid. Please try again or reset your password.
-
Actual:
Looks like your email or password is invalid. Please try again or reset your password.
-
-
-
-
AreEqual(ErrorCode)
-
-
Expected:
104
-
Actual:
104
-
-
-
- Test Context - - - - -
TestScenarioWrongCredentials
-
Passed1.21s
-
-
- -
-
-
- - Contentstack002_OrganisationTest -
-
- 17 passed · - 0 failed · - 0 skipped · - 17 total -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Test NameStatusDuration
-
✅ Test002_Should_Return_All_OrganizationsAsync
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "organizations": [
-    {
-      "uid": "bltc27b596a90cf8edc",
-      "name": "Devfest sept 2022",
-      "plan_id": "copy_of_cs_qa_test",
-      "owner_uid": "blte4e676b5c330f66c",
-      "expires_on": "2031-12-30T00:00:00Z",
-      "enabled": true,
-      "is_over_usage_allowed": true,
-      "created_at": "2022-09-08T09:39:29.233Z",
-      "updated_at": "2025-07-15T09:46:32.058Z",
-      "settings": {
-        "blockAuthQueryParams": true,
-        "allowedCDNTokens": [
-          "access_token"
-        ]
-      },
-      "tags": [
-        "employee"
-      ]
-    },
-    {
-      "uid": "blt8d282118e2094bb8",
-      "name": "SDK org",
-      "plan_id": "sdk_branch_plan",
-      "owner_uid": "blt37ba39e03b130064",
-      "is_transfer_set": false,
-      "expires_on": "2029-12-21T00:00:00Z",
-      "enabled": true,
-      "is_over_usage_allowed": true,
-      "created_at": "2023-05-15T05:46:26.262Z",
-      "updated_at": "2025-03-17T06:07:47.263Z",
-      "settings": {
-        "blockAuthQueryParams": true,
-        "allowedCDNTokens": [
-          "access_token"
-        ]
-      },
-      "tags": [
-        "testing"
-      ]
-    }
-  ]
-}
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/organizations
-
Request Headers
authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/organizations' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:28 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-runtime: 9ms
-X-Request-ID: c543fd92-72cb-451e-ae3b-74bb2c0edc81
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "organizations": [
-    {
-      "uid": "bltc27b596a90cf8edc",
-      "name": "Devfest sept 2022",
-      "plan_id": "copy_of_cs_qa_test",
-      "owner_uid": "blte4e676b5c330f66c",
-      "expires_on": "2031-12-30T00:00:00.000Z",
-      "enabled": true,
-      "is_over_usage_allowed": true,
-      "created_at": "2022-09-08T09:39:29.233Z",
-      "updated_at": "2025-07-15T09:46:32.058Z",
-      "settings": {
-        "blockAuthQueryParams": true,
-        "allowedCDNTokens": [
-          "access_token"
-        ]
-      },
-      "tags": [
-        "employee"
-      ]
-    },
-    {
-      "uid": "blt8d282118e2094bb8",
-      "name": "SDK org",
-      "plan_id": "sdk_branch_plan",
-      "owner_uid": "blt37ba39e03b130064",
-      "is_transfer_set": false,
-      "expires_on": "2029-12-21T00:00:00.000Z",
-      "enabled": true,
-      "is_over_usage_allowed": true,
-      "created_at": "2023-05-15T05:46:26.262Z",
-      "updated_at": "2025-03-17T06:07:47.263Z",
-      "settings": {
-        "blockAuthQueryParams": true,
-        "allowedCDNTokens": [
-          "access_token"
-        ]
-      },
-      "tags": [
-        "testing"
-      ]
-    }
-  ]
-}
-
- Test Context - - - - -
TestScenarioGetAllOrganizationsAsync
-
Passed0.29s
-
✅ Test008_Should_Add_User_To_Organization
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "notice": "The invitation has been sent successfully.",
-  "shares": [
-    {
-      "uid": "bltbd1e5e658d86592f",
-      "email": "testcs@contentstack.com",
-      "user_uid": "bltdfb5035a5e13faa8",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "blt802c2cf444969bc3"
-      ],
-      "invited_by": "blt1930fc55e5669df9",
-      "invited_at": "2026-03-13T02:33:30.662Z",
-      "status": "pending",
-      "created_at": "2026-03-13T02:33:30.66Z",
-      "updated_at": "2026-03-13T02:33:30.66Z"
-    }
-  ]
-}
-
-
-
-
AreEqual(sharesCount)
-
-
Expected:
1
-
Actual:
1
-
-
-
-
AreEqual(notice)
-
-
Expected:
The invitation has been sent successfully.
-
Actual:
The invitation has been sent successfully.
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share
-
Request Headers
authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 71
-Content-Type: application/json
-
Request Body
{"share":{"users":{"testcs@contentstack.com":["blt802c2cf444969bc3"]}}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 71' \
-  -H 'Content-Type: application/json' \
-  -d '{"share":{"users":{"testcs@contentstack.com":["blt802c2cf444969bc3"]}}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:30 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 57ms
-X-Request-ID: 4be76c02-7120-485a-bb1b-d2e223dd2b66
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "The invitation has been sent successfully.",
-  "shares": [
-    {
-      "uid": "bltbd1e5e658d86592f",
-      "email": "testcs@contentstack.com",
-      "user_uid": "bltdfb5035a5e13faa8",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "blt802c2cf444969bc3"
-      ],
-      "invited_by": "blt1930fc55e5669df9",
-      "invited_at": "2026-03-13T02:33:30.662Z",
-      "status": "pending",
-      "created_at": "2026-03-13T02:33:30.660Z",
-      "updated_at": "2026-03-13T02:33:30.660Z"
-    }
-  ]
-}
-
- Test Context - - - - -
TestScenarioAddUserToOrg
-
Passed0.35s
-
✅ Test001_Should_Return_All_Organizations
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "organizations": [
-    {
-      "uid": "bltc27b596a90cf8edc",
-      "name": "Devfest sept 2022",
-      "plan_id": "copy_of_cs_qa_test",
-      "owner_uid": "blte4e676b5c330f66c",
-      "expires_on": "2031-12-30T00:00:00Z",
-      "enabled": true,
-      "is_over_usage_allowed": true,
-      "created_at": "2022-09-08T09:39:29.233Z",
-      "updated_at": "2025-07-15T09:46:32.058Z",
-      "settings": {
-        "blockAuthQueryParams": true,
-        "allowedCDNTokens": [
-          "access_token"
-        ]
-      },
-      "tags": [
-        "employee"
-      ]
-    },
-    {
-      "uid": "blt8d282118e2094bb8",
-      "name": "SDK org",
-      "plan_id": "sdk_branch_plan",
-      "owner_uid": "blt37ba39e03b130064",
-      "is_transfer_set": false,
-      "expires_on": "2029-12-21T00:00:00Z",
-      "enabled": true,
-      "is_over_usage_allowed": true,
-      "created_at": "2023-05-15T05:46:26.262Z",
-      "updated_at": "2025-03-17T06:07:47.263Z",
-      "settings": {
-        "blockAuthQueryParams": true,
-        "allowedCDNTokens": [
-          "access_token"
-        ]
-      },
-      "tags": [
-        "testing"
-      ]
-    }
-  ]
-}
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/organizations
-
Request Headers
authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/organizations' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:28 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-runtime: 13ms
-X-Request-ID: 35ce1746-1fa6-4e5a-beba-8f6f453a0c38
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "organizations": [
-    {
-      "uid": "bltc27b596a90cf8edc",
-      "name": "Devfest sept 2022",
-      "plan_id": "copy_of_cs_qa_test",
-      "owner_uid": "blte4e676b5c330f66c",
-      "expires_on": "2031-12-30T00:00:00.000Z",
-      "enabled": true,
-      "is_over_usage_allowed": true,
-      "created_at": "2022-09-08T09:39:29.233Z",
-      "updated_at": "2025-07-15T09:46:32.058Z",
-      "settings": {
-        "blockAuthQueryParams": true,
-        "allowedCDNTokens": [
-          "access_token"
-        ]
-      },
-      "tags": [
-        "employee"
-      ]
-    },
-    {
-      "uid": "blt8d282118e2094bb8",
-      "name": "SDK org",
-      "plan_id": "sdk_branch_plan",
-      "owner_uid": "blt37ba39e03b130064",
-      "is_transfer_set": false,
-      "expires_on": "2029-12-21T00:00:00.000Z",
-      "enabled": true,
-      "is_over_usage_allowed": true,
-      "created_at": "2023-05-15T05:46:26.262Z",
-      "updated_at": "2025-03-17T06:07:47.263Z",
-      "settings": {
-        "blockAuthQueryParams": true,
-        "allowedCDNTokens": [
-          "access_token"
-        ]
-      },
-      "tags": [
-        "testing"
-      ]
-    }
-  ]
-}
-
- Test Context - - - - -
TestScenarioGetAllOrganizations
-
Passed1.50s
-
✅ Test007_Should_Return_Organization_RolesAsync
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "roles": [
-    {
-      "uid": "blt802c2cf444969bc3",
-      "name": "member",
-      "description": "Member role has read-only access to organization info",
-      "org_uid": "blt8d282118e2094bb8",
-      "owner_uid": "bltc11e668e0295477f",
-      "admin": false,
-      "default": true,
-      "users": [
-        "blt020de9168aaf378c",
-        "bltcd78b4313f5c14e9",
-        "blta4135beff83a5bd8",
-        "blt1fc241d9e7735ce5",
-        "blt18ff18daa1b288557ec8525d",
-        "blt9b9f5b60e4d0888f",
-        "bltcd145d6b20c55b33",
-        "blt8213bc6706786a3f",
-        "blt18d6a94bde0f8f1a",
-        "blt287ee2fb1289e5c5",
-        "blt286cb4a779238da5",
-        "blt8089bb1103a58c96",
-        "bltd05849bf58e89a89",
-        "bltdc6a4666c3bd956d",
-        "blt5343a15e88b3afab",
-        "bltcfdd4b7f0f6d14be",
-        "blt750e8fe2839714da"
-      ],
-      "permissions": [
-        "org.info:read"
-      ],
-      "domain": "organization",
-      "created_at": "2023-05-15T05:46:26.266Z",
-      "updated_at": "2026-03-12T12:35:36.623Z"
-    },
-    {
-      "uid": "bltb8a7ba0eb93838aa",
-      "name": "admin",
-      "description": "Admin role has full access to org admin related features",
-      "org_uid": "blt8d282118e2094bb8",
-      "owner_uid": "bltc11e668e0295477f",
-      "admin": true,
-      "default": true,
-      "users": [
-        "blt77cdb6f518e1940a",
-        "blt79e6de1c5230a991",
-        "blt484b7e4e3d1b7f76",
-        "blte9d0c9dd3a3677cd",
-        "blted7d8480391338f9",
-        "blt4c60a7a861d77460",
-        "blta03400731c5074a3",
-        "blt26d1b9acb52848e6",
-        "blt4dcb0345fae4731c",
-        "blt818cdd837f0ef17f",
-        "blta4bbe422a5a3be0c",
-        "blt5ffa2ada42ff6c6f",
-        "blt7308c3a62931255f",
-        "bltfd99a11f4cc6a299",
-        "blt8e9b3bbef2524228",
-        "blt1930fc55e5669df9"
-      ],
-      "permissions": [
-        "org.info:read",
-        "org.analytics:read",
-        "org.stacks:read",
-        "org.users:read",
-        "org.users:write",
-        "org.users:delete",
-        "org.users:unlock",
-        "org.roles:read",
-        "org.roles:write",
-        "org.roles:delete",
-        "org.scim:read",
-        "org.scim:write",
-        "org.bulk_task_queue:read",
-        "org.bulk_task_queue:write",
-        "org.teams:read",
-        "org.teams:write",
-        "org.teams:delete",
-        "org.security_config:read",
-        "org.security_config:write",
-        "org.webhooks_config:read",
-        "org.webhooks_config:write",
-        "org.audit_logs:read",
-        "am.spaces:create",
-        "am.fields:read",
-        "am.fields:create",
-        "am.fields:edit",
-        "am.fields:delete",
-        "am.asset_types:read",
-        "am.asset_types:create",
-        "am.asset_types:edit",
-        "am.asset_types:delete",
-        "am.users:read",
-        "am.users:create",
-        "am.users:edit",
-        "am.users:delete",
-        "am.roles:read",
-        "am.roles:create",
-        "am.roles:edit",
-        "am.roles:delete",
-        "am.languages:create",
-        "am.languages:read",
-        "am.languages:edit",
-        "am.languages:delete"
-      ],
-      "domain": "organization",
-      "created_at": "2023-05-15T05:46:26.266Z",
-      "updated_at": "2026-03-12T12:35:36.623Z"
-    }
-  ]
-}
-
-
-
-
IsNotNull(roles)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "uid": "blt802c2cf444969bc3",
-    "name": "member",
-    "description": "Member role has read-only access to organization info",
-    "org_uid": "blt8d282118e2094bb8",
-    "owner_uid": "bltc11e668e0295477f",
-    "admin": false,
-    "default": true,
-    "users": [
-      "blt020de9168aaf378c",
-      "bltcd78b4313f5c14e9",
-      "blta4135beff83a5bd8",
-      "blt1fc241d9e7735ce5",
-      "blt18ff18daa1b288557ec8525d",
-      "blt9b9f5b60e4d0888f",
-      "bltcd145d6b20c55b33",
-      "blt8213bc6706786a3f",
-      "blt18d6a94bde0f8f1a",
-      "blt287ee2fb1289e5c5",
-      "blt286cb4a779238da5",
-      "blt8089bb1103a58c96",
-      "bltd05849bf58e89a89",
-      "bltdc6a4666c3bd956d",
-      "blt5343a15e88b3afab",
-      "bltcfdd4b7f0f6d14be",
-      "blt750e8fe2839714da"
-    ],
-    "permissions": [
-      "org.info:read"
-    ],
-    "domain": "organization",
-    "created_at": "2023-05-15T05:46:26.266Z",
-    "updated_at": "2026-03-12T12:35:36.623Z"
-  },
-  {
-    "uid": "bltb8a7ba0eb93838aa",
-    "name": "admin",
-    "description": "Admin role has full access to org admin related features",
-    "org_uid": "blt8d282118e2094bb8",
-    "owner_uid": "bltc11e668e0295477f",
-    "admin": true,
-    "default": true,
-    "users": [
-      "blt77cdb6f518e1940a",
-      "blt79e6de1c5230a991",
-      "blt484b7e4e3d1b7f76",
-      "blte9d0c9dd3a3677cd",
-      "blted7d8480391338f9",
-      "blt4c60a7a861d77460",
-      "blta03400731c5074a3",
-      "blt26d1b9acb52848e6",
-      "blt4dcb0345fae4731c",
-      "blt818cdd837f0ef17f",
-      "blta4bbe422a5a3be0c",
-      "blt5ffa2ada42ff6c6f",
-      "blt7308c3a62931255f",
-      "bltfd99a11f4cc6a299",
-      "blt8e9b3bbef2524228",
-      "blt1930fc55e5669df9"
-    ],
-    "permissions": [
-      "org.info:read",
-      "org.analytics:read",
-      "org.stacks:read",
-      "org.users:read",
-      "org.users:write",
-      "org.users:delete",
-      "org.users:unlock",
-      "org.roles:read",
-      "org.roles:write",
-      "org.roles:delete",
-      "org.scim:read",
-      "org.scim:write",
-      "org.bulk_task_queue:read",
-      "org.bulk_task_queue:write",
-      "org.teams:read",
-      "org.teams:write",
-      "org.teams:delete",
-      "org.security_config:read",
-      "org.security_config:write",
-      "org.webhooks_config:read",
-      "org.webhooks_config:write",
-      "org.audit_logs:read",
-      "am.spaces:create",
-      "am.fields:read",
-      "am.fields:create",
-      "am.fields:edit",
-      "am.fields:delete",
-      "am.asset_types:read",
-      "am.asset_types:create",
-      "am.asset_types:edit",
-      "am.asset_types:delete",
-      "am.users:read",
-      "am.users:create",
-      "am.users:edit",
-      "am.users:delete",
-      "am.roles:read",
-      "am.roles:create",
-      "am.roles:edit",
-      "am.roles:delete",
-      "am.languages:create",
-      "am.languages:read",
-      "am.languages:edit",
-      "am.languages:delete"
-    ],
-    "domain": "organization",
-    "created_at": "2023-05-15T05:46:26.266Z",
-    "updated_at": "2026-03-12T12:35:36.623Z"
-  }
-]
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/roles
-
Request Headers
authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/roles' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:30 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 13ms
-X-Request-ID: 7ec63e15-2f75-4565-8f78-13bb1c90985c
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "roles": [
-    {
-      "uid": "blt802c2cf444969bc3",
-      "name": "member",
-      "description": "Member role has read-only access to organization info",
-      "org_uid": "blt8d282118e2094bb8",
-      "owner_uid": "bltc11e668e0295477f",
-      "admin": false,
-      "default": true,
-      "users": [
-        "blt020de9168aaf378c",
-        "bltcd78b4313f5c14e9",
-        "blta4135beff83a5bd8",
-        "blt1fc241d9e7735ce5",
-        "blt18ff18daa1b288557ec8525d",
-        "blt9b9f5b60e4d0888f",
-        "bltcd145d6b20c55b33",
-        "blt8213bc6706786a3f",
-        "blt18d6a94bde0f8f1a",
-        "blt287ee2fb1289e5c5",
-        "blt286cb4a779238da5",
-        "blt8089bb1103a58c96",
-        "bltd05849bf58e89a89",
-        "bltdc6a4666c3bd956d",
-        "blt5343a15e88b3afab",
-        "bltcfdd4b7f0f6d14be",
-        "blt750e8fe2839714da"
-      ],
-      "permissions": [
-        "org.info:read"
-      ],
-      "domain": "organization",
-      "created_at": "2023-05-15T05:46:26.266Z",
-      "updated_at": "2026-03-12T12:35:36.623Z"
-    },
-    {
-      "uid": "bltb8a7ba0eb93838aa",
-      "name": "admin",
-      "description": "Admin role has full access to org admin related features",
-      "org_uid": "blt8d282118e2094bb8",
-      "owner_uid": "bltc11e668e0295477f",
-      "admin": true,
-      "default": true,
-      "users": [
-        "blt77cdb6f518e1940a",
-        "blt79e6de1c5230a991",
-        "blt484b7e4e3d1b7f76",
-        "blte9d0c9dd3a3677cd",
-        "blted7d8480391338f9",
-        "blt4c60a7a861d77460",
-        "blta03400731c5074a3",
-        "blt26d1b9acb52848e6",
-        "blt4dcb0345fae4731c",
-        "blt818cdd837f0ef17f",
-        "blta4bbe422a5a3be0c",
-        "blt5ffa2ada42ff6c6f",
-        "blt7308c3a62931255f",
-        "bltfd99a11f4cc6a299",
-        "blt8e9b3bbef2524228",
-        "blt1930fc55e5669df9"
-      ],
-      "permissions": [
-        "org.info:read",
-        "org.analytics:read",
-        "org.stacks:read",
-        "org.users:read",
-        "org.users:write",
-        "org.users:delete",
-        "org.users:unlock",
-        "org.roles:read",
-        "org.roles:write",
-        "org.roles:delete",
-        "org.scim:read",
-        "org.scim:write",
-        "org.bulk_task_queue:read",
-        "org.bulk_task_queue:write",
-        "org.teams:read",
-        "org.teams:write",
-        "org.teams:delete",
-        "org.security_config:read",
-        "org.security_config:write",
-        "org.webhooks_config:read",
-        "org.webhooks_config:write",
-        "org.audit_logs:read",
-        "am.spaces:create",
-        "am.fields:read",
-        "am.fields:create",
-        "am.fields:edit",
-        "am.fields:delete",
-        "am.asset_types:read",
-        "am.asset_types:create",
-        "am.asset_types:edit",
-        "am.asset_types:delete",
-        "am.users:read",
-        "am.users:create",
-        "am.users:edit",
-        "am.users:delete",
-        "am.roles:read",
-        "am.roles:create",
-        "am.roles:edit",
-        "am.roles:delete",
-        "am.languages:
-
- Test Context - - - - -
TestScenarioGetOrganizationRolesAsync
-
Passed0.30s
-
✅ Test006_Should_Return_Organization_Roles
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "roles": [
-    {
-      "uid": "blt802c2cf444969bc3",
-      "name": "member",
-      "description": "Member role has read-only access to organization info",
-      "org_uid": "blt8d282118e2094bb8",
-      "owner_uid": "bltc11e668e0295477f",
-      "admin": false,
-      "default": true,
-      "users": [
-        "blt020de9168aaf378c",
-        "bltcd78b4313f5c14e9",
-        "blta4135beff83a5bd8",
-        "blt1fc241d9e7735ce5",
-        "blt18ff18daa1b288557ec8525d",
-        "blt9b9f5b60e4d0888f",
-        "bltcd145d6b20c55b33",
-        "blt8213bc6706786a3f",
-        "blt18d6a94bde0f8f1a",
-        "blt287ee2fb1289e5c5",
-        "blt286cb4a779238da5",
-        "blt8089bb1103a58c96",
-        "bltd05849bf58e89a89",
-        "bltdc6a4666c3bd956d",
-        "blt5343a15e88b3afab",
-        "bltcfdd4b7f0f6d14be",
-        "blt750e8fe2839714da"
-      ],
-      "permissions": [
-        "org.info:read"
-      ],
-      "domain": "organization",
-      "created_at": "2023-05-15T05:46:26.266Z",
-      "updated_at": "2026-03-12T12:35:36.623Z"
-    },
-    {
-      "uid": "bltb8a7ba0eb93838aa",
-      "name": "admin",
-      "description": "Admin role has full access to org admin related features",
-      "org_uid": "blt8d282118e2094bb8",
-      "owner_uid": "bltc11e668e0295477f",
-      "admin": true,
-      "default": true,
-      "users": [
-        "blt77cdb6f518e1940a",
-        "blt79e6de1c5230a991",
-        "blt484b7e4e3d1b7f76",
-        "blte9d0c9dd3a3677cd",
-        "blted7d8480391338f9",
-        "blt4c60a7a861d77460",
-        "blta03400731c5074a3",
-        "blt26d1b9acb52848e6",
-        "blt4dcb0345fae4731c",
-        "blt818cdd837f0ef17f",
-        "blta4bbe422a5a3be0c",
-        "blt5ffa2ada42ff6c6f",
-        "blt7308c3a62931255f",
-        "bltfd99a11f4cc6a299",
-        "blt8e9b3bbef2524228",
-        "blt1930fc55e5669df9"
-      ],
-      "permissions": [
-        "org.info:read",
-        "org.analytics:read",
-        "org.stacks:read",
-        "org.users:read",
-        "org.users:write",
-        "org.users:delete",
-        "org.users:unlock",
-        "org.roles:read",
-        "org.roles:write",
-        "org.roles:delete",
-        "org.scim:read",
-        "org.scim:write",
-        "org.bulk_task_queue:read",
-        "org.bulk_task_queue:write",
-        "org.teams:read",
-        "org.teams:write",
-        "org.teams:delete",
-        "org.security_config:read",
-        "org.security_config:write",
-        "org.webhooks_config:read",
-        "org.webhooks_config:write",
-        "org.audit_logs:read",
-        "am.spaces:create",
-        "am.fields:read",
-        "am.fields:create",
-        "am.fields:edit",
-        "am.fields:delete",
-        "am.asset_types:read",
-        "am.asset_types:create",
-        "am.asset_types:edit",
-        "am.asset_types:delete",
-        "am.users:read",
-        "am.users:create",
-        "am.users:edit",
-        "am.users:delete",
-        "am.roles:read",
-        "am.roles:create",
-        "am.roles:edit",
-        "am.roles:delete",
-        "am.languages:create",
-        "am.languages:read",
-        "am.languages:edit",
-        "am.languages:delete"
-      ],
-      "domain": "organization",
-      "created_at": "2023-05-15T05:46:26.266Z",
-      "updated_at": "2026-03-12T12:35:36.623Z"
-    }
-  ]
-}
-
-
-
-
IsNotNull(roles)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "uid": "blt802c2cf444969bc3",
-    "name": "member",
-    "description": "Member role has read-only access to organization info",
-    "org_uid": "blt8d282118e2094bb8",
-    "owner_uid": "bltc11e668e0295477f",
-    "admin": false,
-    "default": true,
-    "users": [
-      "blt020de9168aaf378c",
-      "bltcd78b4313f5c14e9",
-      "blta4135beff83a5bd8",
-      "blt1fc241d9e7735ce5",
-      "blt18ff18daa1b288557ec8525d",
-      "blt9b9f5b60e4d0888f",
-      "bltcd145d6b20c55b33",
-      "blt8213bc6706786a3f",
-      "blt18d6a94bde0f8f1a",
-      "blt287ee2fb1289e5c5",
-      "blt286cb4a779238da5",
-      "blt8089bb1103a58c96",
-      "bltd05849bf58e89a89",
-      "bltdc6a4666c3bd956d",
-      "blt5343a15e88b3afab",
-      "bltcfdd4b7f0f6d14be",
-      "blt750e8fe2839714da"
-    ],
-    "permissions": [
-      "org.info:read"
-    ],
-    "domain": "organization",
-    "created_at": "2023-05-15T05:46:26.266Z",
-    "updated_at": "2026-03-12T12:35:36.623Z"
-  },
-  {
-    "uid": "bltb8a7ba0eb93838aa",
-    "name": "admin",
-    "description": "Admin role has full access to org admin related features",
-    "org_uid": "blt8d282118e2094bb8",
-    "owner_uid": "bltc11e668e0295477f",
-    "admin": true,
-    "default": true,
-    "users": [
-      "blt77cdb6f518e1940a",
-      "blt79e6de1c5230a991",
-      "blt484b7e4e3d1b7f76",
-      "blte9d0c9dd3a3677cd",
-      "blted7d8480391338f9",
-      "blt4c60a7a861d77460",
-      "blta03400731c5074a3",
-      "blt26d1b9acb52848e6",
-      "blt4dcb0345fae4731c",
-      "blt818cdd837f0ef17f",
-      "blta4bbe422a5a3be0c",
-      "blt5ffa2ada42ff6c6f",
-      "blt7308c3a62931255f",
-      "bltfd99a11f4cc6a299",
-      "blt8e9b3bbef2524228",
-      "blt1930fc55e5669df9"
-    ],
-    "permissions": [
-      "org.info:read",
-      "org.analytics:read",
-      "org.stacks:read",
-      "org.users:read",
-      "org.users:write",
-      "org.users:delete",
-      "org.users:unlock",
-      "org.roles:read",
-      "org.roles:write",
-      "org.roles:delete",
-      "org.scim:read",
-      "org.scim:write",
-      "org.bulk_task_queue:read",
-      "org.bulk_task_queue:write",
-      "org.teams:read",
-      "org.teams:write",
-      "org.teams:delete",
-      "org.security_config:read",
-      "org.security_config:write",
-      "org.webhooks_config:read",
-      "org.webhooks_config:write",
-      "org.audit_logs:read",
-      "am.spaces:create",
-      "am.fields:read",
-      "am.fields:create",
-      "am.fields:edit",
-      "am.fields:delete",
-      "am.asset_types:read",
-      "am.asset_types:create",
-      "am.asset_types:edit",
-      "am.asset_types:delete",
-      "am.users:read",
-      "am.users:create",
-      "am.users:edit",
-      "am.users:delete",
-      "am.roles:read",
-      "am.roles:create",
-      "am.roles:edit",
-      "am.roles:delete",
-      "am.languages:create",
-      "am.languages:read",
-      "am.languages:edit",
-      "am.languages:delete"
-    ],
-    "domain": "organization",
-    "created_at": "2023-05-15T05:46:26.266Z",
-    "updated_at": "2026-03-12T12:35:36.623Z"
-  }
-]
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/roles
-
Request Headers
authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/roles' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:30 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 11ms
-X-Request-ID: ed3a0fa9-3428-40aa-a5d0-89983c2d4e8a
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "roles": [
-    {
-      "uid": "blt802c2cf444969bc3",
-      "name": "member",
-      "description": "Member role has read-only access to organization info",
-      "org_uid": "blt8d282118e2094bb8",
-      "owner_uid": "bltc11e668e0295477f",
-      "admin": false,
-      "default": true,
-      "users": [
-        "blt020de9168aaf378c",
-        "bltcd78b4313f5c14e9",
-        "blta4135beff83a5bd8",
-        "blt1fc241d9e7735ce5",
-        "blt18ff18daa1b288557ec8525d",
-        "blt9b9f5b60e4d0888f",
-        "bltcd145d6b20c55b33",
-        "blt8213bc6706786a3f",
-        "blt18d6a94bde0f8f1a",
-        "blt287ee2fb1289e5c5",
-        "blt286cb4a779238da5",
-        "blt8089bb1103a58c96",
-        "bltd05849bf58e89a89",
-        "bltdc6a4666c3bd956d",
-        "blt5343a15e88b3afab",
-        "bltcfdd4b7f0f6d14be",
-        "blt750e8fe2839714da"
-      ],
-      "permissions": [
-        "org.info:read"
-      ],
-      "domain": "organization",
-      "created_at": "2023-05-15T05:46:26.266Z",
-      "updated_at": "2026-03-12T12:35:36.623Z"
-    },
-    {
-      "uid": "bltb8a7ba0eb93838aa",
-      "name": "admin",
-      "description": "Admin role has full access to org admin related features",
-      "org_uid": "blt8d282118e2094bb8",
-      "owner_uid": "bltc11e668e0295477f",
-      "admin": true,
-      "default": true,
-      "users": [
-        "blt77cdb6f518e1940a",
-        "blt79e6de1c5230a991",
-        "blt484b7e4e3d1b7f76",
-        "blte9d0c9dd3a3677cd",
-        "blted7d8480391338f9",
-        "blt4c60a7a861d77460",
-        "blta03400731c5074a3",
-        "blt26d1b9acb52848e6",
-        "blt4dcb0345fae4731c",
-        "blt818cdd837f0ef17f",
-        "blta4bbe422a5a3be0c",
-        "blt5ffa2ada42ff6c6f",
-        "blt7308c3a62931255f",
-        "bltfd99a11f4cc6a299",
-        "blt8e9b3bbef2524228",
-        "blt1930fc55e5669df9"
-      ],
-      "permissions": [
-        "org.info:read",
-        "org.analytics:read",
-        "org.stacks:read",
-        "org.users:read",
-        "org.users:write",
-        "org.users:delete",
-        "org.users:unlock",
-        "org.roles:read",
-        "org.roles:write",
-        "org.roles:delete",
-        "org.scim:read",
-        "org.scim:write",
-        "org.bulk_task_queue:read",
-        "org.bulk_task_queue:write",
-        "org.teams:read",
-        "org.teams:write",
-        "org.teams:delete",
-        "org.security_config:read",
-        "org.security_config:write",
-        "org.webhooks_config:read",
-        "org.webhooks_config:write",
-        "org.audit_logs:read",
-        "am.spaces:create",
-        "am.fields:read",
-        "am.fields:create",
-        "am.fields:edit",
-        "am.fields:delete",
-        "am.asset_types:read",
-        "am.asset_types:create",
-        "am.asset_types:edit",
-        "am.asset_types:delete",
-        "am.users:read",
-        "am.users:create",
-        "am.users:edit",
-        "am.users:delete",
-        "am.roles:read",
-        "am.roles:create",
-        "am.roles:edit",
-        "am.roles:delete",
-        "am.languages:
-
- Test Context - - - - -
TestScenarioGetOrganizationRoles
-
Passed0.31s
-
✅ Test014_Should_Get_All_Invites
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "shares": [
-    {
-      "uid": "blt1acd92e2c66a8e59",
-      "email": "om.pawar@contentstack.com",
-      "user_uid": "blt1930fc55e5669df9",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "bltb8a7ba0eb93838aa"
-      ],
-      "invited_by": "blt4c60a7a861d77460",
-      "invited_at": "2026-03-12T12:11:46.187Z",
-      "status": "accepted",
-      "created_at": "2026-03-12T12:11:46.184Z",
-      "updated_at": "2026-03-12T12:12:37.899Z",
-      "first_name": "OM",
-      "last_name": "PAWAR"
-    },
-    {
-      "uid": "blt7e41729c886fc57d",
-      "email": "harshitha.d+prod@contentstack.com",
-      "user_uid": "blt8e9b3bbef2524228",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "bltb8a7ba0eb93838aa"
-      ],
-      "invited_by": "blt37ba39e03b130064",
-      "invited_at": "2026-02-06T11:58:49.035Z",
-      "status": "accepted",
-      "created_at": "2026-02-06T11:58:49.032Z",
-      "updated_at": "2026-02-06T12:03:17.425Z",
-      "first_name": "harshitha",
-      "last_name": "d+prod"
-    },
-    {
-      "uid": "bltbafda600eae98e3f",
-      "email": "cli-dev+oauth@contentstack.com",
-      "user_uid": "bltfd99a11f4cc6a299",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "bltb8a7ba0eb93838aa"
-      ],
-      "invited_by": "blt8e9b3bbef2524228",
-      "invited_at": "2026-01-21T20:09:28.254Z",
-      "status": "accepted",
-      "created_at": "2026-01-21T20:09:28.252Z",
-      "updated_at": "2026-01-21T20:09:28.471Z",
-      "first_name": "oauth",
-      "last_name": "CLI"
-    },
-    {
-      "uid": "blt6790771daee2ca6e",
-      "email": "cli-dev+jscma@contentstack.com",
-      "user_uid": "blt7308c3a62931255f",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "bltb8a7ba0eb93838aa"
-      ],
-      "invited_by": "blt484b7e4e3d1b7f76",
-      "invited_at": "2026-01-20T14:05:42.753Z",
-      "status": "accepted",
-      "created_at": "2026-01-20T14:05:42.75Z",
-      "updated_at": "2026-01-20T14:53:24.25Z",
-      "first_name": "JSCMA",
-      "last_name": "SDK"
-    },
-    {
-      "uid": "blt326c04bdd112ca65",
-      "email": "cli-dev+java-sdk@contentstack.com",
-      "user_uid": "blt5ffa2ada42ff6c6f",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "bltb8a7ba0eb93838aa"
-      ],
-      "invited_by": "blt818cdd837f0ef17f",
-      "invited_at": "2025-05-15T14:36:13.465Z",
-      "status": "accepted",
-      "created_at": "2025-05-15T14:36:13.463Z",
-      "updated_at": "2025-05-15T15:34:21.941Z",
-      "first_name": "Java-cli",
-      "last_name": "java"
-    },
-    {
-      "uid": "blt3d1adbfab4bcb265",
-      "email": "cli-dev+dotnet@contentstack.com",
-      "user_uid": "blta4bbe422a5a3be0c",
-      "message": "",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "bltb8a7ba0eb93838aa"
-      ],
-      "invited_by": "blt818cdd837f0ef17f",
-      "invited_at": "2025-04-10T13:03:22.951Z",
-      "status": "accepted",
-      "created_at": "2025-04-10T13:03:22.949Z",
-      "updated_at": "2025-04-10T13:03:48.789Z",
-      "first_name": "cli-dev+dotnet",
-      "last_name": "Dotnet"
-    },
-    {
-      "uid": "bltbf7c6e51a7379079",
-      "email": "reeshika.hosmani+prod@contentstack.com",
-      "user_uid": "bltcfdd4b7f0f6d14be",
-      "message": "",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "blt802c2cf444969bc3"
-      ],
-      "invited_by": "blte9d0c9dd3a3677cd",
-      "invited_at": "2025-04-10T05:05:10.588Z",
-      "status": "accepted",
-      "created_at": "2025-04-10T05:05:10.585Z",
-      "updated_at": "2025-04-10T05:05:10.585Z",
-      "first_name": "reeshika",
-      "last_name": "hosmani+prod"
-    },
-    {
-      "uid": "blt96e8f36be53136f0",
-      "email": "cli-dev@contentstack.com",
-      "user_uid": "blt818cdd837f0ef17f",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "bltb8a7ba0eb93838aa"
-      ],
-      "invited_by": "blt8e9b3bbef2524228",
-      "invited_at": "2025-04-01T13:15:10.469Z",
-      "status": "accepted",
-      "created_at": "2025-04-01T13:15:10.467Z",
-      "updated_at": "2025-04-01T13:18:40.649Z",
-      "first_name": "CLI",
-      "last_name": "DEV"
-    },
-    {
-      "uid": "blt2f4b6cbf40eebd8c",
-      "email": "harshitha.d@contentstack.com",
-      "user_uid": "blt37ba39e03b130064",
-      "message": "",
-      "org_uid": "blt8d282118e2094bb8",
-      "invited_by": "blt77cdb6f518e1940a",
-      "invited_at": "2023-07-18T12:17:59.778Z",
-      "status": "accepted",
-      "created_at": "2023-07-18T12:17:59.776Z",
-      "updated_at": "2025-03-17T06:07:47.278Z",
-      "is_owner": true,
-      "first_name": "Harshitha",
-      "last_name": "D"
-    },
-    {
-      "uid": "blt1a7e98ba71996a03",
-      "email": "cli-dev+jsmp@contentstack.com",
-      "user_uid": "blt5343a15e88b3afab",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "blt802c2cf444969bc3"
-      ],
-      "invited_by": "blt8e9b3bbef2524228",
-      "invited_at": "2025-02-26T09:02:28.523Z",
-      "status": "accepted",
-      "created_at": "2025-02-26T09:02:28.521Z",
-      "updated_at": "2025-02-26T09:02:28.773Z",
-      "first_name": "cli-dev+jsmp",
-      "last_name": "MP"
-    }
-  ]
-}
-
-
-
-
IsNotNull(shares)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "uid": "blt1acd92e2c66a8e59",
-    "email": "om.pawar@contentstack.com",
-    "user_uid": "blt1930fc55e5669df9",
-    "org_uid": "blt8d282118e2094bb8",
-    "org_roles": [
-      "bltb8a7ba0eb93838aa"
-    ],
-    "invited_by": "blt4c60a7a861d77460",
-    "invited_at": "2026-03-12T12:11:46.187Z",
-    "status": "accepted",
-    "created_at": "2026-03-12T12:11:46.184Z",
-    "updated_at": "2026-03-12T12:12:37.899Z",
-    "first_name": "OM",
-    "last_name": "PAWAR"
-  },
-  {
-    "uid": "blt7e41729c886fc57d",
-    "email": "harshitha.d+prod@contentstack.com",
-    "user_uid": "blt8e9b3bbef2524228",
-    "org_uid": "blt8d282118e2094bb8",
-    "org_roles": [
-      "bltb8a7ba0eb93838aa"
-    ],
-    "invited_by": "blt37ba39e03b130064",
-    "invited_at": "2026-02-06T11:58:49.035Z",
-    "status": "accepted",
-    "created_at": "2026-02-06T11:58:49.032Z",
-    "updated_at": "2026-02-06T12:03:17.425Z",
-    "first_name": "harshitha",
-    "last_name": "d+prod"
-  },
-  {
-    "uid": "bltbafda600eae98e3f",
-    "email": "cli-dev+oauth@contentstack.com",
-    "user_uid": "bltfd99a11f4cc6a299",
-    "org_uid": "blt8d282118e2094bb8",
-    "org_roles": [
-      "bltb8a7ba0eb93838aa"
-    ],
-    "invited_by": "blt8e9b3bbef2524228",
-    "invited_at": "2026-01-21T20:09:28.254Z",
-    "status": "accepted",
-    "created_at": "2026-01-21T20:09:28.252Z",
-    "updated_at": "2026-01-21T20:09:28.471Z",
-    "first_name": "oauth",
-    "last_name": "CLI"
-  },
-  {
-    "uid": "blt6790771daee2ca6e",
-    "email": "cli-dev+jscma@contentstack.com",
-    "user_uid": "blt7308c3a62931255f",
-    "org_uid": "blt8d282118e2094bb8",
-    "org_roles": [
-      "bltb8a7ba0eb93838aa"
-    ],
-    "invited_by": "blt484b7e4e3d1b7f76",
-    "invited_at": "2026-01-20T14:05:42.753Z",
-    "status": "accepted",
-    "created_at": "2026-01-20T14:05:42.75Z",
-    "updated_at": "2026-01-20T14:53:24.25Z",
-    "first_name": "JSCMA",
-    "last_name": "SDK"
-  },
-  {
-    "uid": "blt326c04bdd112ca65",
-    "email": "cli-dev+java-sdk@contentstack.com",
-    "user_uid": "blt5ffa2ada42ff6c6f",
-    "org_uid": "blt8d282118e2094bb8",
-    "org_roles": [
-      "bltb8a7ba0eb93838aa"
-    ],
-    "invited_by": "blt818cdd837f0ef17f",
-    "invited_at": "2025-05-15T14:36:13.465Z",
-    "status": "accepted",
-    "created_at": "2025-05-15T14:36:13.463Z",
-    "updated_at": "2025-05-15T15:34:21.941Z",
-    "first_name": "Java-cli",
-    "last_name": "java"
-  },
-  {
-    "uid": "blt3d1adbfab4bcb265",
-    "email": "cli-dev+dotnet@contentstack.com",
-    "user_uid": "blta4bbe422a5a3be0c",
-    "message": "",
-    "org_uid": "blt8d282118e2094bb8",
-    "org_roles": [
-      "bltb8a7ba0eb93838aa"
-    ],
-    "invited_by": "blt818cdd837f0ef17f",
-    "invited_at": "2025-04-10T13:03:22.951Z",
-    "status": "accepted",
-    "created_at": "2025-04-10T13:03:22.949Z",
-    "updated_at": "2025-04-10T13:03:48.789Z",
-    "first_name": "cli-dev+dotnet",
-    "last_name": "Dotnet"
-  },
-  {
-    "uid": "bltbf7c6e51a7379079",
-    "email": "reeshika.hosmani+prod@contentstack.com",
-    "user_uid": "bltcfdd4b7f0f6d14be",
-    "message": "",
-    "org_uid": "blt8d282118e2094bb8",
-    "org_roles": [
-      "blt802c2cf444969bc3"
-    ],
-    "invited_by": "blte9d0c9dd3a3677cd",
-    "invited_at": "2025-04-10T05:05:10.588Z",
-    "status": "accepted",
-    "created_at": "2025-04-10T05:05:10.585Z",
-    "updated_at": "2025-04-10T05:05:10.585Z",
-    "first_name": "reeshika",
-    "last_name": "hosmani+prod"
-  },
-  {
-    "uid": "blt96e8f36be53136f0",
-    "email": "cli-dev@contentstack.com",
-    "user_uid": "blt818cdd837f0ef17f",
-    "org_uid": "blt8d282118e2094bb8",
-    "org_roles": [
-      "bltb8a7ba0eb93838aa"
-    ],
-    "invited_by": "blt8e9b3bbef2524228",
-    "invited_at": "2025-04-01T13:15:10.469Z",
-    "status": "accepted",
-    "created_at": "2025-04-01T13:15:10.467Z",
-    "updated_at": "2025-04-01T13:18:40.649Z",
-    "first_name": "CLI",
-    "last_name": "DEV"
-  },
-  {
-    "uid": "blt2f4b6cbf40eebd8c",
-    "email": "harshitha.d@contentstack.com",
-    "user_uid": "blt37ba39e03b130064",
-    "message": "",
-    "org_uid": "blt8d282118e2094bb8",
-    "invited_by": "blt77cdb6f518e1940a",
-    "invited_at": "2023-07-18T12:17:59.778Z",
-    "status": "accepted",
-    "created_at": "2023-07-18T12:17:59.776Z",
-    "updated_at": "2025-03-17T06:07:47.278Z",
-    "is_owner": true,
-    "first_name": "Harshitha",
-    "last_name": "D"
-  },
-  {
-    "uid": "blt1a7e98ba71996a03",
-    "email": "cli-dev+jsmp@contentstack.com",
-    "user_uid": "blt5343a15e88b3afab",
-    "org_uid": "blt8d282118e2094bb8",
-    "org_roles": [
-      "blt802c2cf444969bc3"
-    ],
-    "invited_by": "blt8e9b3bbef2524228",
-    "invited_at": "2025-02-26T09:02:28.523Z",
-    "status": "accepted",
-    "created_at": "2025-02-26T09:02:28.521Z",
-    "updated_at": "2025-02-26T09:02:28.773Z",
-    "first_name": "cli-dev+jsmp",
-    "last_name": "MP"
-  }
-]
-
-
-
-
AreEqual(sharesType)
-
-
Expected:
Newtonsoft.Json.Linq.JArray
-
Actual:
Newtonsoft.Json.Linq.JArray
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share
-
Request Headers
authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:32 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 18ms
-X-Request-ID: 3a2aa882-d615-4240-a68a-13655020cc09
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{"shares":[{"uid":"blt1acd92e2c66a8e59","email":"om.pawar@contentstack.com","user_uid":"blt1930fc55e5669df9","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt4c60a7a861d77460","invited_at":"2026-03-12T12:11:46.187Z","status":"accepted","created_at":"2026-03-12T12:11:46.184Z","updated_at":"2026-03-12T12:12:37.899Z","first_name":"OM","last_name":"PAWAR"},{"uid":"blt7e41729c886fc57d","email":"harshitha.d+prod@contentstack.com","user_uid":"blt8e9b3bbef2524228","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt37ba39e03b130064","invited_at":"2026-02-06T11:58:49.035Z","status":"accepted","created_at":"2026-02-06T11:58:49.032Z","updated_at":"2026-02-06T12:03:17.425Z","first_name":"harshitha","last_name":"d+prod"},{"uid":"bltbafda600eae98e3f","email":"cli-dev+oauth@contentstack.com","user_uid":"bltfd99a11f4cc6a299","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt8e9b3bbef2524228","invited_at":"2026-01-21T20:09:28.254Z","status":"accepted","created_at":"2026-01-21T20:09:28.252Z","updated_at":"2026-01-21T20:09:28.471Z","first_name":"oauth","last_name":"CLI"},{"uid":"blt6790771daee2ca6e","email":"cli-dev+jscma@contentstack.com","user_uid":"blt7308c3a62931255f","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt484b7e4e3d1b7f76","invited_at":"2026-01-20T14:05:42.753Z","status":"accepted","created_at":"2026-01-20T14:05:42.750Z","updated_at":"2026-01-20T14:53:24.250Z","first_name":"JSCMA","last_name":"SDK"},{"uid":"blt326c04bdd112ca65","email":"cli-dev+java-sdk@contentstack.com","user_uid":"blt5ffa2ada42ff6c6f","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt818cdd837f0ef17f","invited_at":"2025-05-15T14:36:13.465Z","status":"accepted","created_at":"2025-05-15T14:36:13.463Z","updated_at":"2025-05-15T15:34:21.941Z","first_name":"Java-cli","last_name":"java"},{"uid":"blt3d1adbfab4bcb265","email":"cli-dev+dotnet@contentstack.com","user_uid":"blta4bbe422a5a3be0c","message":"","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt818cdd837f0ef17f","invited_at":"2025-04-10T13:03:22.951Z","status":"accepted","created_at":"2025-04-10T13:03:22.949Z","updated_at":"2025-04-10T13:03:48.789Z","first_name":"cli-dev+dotnet","last_name":"Dotnet"},{"uid":"bltbf7c6e51a7379079","email":"reeshika.hosmani+prod@contentstack.com","user_uid":"bltcfdd4b7f0f6d14be","message":"","org_uid":"blt8d282118e2094bb8","org_roles":["blt802c2cf444969bc3"],"invited_by":"blte9d0c9dd3a3677cd","invited_at":"2025-04-10T05:05:10.588Z","status":"accepted","created_at":"2025-04-10T05:05:10.585Z","updated_at":"2025-04-10T05:05:10.585Z","first_name":"reeshika","last_name":"hosmani+prod"},{"uid":"blt96e8f36be53136f0","email":"cli-dev@contentstack.com","user_uid":"blt818cdd837f0ef17f","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt8e9b3bbef2524228","invited_at":"202
-
- Test Context - - - - -
TestScenarioGetAllInvites
-
Passed0.31s
-
✅ Test010_Should_Resend_Invite
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "notice": "The invitation has been resent successfully."
-}
-
-
-
-
AreEqual(notice)
-
-
Expected:
The invitation has been resent successfully.
-
Actual:
The invitation has been resent successfully.
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share/bltbd1e5e658d86592f/resend_invitation
-
Request Headers
authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share/bltbd1e5e658d86592f/resend_invitation' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:31 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 24ms
-X-Request-ID: 427b0fcc-4e39-44f1-a4b7-809723e63b5c
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "The invitation has been resent successfully."
-}
-
- Test Context - - - - -
TestScenarioResendInvite
-
Passed0.30s
-
✅ Test017_Should_Get_All_Stacks_Async
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "stacks": [
-    {
-      "created_at": "2026-03-12T12:35:38.558Z",
-      "updated_at": "2026-03-12T12:35:41.085Z",
-      "uid": "bltf6dedbb54111facb",
-      "name": "DotNet Management SDK Stack",
-      "api_key": "blt72045e49dc1aa085",
-      "owner_uid": "blt1930fc55e5669df9",
-      "owner": {
-        "email": "om.pawar@contentstack.com",
-        "first_name": "OM",
-        "last_name": "PAWAR",
-        "settings": {
-          "preferences": {
-            "global": [],
-            "stack": []
-          }
-        }
-      },
-      "users": {
-        "count": 1
-      }
-    },
-    {
-      "created_at": "2026-03-12T12:16:53.714Z",
-      "updated_at": "2026-03-12T12:16:56.378Z",
-      "uid": "blta77d4b24cace786a",
-      "name": "DotNet Management SDK Stack",
-      "api_key": "bltd87839f91f3e1448",
-      "owner_uid": "blt1930fc55e5669df9",
-      "owner": {
-        "email": "om.pawar@contentstack.com",
-        "first_name": "OM",
-        "last_name": "PAWAR",
-        "settings": {
-          "preferences": {
-            "global": [],
-            "stack": []
-          }
-        }
-      },
-      "users": {
-        "count": 1
-      }
-    },
-    {
-      "created_at": "2026-03-06T15:18:49.878Z",
-      "updated_at": "2026-03-12T12:11:46.324Z",
-      "uid": "bltae6bacc186e4819f",
-      "name": "Copy of Dotnet CDA SDK internal test",
-      "api_key": "blta23060d14351eb10",
-      "owner_uid": "blt4c60a7a861d77460",
-      "owner": {
-        "email": "raj.pandey@contentstack.com",
-        "first_name": "Raj",
-        "last_name": "Pandey",
-        "settings": {
-          "preferences": {
-            "global": [],
-            "stack": []
-          }
-        }
-      },
-      "users": {
-        "count": 2
-      }
-    },
-    {
-      "created_at": "2026-03-12T11:48:59.868Z",
-      "updated_at": "2026-03-12T11:48:59.954Z",
-      "uid": "bltaa287bfd5509a809",
-      "name": "test1234",
-      "api_key": "bltf2d85a7d423603d0",
-      "owner_uid": "blt8e9b3bbef2524228",
-      "owner": {
-        "email": "harshitha.d+prod@contentstack.com",
-        "first_name": "harshitha",
-        "last_name": "d+prod",
-        "settings": {
-          "preferences": {
-            "global": [],
-            "stack": []
-          }
-        }
-      },
-      "users": {
-        "count": 1
-      }
-    },
-    {
-      "created_at": "2026-03-12T08:47:15.111Z",
-      "updated_at": "2026-03-12T09:31:41.353Z",
-      "uid": "bltff87f359ab582635",
-      "name": "DotNet Management SDK Stack",
-      "api_key": "blt1747bf073521a923",
-      "owner_uid": "blt37ba39e03b130064",
-      "owner": {
-        "email": "harshitha.d@contentstack.com",
-        "first_name": "Harshitha",
-        "last_name": "D",
-        "settings": {
-          "preferences": {
-            "global": [],
-            "stack": []
-          }
-        }
-      },
-      "users": {
-        "count": 1
-      }
-    },
-    {
-      "created_at": "2026-03-07T05:55:02.673Z",
-      "updated_at": "2026-03-12T09:31:41.353Z",
-      "uid": "blt8a6cbbbddc7de158",
-      "name": "Dotnet CDA SDK internal test 2",
-      "api_key": "blteda07f97e97feb91",
-      "owner_uid": "blt4c60a7a861d77460",
-      "owner": {
-        "email": "raj.pandey@contentstack.com",
-        "first_name": "Raj",
-        "last_name": "Pandey",
-        "settings": {
-          "preferences": {
-            "global": [],
-            "stack": []
-          }
-        }
-      },
-      "users": {
-        "count": 1
-      }
-    },
-    {
-      "created_at": "2026-03-09T07:22:32.565Z",
-      "updated_at": "2026-03-09T07:22:32.69Z",
-      "uid": "bltdfd4504f05d7ac16",
-      "name": "test123",
-      "api_key": "blt1484e456a1dbab9e",
-      "owner_uid": "blt8e9b3bbef2524228",
-      "owner": {
-        "email": "harshitha.d+prod@contentstack.com",
-        "first_name": "harshitha",
-        "last_name": "d+prod",
-        "settings": {
-          "preferences": {
-            "global": [],
-            "stack": []
-          }
-        }
-      },
-      "users": {
-        "count": 1
-      }
-    },
-    {
-      "created_at": "2026-03-06T13:21:38.649Z",
-      "updated_at": "2026-03-06T13:21:38.766Z",
-      "uid": "blt542fdc5a9cdc623c",
-      "name": "teststack1",
-      "api_key": "blt0ea1eb6ab5aa79ae",
-      "owner_uid": "blt8e9b3bbef2524228",
-      "owner": {
-        "email": "harshitha.d+prod@contentstack.com",
-        "first_name": "harshitha",
-        "last_name": "d+prod",
-        "settings": {
-          "preferences": {
-            "global": [],
-            "stack": []
-          }
-        }
-      },
-      "users": {
-        "count": 1
-      }
-    },
-    {
-      "created_at": "2026-02-12T08:10:52.85Z",
-      "updated_at": "2026-03-02T12:31:02.856Z",
-      "uid": "blt0181d077e890a38e",
-      "name": "Import Data",
-      "api_key": "bltd967f12af772f0e2",
-      "owner_uid": "blt37ba39e03b130064",
-      "owner": {
-        "email": "harshitha.d@contentstack.com",
-        "first_name": "Harshitha",
-        "last_name": "D",
-        "settings": {
-          "preferences": {
-            "global": [],
-            "stack": []
-          }
-        }
-      },
-      "users": {
-        "count": 1
-      }
-    },
-    {
-      "created_at": "2026-02-12T09:26:38.038Z",
-      "updated_at": "2026-03-02T12:31:02.856Z",
-      "uid": "blt81d6f3d742755c86",
-      "name": "EmptyStack",
-      "api_key": "blta7a69f15c58b01ac",
-      "owner_uid": "blt37ba39e03b130064",
-      "owner": {
-        "email": "harshitha.d@contentstack.com",
-        "first_name": "Harshitha",
-        "last_name": "D",
-        "settings": {
-          "preferences": {
-            "global": [],
-            "stack": []
-          }
-        }
-      },
-      "users": {
-        "count": 1
-      }
-    }
-  ]
-}
-
-
-
-
IsNotNull(stacks)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "created_at": "2026-03-12T12:35:38.558Z",
-    "updated_at": "2026-03-12T12:35:41.085Z",
-    "uid": "bltf6dedbb54111facb",
-    "name": "DotNet Management SDK Stack",
-    "api_key": "blt72045e49dc1aa085",
-    "owner_uid": "blt1930fc55e5669df9",
-    "owner": {
-      "email": "om.pawar@contentstack.com",
-      "first_name": "OM",
-      "last_name": "PAWAR",
-      "settings": {
-        "preferences": {
-          "global": [],
-          "stack": []
-        }
-      }
-    },
-    "users": {
-      "count": 1
-    }
-  },
-  {
-    "created_at": "2026-03-12T12:16:53.714Z",
-    "updated_at": "2026-03-12T12:16:56.378Z",
-    "uid": "blta77d4b24cace786a",
-    "name": "DotNet Management SDK Stack",
-    "api_key": "bltd87839f91f3e1448",
-    "owner_uid": "blt1930fc55e5669df9",
-    "owner": {
-      "email": "om.pawar@contentstack.com",
-      "first_name": "OM",
-      "last_name": "PAWAR",
-      "settings": {
-        "preferences": {
-          "global": [],
-          "stack": []
-        }
-      }
-    },
-    "users": {
-      "count": 1
-    }
-  },
-  {
-    "created_at": "2026-03-06T15:18:49.878Z",
-    "updated_at": "2026-03-12T12:11:46.324Z",
-    "uid": "bltae6bacc186e4819f",
-    "name": "Copy of Dotnet CDA SDK internal test",
-    "api_key": "blta23060d14351eb10",
-    "owner_uid": "blt4c60a7a861d77460",
-    "owner": {
-      "email": "raj.pandey@contentstack.com",
-      "first_name": "Raj",
-      "last_name": "Pandey",
-      "settings": {
-        "preferences": {
-          "global": [],
-          "stack": []
-        }
-      }
-    },
-    "users": {
-      "count": 2
-    }
-  },
-  {
-    "created_at": "2026-03-12T11:48:59.868Z",
-    "updated_at": "2026-03-12T11:48:59.954Z",
-    "uid": "bltaa287bfd5509a809",
-    "name": "test1234",
-    "api_key": "bltf2d85a7d423603d0",
-    "owner_uid": "blt8e9b3bbef2524228",
-    "owner": {
-      "email": "harshitha.d+prod@contentstack.com",
-      "first_name": "harshitha",
-      "last_name": "d+prod",
-      "settings": {
-        "preferences": {
-          "global": [],
-          "stack": []
-        }
-      }
-    },
-    "users": {
-      "count": 1
-    }
-  },
-  {
-    "created_at": "2026-03-12T08:47:15.111Z",
-    "updated_at": "2026-03-12T09:31:41.353Z",
-    "uid": "bltff87f359ab582635",
-    "name": "DotNet Management SDK Stack",
-    "api_key": "blt1747bf073521a923",
-    "owner_uid": "blt37ba39e03b130064",
-    "owner": {
-      "email": "harshitha.d@contentstack.com",
-      "first_name": "Harshitha",
-      "last_name": "D",
-      "settings": {
-        "preferences": {
-          "global": [],
-          "stack": []
-        }
-      }
-    },
-    "users": {
-      "count": 1
-    }
-  },
-  {
-    "created_at": "2026-03-07T05:55:02.673Z",
-    "updated_at": "2026-03-12T09:31:41.353Z",
-    "uid": "blt8a6cbbbddc7de158",
-    "name": "Dotnet CDA SDK internal test 2",
-    "api_key": "blteda07f97e97feb91",
-    "owner_uid": "blt4c60a7a861d77460",
-    "owner": {
-      "email": "raj.pandey@contentstack.com",
-      "first_name": "Raj",
-      "last_name": "Pandey",
-      "settings": {
-        "preferences": {
-          "global": [],
-          "stack": []
-        }
-      }
-    },
-    "users": {
-      "count": 1
-    }
-  },
-  {
-    "created_at": "2026-03-09T07:22:32.565Z",
-    "updated_at": "2026-03-09T07:22:32.69Z",
-    "uid": "bltdfd4504f05d7ac16",
-    "name": "test123",
-    "api_key": "blt1484e456a1dbab9e",
-    "owner_uid": "blt8e9b3bbef2524228",
-    "owner": {
-      "email": "harshitha.d+prod@contentstack.com",
-      "first_name": "harshitha",
-      "last_name": "d+prod",
-      "settings": {
-        "preferences": {
-          "global": [],
-          "stack": []
-        }
-      }
-    },
-    "users": {
-      "count": 1
-    }
-  },
-  {
-    "created_at": "2026-03-06T13:21:38.649Z",
-    "updated_at": "2026-03-06T13:21:38.766Z",
-    "uid": "blt542fdc5a9cdc623c",
-    "name": "teststack1",
-    "api_key": "blt0ea1eb6ab5aa79ae",
-    "owner_uid": "blt8e9b3bbef2524228",
-    "owner": {
-      "email": "harshitha.d+prod@contentstack.com",
-      "first_name": "harshitha",
-      "last_name": "d+prod",
-      "settings": {
-        "preferences": {
-          "global": [],
-          "stack": []
-        }
-      }
-    },
-    "users": {
-      "count": 1
-    }
-  },
-  {
-    "created_at": "2026-02-12T08:10:52.85Z",
-    "updated_at": "2026-03-02T12:31:02.856Z",
-    "uid": "blt0181d077e890a38e",
-    "name": "Import Data",
-    "api_key": "bltd967f12af772f0e2",
-    "owner_uid": "blt37ba39e03b130064",
-    "owner": {
-      "email": "harshitha.d@contentstack.com",
-      "first_name": "Harshitha",
-      "last_name": "D",
-      "settings": {
-        "preferences": {
-          "global": [],
-          "stack": []
-        }
-      }
-    },
-    "users": {
-      "count": 1
-    }
-  },
-  {
-    "created_at": "2026-02-12T09:26:38.038Z",
-    "updated_at": "2026-03-02T12:31:02.856Z",
-    "uid": "blt81d6f3d742755c86",
-    "name": "EmptyStack",
-    "api_key": "blta7a69f15c58b01ac",
-    "owner_uid": "blt37ba39e03b130064",
-    "owner": {
-      "email": "harshitha.d@contentstack.com",
-      "first_name": "Harshitha",
-      "last_name": "D",
-      "settings": {
-        "preferences": {
-          "global": [],
-          "stack": []
-        }
-      }
-    },
-    "users": {
-      "count": 1
-    }
-  }
-]
-
-
-
-
AreEqual(stacksType)
-
-
Expected:
Newtonsoft.Json.Linq.JArray
-
Actual:
Newtonsoft.Json.Linq.JArray
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/stacks
-
Request Headers
authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/stacks' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:33 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 18ms
-X-Request-ID: 4825a9a1-68d2-462b-9d7b-3a08cfcc3e67
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{"stacks":[{"created_at":"2026-03-12T12:35:38.558Z","updated_at":"2026-03-12T12:35:41.085Z","uid":"bltf6dedbb54111facb","name":"DotNet Management SDK Stack","api_key":"blt72045e49dc1aa085","owner_uid":"blt1930fc55e5669df9","owner":{"email":"om.pawar@contentstack.com","first_name":"OM","last_name":"PAWAR","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-12T12:16:53.714Z","updated_at":"2026-03-12T12:16:56.378Z","uid":"blta77d4b24cace786a","name":"DotNet Management SDK Stack","api_key":"bltd87839f91f3e1448","owner_uid":"blt1930fc55e5669df9","owner":{"email":"om.pawar@contentstack.com","first_name":"OM","last_name":"PAWAR","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-06T15:18:49.878Z","updated_at":"2026-03-12T12:11:46.324Z","uid":"bltae6bacc186e4819f","name":"Copy of Dotnet CDA SDK internal test","api_key":"blta23060d14351eb10","owner_uid":"blt4c60a7a861d77460","owner":{"email":"raj.pandey@contentstack.com","first_name":"Raj","last_name":"Pandey","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":2}},{"created_at":"2026-03-12T11:48:59.868Z","updated_at":"2026-03-12T11:48:59.954Z","uid":"bltaa287bfd5509a809","name":"test1234","api_key":"bltf2d85a7d423603d0","owner_uid":"blt8e9b3bbef2524228","owner":{"email":"harshitha.d+prod@contentstack.com","first_name":"harshitha","last_name":"d+prod","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-12T08:47:15.111Z","updated_at":"2026-03-12T09:31:41.353Z","uid":"bltff87f359ab582635","name":"DotNet Management SDK Stack","api_key":"blt1747bf073521a923","owner_uid":"blt37ba39e03b130064","owner":{"email":"harshitha.d@contentstack.com","first_name":"Harshitha","last_name":"D","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-07T05:55:02.673Z","updated_at":"2026-03-12T09:31:41.353Z","uid":"blt8a6cbbbddc7de158","name":"Dotnet CDA SDK internal test 2","api_key":"blteda07f97e97feb91","owner_uid":"blt4c60a7a861d77460","owner":{"email":"raj.pandey@contentstack.com","first_name":"Raj","last_name":"Pandey","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-09T07:22:32.565Z","updated_at":"2026-03-09T07:22:32.690Z","uid":"bltdfd4504f05d7ac16","name":"test123","api_key":"blt1484e456a1dbab9e","owner_uid":"blt8e9b3bbef2524228","owner":{"email":"harshitha.d+prod@contentstack.com","first_name":"harshitha","last_name":"d+prod","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-06T13:21:38.649Z","updated_at":"2026-03-06T13:21:38.766Z","uid":"blt542fdc5a9cdc623c","name":"teststack1","api_key":"blt0ea1eb6ab5aa79ae","owner_uid":"blt8e9b3bbef2524228","owner":{"email":"harshitha.d+prod@contentstack.com","first_name":"harshitha","last_name":"d+prod","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026
-
- Test Context - - - - -
TestScenarioGetAllStacksAsync
-
Passed0.30s
-
✅ Test016_Should_Get_All_Stacks
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "stacks": [
-    {
-      "created_at": "2026-03-12T12:35:38.558Z",
-      "updated_at": "2026-03-12T12:35:41.085Z",
-      "uid": "bltf6dedbb54111facb",
-      "name": "DotNet Management SDK Stack",
-      "api_key": "blt72045e49dc1aa085",
-      "owner_uid": "blt1930fc55e5669df9",
-      "owner": {
-        "email": "om.pawar@contentstack.com",
-        "first_name": "OM",
-        "last_name": "PAWAR",
-        "settings": {
-          "preferences": {
-            "global": [],
-            "stack": []
-          }
-        }
-      },
-      "users": {
-        "count": 1
-      }
-    },
-    {
-      "created_at": "2026-03-12T12:16:53.714Z",
-      "updated_at": "2026-03-12T12:16:56.378Z",
-      "uid": "blta77d4b24cace786a",
-      "name": "DotNet Management SDK Stack",
-      "api_key": "bltd87839f91f3e1448",
-      "owner_uid": "blt1930fc55e5669df9",
-      "owner": {
-        "email": "om.pawar@contentstack.com",
-        "first_name": "OM",
-        "last_name": "PAWAR",
-        "settings": {
-          "preferences": {
-            "global": [],
-            "stack": []
-          }
-        }
-      },
-      "users": {
-        "count": 1
-      }
-    },
-    {
-      "created_at": "2026-03-06T15:18:49.878Z",
-      "updated_at": "2026-03-12T12:11:46.324Z",
-      "uid": "bltae6bacc186e4819f",
-      "name": "Copy of Dotnet CDA SDK internal test",
-      "api_key": "blta23060d14351eb10",
-      "owner_uid": "blt4c60a7a861d77460",
-      "owner": {
-        "email": "raj.pandey@contentstack.com",
-        "first_name": "Raj",
-        "last_name": "Pandey",
-        "settings": {
-          "preferences": {
-            "global": [],
-            "stack": []
-          }
-        }
-      },
-      "users": {
-        "count": 2
-      }
-    },
-    {
-      "created_at": "2026-03-12T11:48:59.868Z",
-      "updated_at": "2026-03-12T11:48:59.954Z",
-      "uid": "bltaa287bfd5509a809",
-      "name": "test1234",
-      "api_key": "bltf2d85a7d423603d0",
-      "owner_uid": "blt8e9b3bbef2524228",
-      "owner": {
-        "email": "harshitha.d+prod@contentstack.com",
-        "first_name": "harshitha",
-        "last_name": "d+prod",
-        "settings": {
-          "preferences": {
-            "global": [],
-            "stack": []
-          }
-        }
-      },
-      "users": {
-        "count": 1
-      }
-    },
-    {
-      "created_at": "2026-03-12T08:47:15.111Z",
-      "updated_at": "2026-03-12T09:31:41.353Z",
-      "uid": "bltff87f359ab582635",
-      "name": "DotNet Management SDK Stack",
-      "api_key": "blt1747bf073521a923",
-      "owner_uid": "blt37ba39e03b130064",
-      "owner": {
-        "email": "harshitha.d@contentstack.com",
-        "first_name": "Harshitha",
-        "last_name": "D",
-        "settings": {
-          "preferences": {
-            "global": [],
-            "stack": []
-          }
-        }
-      },
-      "users": {
-        "count": 1
-      }
-    },
-    {
-      "created_at": "2026-03-07T05:55:02.673Z",
-      "updated_at": "2026-03-12T09:31:41.353Z",
-      "uid": "blt8a6cbbbddc7de158",
-      "name": "Dotnet CDA SDK internal test 2",
-      "api_key": "blteda07f97e97feb91",
-      "owner_uid": "blt4c60a7a861d77460",
-      "owner": {
-        "email": "raj.pandey@contentstack.com",
-        "first_name": "Raj",
-        "last_name": "Pandey",
-        "settings": {
-          "preferences": {
-            "global": [],
-            "stack": []
-          }
-        }
-      },
-      "users": {
-        "count": 1
-      }
-    },
-    {
-      "created_at": "2026-03-09T07:22:32.565Z",
-      "updated_at": "2026-03-09T07:22:32.69Z",
-      "uid": "bltdfd4504f05d7ac16",
-      "name": "test123",
-      "api_key": "blt1484e456a1dbab9e",
-      "owner_uid": "blt8e9b3bbef2524228",
-      "owner": {
-        "email": "harshitha.d+prod@contentstack.com",
-        "first_name": "harshitha",
-        "last_name": "d+prod",
-        "settings": {
-          "preferences": {
-            "global": [],
-            "stack": []
-          }
-        }
-      },
-      "users": {
-        "count": 1
-      }
-    },
-    {
-      "created_at": "2026-03-06T13:21:38.649Z",
-      "updated_at": "2026-03-06T13:21:38.766Z",
-      "uid": "blt542fdc5a9cdc623c",
-      "name": "teststack1",
-      "api_key": "blt0ea1eb6ab5aa79ae",
-      "owner_uid": "blt8e9b3bbef2524228",
-      "owner": {
-        "email": "harshitha.d+prod@contentstack.com",
-        "first_name": "harshitha",
-        "last_name": "d+prod",
-        "settings": {
-          "preferences": {
-            "global": [],
-            "stack": []
-          }
-        }
-      },
-      "users": {
-        "count": 1
-      }
-    },
-    {
-      "created_at": "2026-02-12T08:10:52.85Z",
-      "updated_at": "2026-03-02T12:31:02.856Z",
-      "uid": "blt0181d077e890a38e",
-      "name": "Import Data",
-      "api_key": "bltd967f12af772f0e2",
-      "owner_uid": "blt37ba39e03b130064",
-      "owner": {
-        "email": "harshitha.d@contentstack.com",
-        "first_name": "Harshitha",
-        "last_name": "D",
-        "settings": {
-          "preferences": {
-            "global": [],
-            "stack": []
-          }
-        }
-      },
-      "users": {
-        "count": 1
-      }
-    },
-    {
-      "created_at": "2026-02-12T09:26:38.038Z",
-      "updated_at": "2026-03-02T12:31:02.856Z",
-      "uid": "blt81d6f3d742755c86",
-      "name": "EmptyStack",
-      "api_key": "blta7a69f15c58b01ac",
-      "owner_uid": "blt37ba39e03b130064",
-      "owner": {
-        "email": "harshitha.d@contentstack.com",
-        "first_name": "Harshitha",
-        "last_name": "D",
-        "settings": {
-          "preferences": {
-            "global": [],
-            "stack": []
-          }
-        }
-      },
-      "users": {
-        "count": 1
-      }
-    }
-  ]
-}
-
-
-
-
IsNotNull(stacks)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "created_at": "2026-03-12T12:35:38.558Z",
-    "updated_at": "2026-03-12T12:35:41.085Z",
-    "uid": "bltf6dedbb54111facb",
-    "name": "DotNet Management SDK Stack",
-    "api_key": "blt72045e49dc1aa085",
-    "owner_uid": "blt1930fc55e5669df9",
-    "owner": {
-      "email": "om.pawar@contentstack.com",
-      "first_name": "OM",
-      "last_name": "PAWAR",
-      "settings": {
-        "preferences": {
-          "global": [],
-          "stack": []
-        }
-      }
-    },
-    "users": {
-      "count": 1
-    }
-  },
-  {
-    "created_at": "2026-03-12T12:16:53.714Z",
-    "updated_at": "2026-03-12T12:16:56.378Z",
-    "uid": "blta77d4b24cace786a",
-    "name": "DotNet Management SDK Stack",
-    "api_key": "bltd87839f91f3e1448",
-    "owner_uid": "blt1930fc55e5669df9",
-    "owner": {
-      "email": "om.pawar@contentstack.com",
-      "first_name": "OM",
-      "last_name": "PAWAR",
-      "settings": {
-        "preferences": {
-          "global": [],
-          "stack": []
-        }
-      }
-    },
-    "users": {
-      "count": 1
-    }
-  },
-  {
-    "created_at": "2026-03-06T15:18:49.878Z",
-    "updated_at": "2026-03-12T12:11:46.324Z",
-    "uid": "bltae6bacc186e4819f",
-    "name": "Copy of Dotnet CDA SDK internal test",
-    "api_key": "blta23060d14351eb10",
-    "owner_uid": "blt4c60a7a861d77460",
-    "owner": {
-      "email": "raj.pandey@contentstack.com",
-      "first_name": "Raj",
-      "last_name": "Pandey",
-      "settings": {
-        "preferences": {
-          "global": [],
-          "stack": []
-        }
-      }
-    },
-    "users": {
-      "count": 2
-    }
-  },
-  {
-    "created_at": "2026-03-12T11:48:59.868Z",
-    "updated_at": "2026-03-12T11:48:59.954Z",
-    "uid": "bltaa287bfd5509a809",
-    "name": "test1234",
-    "api_key": "bltf2d85a7d423603d0",
-    "owner_uid": "blt8e9b3bbef2524228",
-    "owner": {
-      "email": "harshitha.d+prod@contentstack.com",
-      "first_name": "harshitha",
-      "last_name": "d+prod",
-      "settings": {
-        "preferences": {
-          "global": [],
-          "stack": []
-        }
-      }
-    },
-    "users": {
-      "count": 1
-    }
-  },
-  {
-    "created_at": "2026-03-12T08:47:15.111Z",
-    "updated_at": "2026-03-12T09:31:41.353Z",
-    "uid": "bltff87f359ab582635",
-    "name": "DotNet Management SDK Stack",
-    "api_key": "blt1747bf073521a923",
-    "owner_uid": "blt37ba39e03b130064",
-    "owner": {
-      "email": "harshitha.d@contentstack.com",
-      "first_name": "Harshitha",
-      "last_name": "D",
-      "settings": {
-        "preferences": {
-          "global": [],
-          "stack": []
-        }
-      }
-    },
-    "users": {
-      "count": 1
-    }
-  },
-  {
-    "created_at": "2026-03-07T05:55:02.673Z",
-    "updated_at": "2026-03-12T09:31:41.353Z",
-    "uid": "blt8a6cbbbddc7de158",
-    "name": "Dotnet CDA SDK internal test 2",
-    "api_key": "blteda07f97e97feb91",
-    "owner_uid": "blt4c60a7a861d77460",
-    "owner": {
-      "email": "raj.pandey@contentstack.com",
-      "first_name": "Raj",
-      "last_name": "Pandey",
-      "settings": {
-        "preferences": {
-          "global": [],
-          "stack": []
-        }
-      }
-    },
-    "users": {
-      "count": 1
-    }
-  },
-  {
-    "created_at": "2026-03-09T07:22:32.565Z",
-    "updated_at": "2026-03-09T07:22:32.69Z",
-    "uid": "bltdfd4504f05d7ac16",
-    "name": "test123",
-    "api_key": "blt1484e456a1dbab9e",
-    "owner_uid": "blt8e9b3bbef2524228",
-    "owner": {
-      "email": "harshitha.d+prod@contentstack.com",
-      "first_name": "harshitha",
-      "last_name": "d+prod",
-      "settings": {
-        "preferences": {
-          "global": [],
-          "stack": []
-        }
-      }
-    },
-    "users": {
-      "count": 1
-    }
-  },
-  {
-    "created_at": "2026-03-06T13:21:38.649Z",
-    "updated_at": "2026-03-06T13:21:38.766Z",
-    "uid": "blt542fdc5a9cdc623c",
-    "name": "teststack1",
-    "api_key": "blt0ea1eb6ab5aa79ae",
-    "owner_uid": "blt8e9b3bbef2524228",
-    "owner": {
-      "email": "harshitha.d+prod@contentstack.com",
-      "first_name": "harshitha",
-      "last_name": "d+prod",
-      "settings": {
-        "preferences": {
-          "global": [],
-          "stack": []
-        }
-      }
-    },
-    "users": {
-      "count": 1
-    }
-  },
-  {
-    "created_at": "2026-02-12T08:10:52.85Z",
-    "updated_at": "2026-03-02T12:31:02.856Z",
-    "uid": "blt0181d077e890a38e",
-    "name": "Import Data",
-    "api_key": "bltd967f12af772f0e2",
-    "owner_uid": "blt37ba39e03b130064",
-    "owner": {
-      "email": "harshitha.d@contentstack.com",
-      "first_name": "Harshitha",
-      "last_name": "D",
-      "settings": {
-        "preferences": {
-          "global": [],
-          "stack": []
-        }
-      }
-    },
-    "users": {
-      "count": 1
-    }
-  },
-  {
-    "created_at": "2026-02-12T09:26:38.038Z",
-    "updated_at": "2026-03-02T12:31:02.856Z",
-    "uid": "blt81d6f3d742755c86",
-    "name": "EmptyStack",
-    "api_key": "blta7a69f15c58b01ac",
-    "owner_uid": "blt37ba39e03b130064",
-    "owner": {
-      "email": "harshitha.d@contentstack.com",
-      "first_name": "Harshitha",
-      "last_name": "D",
-      "settings": {
-        "preferences": {
-          "global": [],
-          "stack": []
-        }
-      }
-    },
-    "users": {
-      "count": 1
-    }
-  }
-]
-
-
-
-
AreEqual(stacksType)
-
-
Expected:
Newtonsoft.Json.Linq.JArray
-
Actual:
Newtonsoft.Json.Linq.JArray
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/stacks
-
Request Headers
authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/stacks' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:33 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 20ms
-X-Request-ID: 6f1b2979-d120-45d1-9fb0-aa8172e95f99
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{"stacks":[{"created_at":"2026-03-12T12:35:38.558Z","updated_at":"2026-03-12T12:35:41.085Z","uid":"bltf6dedbb54111facb","name":"DotNet Management SDK Stack","api_key":"blt72045e49dc1aa085","owner_uid":"blt1930fc55e5669df9","owner":{"email":"om.pawar@contentstack.com","first_name":"OM","last_name":"PAWAR","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-12T12:16:53.714Z","updated_at":"2026-03-12T12:16:56.378Z","uid":"blta77d4b24cace786a","name":"DotNet Management SDK Stack","api_key":"bltd87839f91f3e1448","owner_uid":"blt1930fc55e5669df9","owner":{"email":"om.pawar@contentstack.com","first_name":"OM","last_name":"PAWAR","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-06T15:18:49.878Z","updated_at":"2026-03-12T12:11:46.324Z","uid":"bltae6bacc186e4819f","name":"Copy of Dotnet CDA SDK internal test","api_key":"blta23060d14351eb10","owner_uid":"blt4c60a7a861d77460","owner":{"email":"raj.pandey@contentstack.com","first_name":"Raj","last_name":"Pandey","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":2}},{"created_at":"2026-03-12T11:48:59.868Z","updated_at":"2026-03-12T11:48:59.954Z","uid":"bltaa287bfd5509a809","name":"test1234","api_key":"bltf2d85a7d423603d0","owner_uid":"blt8e9b3bbef2524228","owner":{"email":"harshitha.d+prod@contentstack.com","first_name":"harshitha","last_name":"d+prod","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-12T08:47:15.111Z","updated_at":"2026-03-12T09:31:41.353Z","uid":"bltff87f359ab582635","name":"DotNet Management SDK Stack","api_key":"blt1747bf073521a923","owner_uid":"blt37ba39e03b130064","owner":{"email":"harshitha.d@contentstack.com","first_name":"Harshitha","last_name":"D","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-07T05:55:02.673Z","updated_at":"2026-03-12T09:31:41.353Z","uid":"blt8a6cbbbddc7de158","name":"Dotnet CDA SDK internal test 2","api_key":"blteda07f97e97feb91","owner_uid":"blt4c60a7a861d77460","owner":{"email":"raj.pandey@contentstack.com","first_name":"Raj","last_name":"Pandey","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-09T07:22:32.565Z","updated_at":"2026-03-09T07:22:32.690Z","uid":"bltdfd4504f05d7ac16","name":"test123","api_key":"blt1484e456a1dbab9e","owner_uid":"blt8e9b3bbef2524228","owner":{"email":"harshitha.d+prod@contentstack.com","first_name":"harshitha","last_name":"d+prod","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026-03-06T13:21:38.649Z","updated_at":"2026-03-06T13:21:38.766Z","uid":"blt542fdc5a9cdc623c","name":"teststack1","api_key":"blt0ea1eb6ab5aa79ae","owner_uid":"blt8e9b3bbef2524228","owner":{"email":"harshitha.d+prod@contentstack.com","first_name":"harshitha","last_name":"d+prod","settings":{"preferences":{"global":[],"stack":[]}}},"users":{"count":1}},{"created_at":"2026
-
- Test Context - - - - -
TestScenarioGetAllStacks
-
Passed0.30s
-
✅ Test013_Should_Remove_User_From_Organization
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "notice": "The invitation has been deleted successfully.",
-  "shares": [
-    {
-      "uid": "blt936398a474ba2f72",
-      "email": "testcs_1@contentstack.com",
-      "user_uid": "blte0e9c5817aa9cc27",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "blt802c2cf444969bc3"
-      ],
-      "invited_by": "blt1930fc55e5669df9",
-      "invited_at": "2026-03-13T02:33:31.004Z",
-      "status": "pending",
-      "created_at": "2026-03-13T02:33:31.002Z",
-      "updated_at": "2026-03-13T02:33:31.002Z"
-    }
-  ]
-}
-
-
-
-
AreEqual(notice)
-
-
Expected:
The invitation has been deleted successfully.
-
Actual:
The invitation has been deleted successfully.
-
-

HTTP Transactions

-
- -
DELETEhttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share
-
Request Headers
authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 40
-Content-Type: application/json
-
Request Body
{"emails":["testcs_1@contentstack.com"]}
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 40' \
-  -H 'Content-Type: application/json' \
-  -d '{"emails":["testcs_1@contentstack.com"]}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:32 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 137ms
-X-Request-ID: 6ef9d652-6b63-48be-bb7a-4e9834f286da
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "The invitation has been deleted successfully.",
-  "shares": [
-    {
-      "uid": "blt936398a474ba2f72",
-      "email": "testcs_1@contentstack.com",
-      "user_uid": "blte0e9c5817aa9cc27",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "blt802c2cf444969bc3"
-      ],
-      "invited_by": "blt1930fc55e5669df9",
-      "invited_at": "2026-03-13T02:33:31.004Z",
-      "status": "pending",
-      "created_at": "2026-03-13T02:33:31.002Z",
-      "updated_at": "2026-03-13T02:33:31.002Z"
-    }
-  ]
-}
-
- Test Context - - - - -
TestScenarioRemoveUserAsync
-
Passed0.43s
-
✅ Test011_Should_Resend_Invite
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "notice": "The invitation has been resent successfully."
-}
-
-
-
-
AreEqual(notice)
-
-
Expected:
The invitation has been resent successfully.
-
Actual:
The invitation has been resent successfully.
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share/blt936398a474ba2f72/resend_invitation
-
Request Headers
authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share/blt936398a474ba2f72/resend_invitation' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:31 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 20ms
-X-Request-ID: 3028dbf9-9c16-4357-a660-0f9cf2ac0ce6
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "The invitation has been resent successfully."
-}
-
- Test Context - - - - -
TestScenarioResendInviteAsync
-
Passed0.30s
-
✅ Test003_Should_Return_With_Skipping_Organizations
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "organizations": []
-}
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/organizations?skip=4
-
Request Headers
authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/organizations?skip=4' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:29 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-runtime: 7ms
-X-Request-ID: 5ba545ad-baac-4973-a851-8e813b672958
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "organizations": []
-}
-
- Test Context - - - - -
TestScenarioSkipOrganizations
-
Passed0.32s
-
✅ Test004_Should_Return_Organization_With_UID
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "organization": {
-    "_id": "6461c7329ebec1652d7ada73",
-    "uid": "blt8d282118e2094bb8",
-    "name": "SDK org",
-    "plan_id": "sdk_branch_plan",
-    "is_over_usage_allowed": true,
-    "expires_on": "2029-12-21T00:00:00Z",
-    "owner_uid": "blt37ba39e03b130064",
-    "enabled": true,
-    "created_at": "2023-05-15T05:46:26.262Z",
-    "updated_at": "2025-03-17T06:07:47.263Z",
-    "deleted_at": false,
-    "account_id": "",
-    "settings": {
-      "blockAuthQueryParams": true,
-      "allowedCDNTokens": [
-        "access_token"
-      ]
-    },
-    "created_by": "bltf7f13f53e2256a8a",
-    "updated_by": "bltfc88a63ec0767587",
-    "tags": [
-      "testing"
-    ],
-    "__v": 0,
-    "is_transfer_set": false,
-    "transfer_ownership_token": "",
-    "transfer_sent_at": "2025-03-17T06:06:30.203Z",
-    "transfer_to": ""
-  }
-}
-
-
-
-
IsNotNull(organization)
-
-
Expected:
NotNull
-
Actual:
{
-  "_id": "6461c7329ebec1652d7ada73",
-  "uid": "blt8d282118e2094bb8",
-  "name": "SDK org",
-  "plan_id": "sdk_branch_plan",
-  "is_over_usage_allowed": true,
-  "expires_on": "2029-12-21T00:00:00Z",
-  "owner_uid": "blt37ba39e03b130064",
-  "enabled": true,
-  "created_at": "2023-05-15T05:46:26.262Z",
-  "updated_at": "2025-03-17T06:07:47.263Z",
-  "deleted_at": false,
-  "account_id": "",
-  "settings": {
-    "blockAuthQueryParams": true,
-    "allowedCDNTokens": [
-      "access_token"
-    ]
-  },
-  "created_by": "bltf7f13f53e2256a8a",
-  "updated_by": "bltfc88a63ec0767587",
-  "tags": [
-    "testing"
-  ],
-  "__v": 0,
-  "is_transfer_set": false,
-  "transfer_ownership_token": "",
-  "transfer_sent_at": "2025-03-17T06:06:30.203Z",
-  "transfer_to": ""
-}
-
-
-
-
AreEqual(OrganizationName)
-
-
Expected:
SDK org
-
Actual:
SDK org
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8
-
Request Headers
authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:29 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 24ms
-X-Request-ID: f2d75f77-5d25-4f94-9553-6cfa8a10ad47
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "organization": {
-    "_id": "6461c7329ebec1652d7ada73",
-    "uid": "blt8d282118e2094bb8",
-    "name": "SDK org",
-    "plan_id": "sdk_branch_plan",
-    "is_over_usage_allowed": true,
-    "expires_on": "2029-12-21T00:00:00.000Z",
-    "owner_uid": "blt37ba39e03b130064",
-    "enabled": true,
-    "created_at": "2023-05-15T05:46:26.262Z",
-    "updated_at": "2025-03-17T06:07:47.263Z",
-    "deleted_at": false,
-    "account_id": "",
-    "settings": {
-      "blockAuthQueryParams": true,
-      "allowedCDNTokens": [
-        "access_token"
-      ]
-    },
-    "created_by": "bltf7f13f53e2256a8a",
-    "updated_by": "bltfc88a63ec0767587",
-    "tags": [
-      "testing"
-    ],
-    "__v": 0,
-    "is_transfer_set": false,
-    "transfer_ownership_token": "",
-    "transfer_sent_at": "2025-03-17T06:06:30.203Z",
-    "transfer_to": ""
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioGetOrganizationByUID
OrganizationUidblt8d282118e2094bb8
-
Passed0.31s
-
✅ Test015_Should_Get_All_Invites_Async
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "shares": [
-    {
-      "uid": "blt1acd92e2c66a8e59",
-      "email": "om.pawar@contentstack.com",
-      "user_uid": "blt1930fc55e5669df9",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "bltb8a7ba0eb93838aa"
-      ],
-      "invited_by": "blt4c60a7a861d77460",
-      "invited_at": "2026-03-12T12:11:46.187Z",
-      "status": "accepted",
-      "created_at": "2026-03-12T12:11:46.184Z",
-      "updated_at": "2026-03-12T12:12:37.899Z",
-      "first_name": "OM",
-      "last_name": "PAWAR"
-    },
-    {
-      "uid": "blt7e41729c886fc57d",
-      "email": "harshitha.d+prod@contentstack.com",
-      "user_uid": "blt8e9b3bbef2524228",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "bltb8a7ba0eb93838aa"
-      ],
-      "invited_by": "blt37ba39e03b130064",
-      "invited_at": "2026-02-06T11:58:49.035Z",
-      "status": "accepted",
-      "created_at": "2026-02-06T11:58:49.032Z",
-      "updated_at": "2026-02-06T12:03:17.425Z",
-      "first_name": "harshitha",
-      "last_name": "d+prod"
-    },
-    {
-      "uid": "bltbafda600eae98e3f",
-      "email": "cli-dev+oauth@contentstack.com",
-      "user_uid": "bltfd99a11f4cc6a299",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "bltb8a7ba0eb93838aa"
-      ],
-      "invited_by": "blt8e9b3bbef2524228",
-      "invited_at": "2026-01-21T20:09:28.254Z",
-      "status": "accepted",
-      "created_at": "2026-01-21T20:09:28.252Z",
-      "updated_at": "2026-01-21T20:09:28.471Z",
-      "first_name": "oauth",
-      "last_name": "CLI"
-    },
-    {
-      "uid": "blt6790771daee2ca6e",
-      "email": "cli-dev+jscma@contentstack.com",
-      "user_uid": "blt7308c3a62931255f",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "bltb8a7ba0eb93838aa"
-      ],
-      "invited_by": "blt484b7e4e3d1b7f76",
-      "invited_at": "2026-01-20T14:05:42.753Z",
-      "status": "accepted",
-      "created_at": "2026-01-20T14:05:42.75Z",
-      "updated_at": "2026-01-20T14:53:24.25Z",
-      "first_name": "JSCMA",
-      "last_name": "SDK"
-    },
-    {
-      "uid": "blt326c04bdd112ca65",
-      "email": "cli-dev+java-sdk@contentstack.com",
-      "user_uid": "blt5ffa2ada42ff6c6f",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "bltb8a7ba0eb93838aa"
-      ],
-      "invited_by": "blt818cdd837f0ef17f",
-      "invited_at": "2025-05-15T14:36:13.465Z",
-      "status": "accepted",
-      "created_at": "2025-05-15T14:36:13.463Z",
-      "updated_at": "2025-05-15T15:34:21.941Z",
-      "first_name": "Java-cli",
-      "last_name": "java"
-    },
-    {
-      "uid": "blt3d1adbfab4bcb265",
-      "email": "cli-dev+dotnet@contentstack.com",
-      "user_uid": "blta4bbe422a5a3be0c",
-      "message": "",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "bltb8a7ba0eb93838aa"
-      ],
-      "invited_by": "blt818cdd837f0ef17f",
-      "invited_at": "2025-04-10T13:03:22.951Z",
-      "status": "accepted",
-      "created_at": "2025-04-10T13:03:22.949Z",
-      "updated_at": "2025-04-10T13:03:48.789Z",
-      "first_name": "cli-dev+dotnet",
-      "last_name": "Dotnet"
-    },
-    {
-      "uid": "bltbf7c6e51a7379079",
-      "email": "reeshika.hosmani+prod@contentstack.com",
-      "user_uid": "bltcfdd4b7f0f6d14be",
-      "message": "",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "blt802c2cf444969bc3"
-      ],
-      "invited_by": "blte9d0c9dd3a3677cd",
-      "invited_at": "2025-04-10T05:05:10.588Z",
-      "status": "accepted",
-      "created_at": "2025-04-10T05:05:10.585Z",
-      "updated_at": "2025-04-10T05:05:10.585Z",
-      "first_name": "reeshika",
-      "last_name": "hosmani+prod"
-    },
-    {
-      "uid": "blt96e8f36be53136f0",
-      "email": "cli-dev@contentstack.com",
-      "user_uid": "blt818cdd837f0ef17f",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "bltb8a7ba0eb93838aa"
-      ],
-      "invited_by": "blt8e9b3bbef2524228",
-      "invited_at": "2025-04-01T13:15:10.469Z",
-      "status": "accepted",
-      "created_at": "2025-04-01T13:15:10.467Z",
-      "updated_at": "2025-04-01T13:18:40.649Z",
-      "first_name": "CLI",
-      "last_name": "DEV"
-    },
-    {
-      "uid": "blt2f4b6cbf40eebd8c",
-      "email": "harshitha.d@contentstack.com",
-      "user_uid": "blt37ba39e03b130064",
-      "message": "",
-      "org_uid": "blt8d282118e2094bb8",
-      "invited_by": "blt77cdb6f518e1940a",
-      "invited_at": "2023-07-18T12:17:59.778Z",
-      "status": "accepted",
-      "created_at": "2023-07-18T12:17:59.776Z",
-      "updated_at": "2025-03-17T06:07:47.278Z",
-      "is_owner": true,
-      "first_name": "Harshitha",
-      "last_name": "D"
-    },
-    {
-      "uid": "blt1a7e98ba71996a03",
-      "email": "cli-dev+jsmp@contentstack.com",
-      "user_uid": "blt5343a15e88b3afab",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "blt802c2cf444969bc3"
-      ],
-      "invited_by": "blt8e9b3bbef2524228",
-      "invited_at": "2025-02-26T09:02:28.523Z",
-      "status": "accepted",
-      "created_at": "2025-02-26T09:02:28.521Z",
-      "updated_at": "2025-02-26T09:02:28.773Z",
-      "first_name": "cli-dev+jsmp",
-      "last_name": "MP"
-    }
-  ]
-}
-
-
-
-
IsNotNull(shares)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "uid": "blt1acd92e2c66a8e59",
-    "email": "om.pawar@contentstack.com",
-    "user_uid": "blt1930fc55e5669df9",
-    "org_uid": "blt8d282118e2094bb8",
-    "org_roles": [
-      "bltb8a7ba0eb93838aa"
-    ],
-    "invited_by": "blt4c60a7a861d77460",
-    "invited_at": "2026-03-12T12:11:46.187Z",
-    "status": "accepted",
-    "created_at": "2026-03-12T12:11:46.184Z",
-    "updated_at": "2026-03-12T12:12:37.899Z",
-    "first_name": "OM",
-    "last_name": "PAWAR"
-  },
-  {
-    "uid": "blt7e41729c886fc57d",
-    "email": "harshitha.d+prod@contentstack.com",
-    "user_uid": "blt8e9b3bbef2524228",
-    "org_uid": "blt8d282118e2094bb8",
-    "org_roles": [
-      "bltb8a7ba0eb93838aa"
-    ],
-    "invited_by": "blt37ba39e03b130064",
-    "invited_at": "2026-02-06T11:58:49.035Z",
-    "status": "accepted",
-    "created_at": "2026-02-06T11:58:49.032Z",
-    "updated_at": "2026-02-06T12:03:17.425Z",
-    "first_name": "harshitha",
-    "last_name": "d+prod"
-  },
-  {
-    "uid": "bltbafda600eae98e3f",
-    "email": "cli-dev+oauth@contentstack.com",
-    "user_uid": "bltfd99a11f4cc6a299",
-    "org_uid": "blt8d282118e2094bb8",
-    "org_roles": [
-      "bltb8a7ba0eb93838aa"
-    ],
-    "invited_by": "blt8e9b3bbef2524228",
-    "invited_at": "2026-01-21T20:09:28.254Z",
-    "status": "accepted",
-    "created_at": "2026-01-21T20:09:28.252Z",
-    "updated_at": "2026-01-21T20:09:28.471Z",
-    "first_name": "oauth",
-    "last_name": "CLI"
-  },
-  {
-    "uid": "blt6790771daee2ca6e",
-    "email": "cli-dev+jscma@contentstack.com",
-    "user_uid": "blt7308c3a62931255f",
-    "org_uid": "blt8d282118e2094bb8",
-    "org_roles": [
-      "bltb8a7ba0eb93838aa"
-    ],
-    "invited_by": "blt484b7e4e3d1b7f76",
-    "invited_at": "2026-01-20T14:05:42.753Z",
-    "status": "accepted",
-    "created_at": "2026-01-20T14:05:42.75Z",
-    "updated_at": "2026-01-20T14:53:24.25Z",
-    "first_name": "JSCMA",
-    "last_name": "SDK"
-  },
-  {
-    "uid": "blt326c04bdd112ca65",
-    "email": "cli-dev+java-sdk@contentstack.com",
-    "user_uid": "blt5ffa2ada42ff6c6f",
-    "org_uid": "blt8d282118e2094bb8",
-    "org_roles": [
-      "bltb8a7ba0eb93838aa"
-    ],
-    "invited_by": "blt818cdd837f0ef17f",
-    "invited_at": "2025-05-15T14:36:13.465Z",
-    "status": "accepted",
-    "created_at": "2025-05-15T14:36:13.463Z",
-    "updated_at": "2025-05-15T15:34:21.941Z",
-    "first_name": "Java-cli",
-    "last_name": "java"
-  },
-  {
-    "uid": "blt3d1adbfab4bcb265",
-    "email": "cli-dev+dotnet@contentstack.com",
-    "user_uid": "blta4bbe422a5a3be0c",
-    "message": "",
-    "org_uid": "blt8d282118e2094bb8",
-    "org_roles": [
-      "bltb8a7ba0eb93838aa"
-    ],
-    "invited_by": "blt818cdd837f0ef17f",
-    "invited_at": "2025-04-10T13:03:22.951Z",
-    "status": "accepted",
-    "created_at": "2025-04-10T13:03:22.949Z",
-    "updated_at": "2025-04-10T13:03:48.789Z",
-    "first_name": "cli-dev+dotnet",
-    "last_name": "Dotnet"
-  },
-  {
-    "uid": "bltbf7c6e51a7379079",
-    "email": "reeshika.hosmani+prod@contentstack.com",
-    "user_uid": "bltcfdd4b7f0f6d14be",
-    "message": "",
-    "org_uid": "blt8d282118e2094bb8",
-    "org_roles": [
-      "blt802c2cf444969bc3"
-    ],
-    "invited_by": "blte9d0c9dd3a3677cd",
-    "invited_at": "2025-04-10T05:05:10.588Z",
-    "status": "accepted",
-    "created_at": "2025-04-10T05:05:10.585Z",
-    "updated_at": "2025-04-10T05:05:10.585Z",
-    "first_name": "reeshika",
-    "last_name": "hosmani+prod"
-  },
-  {
-    "uid": "blt96e8f36be53136f0",
-    "email": "cli-dev@contentstack.com",
-    "user_uid": "blt818cdd837f0ef17f",
-    "org_uid": "blt8d282118e2094bb8",
-    "org_roles": [
-      "bltb8a7ba0eb93838aa"
-    ],
-    "invited_by": "blt8e9b3bbef2524228",
-    "invited_at": "2025-04-01T13:15:10.469Z",
-    "status": "accepted",
-    "created_at": "2025-04-01T13:15:10.467Z",
-    "updated_at": "2025-04-01T13:18:40.649Z",
-    "first_name": "CLI",
-    "last_name": "DEV"
-  },
-  {
-    "uid": "blt2f4b6cbf40eebd8c",
-    "email": "harshitha.d@contentstack.com",
-    "user_uid": "blt37ba39e03b130064",
-    "message": "",
-    "org_uid": "blt8d282118e2094bb8",
-    "invited_by": "blt77cdb6f518e1940a",
-    "invited_at": "2023-07-18T12:17:59.778Z",
-    "status": "accepted",
-    "created_at": "2023-07-18T12:17:59.776Z",
-    "updated_at": "2025-03-17T06:07:47.278Z",
-    "is_owner": true,
-    "first_name": "Harshitha",
-    "last_name": "D"
-  },
-  {
-    "uid": "blt1a7e98ba71996a03",
-    "email": "cli-dev+jsmp@contentstack.com",
-    "user_uid": "blt5343a15e88b3afab",
-    "org_uid": "blt8d282118e2094bb8",
-    "org_roles": [
-      "blt802c2cf444969bc3"
-    ],
-    "invited_by": "blt8e9b3bbef2524228",
-    "invited_at": "2025-02-26T09:02:28.523Z",
-    "status": "accepted",
-    "created_at": "2025-02-26T09:02:28.521Z",
-    "updated_at": "2025-02-26T09:02:28.773Z",
-    "first_name": "cli-dev+jsmp",
-    "last_name": "MP"
-  }
-]
-
-
-
-
AreEqual(sharesType)
-
-
Expected:
Newtonsoft.Json.Linq.JArray
-
Actual:
Newtonsoft.Json.Linq.JArray
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share
-
Request Headers
authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:33 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 17ms
-X-Request-ID: 94b293d9-d034-41f4-888a-c1ad501d7552
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{"shares":[{"uid":"blt1acd92e2c66a8e59","email":"om.pawar@contentstack.com","user_uid":"blt1930fc55e5669df9","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt4c60a7a861d77460","invited_at":"2026-03-12T12:11:46.187Z","status":"accepted","created_at":"2026-03-12T12:11:46.184Z","updated_at":"2026-03-12T12:12:37.899Z","first_name":"OM","last_name":"PAWAR"},{"uid":"blt7e41729c886fc57d","email":"harshitha.d+prod@contentstack.com","user_uid":"blt8e9b3bbef2524228","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt37ba39e03b130064","invited_at":"2026-02-06T11:58:49.035Z","status":"accepted","created_at":"2026-02-06T11:58:49.032Z","updated_at":"2026-02-06T12:03:17.425Z","first_name":"harshitha","last_name":"d+prod"},{"uid":"bltbafda600eae98e3f","email":"cli-dev+oauth@contentstack.com","user_uid":"bltfd99a11f4cc6a299","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt8e9b3bbef2524228","invited_at":"2026-01-21T20:09:28.254Z","status":"accepted","created_at":"2026-01-21T20:09:28.252Z","updated_at":"2026-01-21T20:09:28.471Z","first_name":"oauth","last_name":"CLI"},{"uid":"blt6790771daee2ca6e","email":"cli-dev+jscma@contentstack.com","user_uid":"blt7308c3a62931255f","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt484b7e4e3d1b7f76","invited_at":"2026-01-20T14:05:42.753Z","status":"accepted","created_at":"2026-01-20T14:05:42.750Z","updated_at":"2026-01-20T14:53:24.250Z","first_name":"JSCMA","last_name":"SDK"},{"uid":"blt326c04bdd112ca65","email":"cli-dev+java-sdk@contentstack.com","user_uid":"blt5ffa2ada42ff6c6f","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt818cdd837f0ef17f","invited_at":"2025-05-15T14:36:13.465Z","status":"accepted","created_at":"2025-05-15T14:36:13.463Z","updated_at":"2025-05-15T15:34:21.941Z","first_name":"Java-cli","last_name":"java"},{"uid":"blt3d1adbfab4bcb265","email":"cli-dev+dotnet@contentstack.com","user_uid":"blta4bbe422a5a3be0c","message":"","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt818cdd837f0ef17f","invited_at":"2025-04-10T13:03:22.951Z","status":"accepted","created_at":"2025-04-10T13:03:22.949Z","updated_at":"2025-04-10T13:03:48.789Z","first_name":"cli-dev+dotnet","last_name":"Dotnet"},{"uid":"bltbf7c6e51a7379079","email":"reeshika.hosmani+prod@contentstack.com","user_uid":"bltcfdd4b7f0f6d14be","message":"","org_uid":"blt8d282118e2094bb8","org_roles":["blt802c2cf444969bc3"],"invited_by":"blte9d0c9dd3a3677cd","invited_at":"2025-04-10T05:05:10.588Z","status":"accepted","created_at":"2025-04-10T05:05:10.585Z","updated_at":"2025-04-10T05:05:10.585Z","first_name":"reeshika","last_name":"hosmani+prod"},{"uid":"blt96e8f36be53136f0","email":"cli-dev@contentstack.com","user_uid":"blt818cdd837f0ef17f","org_uid":"blt8d282118e2094bb8","org_roles":["bltb8a7ba0eb93838aa"],"invited_by":"blt8e9b3bbef2524228","invited_at":"202
-
- Test Context - - - - -
TestScenarioGetAllInvitesAsync
-
Passed0.31s
-
✅ Test009_Should_Add_User_To_Organization
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "notice": "The invitation has been sent successfully.",
-  "shares": [
-    {
-      "uid": "blt936398a474ba2f72",
-      "email": "testcs_1@contentstack.com",
-      "user_uid": "blte0e9c5817aa9cc27",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "blt802c2cf444969bc3"
-      ],
-      "invited_by": "blt1930fc55e5669df9",
-      "invited_at": "2026-03-13T02:33:31.004Z",
-      "status": "pending",
-      "created_at": "2026-03-13T02:33:31.002Z",
-      "updated_at": "2026-03-13T02:33:31.002Z"
-    }
-  ]
-}
-
-
-
-
AreEqual(sharesCount)
-
-
Expected:
1
-
Actual:
1
-
-
-
-
AreEqual(notice)
-
-
Expected:
The invitation has been sent successfully.
-
Actual:
The invitation has been sent successfully.
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share
-
Request Headers
authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 73
-Content-Type: application/json
-
Request Body
{"share":{"users":{"testcs_1@contentstack.com":["blt802c2cf444969bc3"]}}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 73' \
-  -H 'Content-Type: application/json' \
-  -d '{"share":{"users":{"testcs_1@contentstack.com":["blt802c2cf444969bc3"]}}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:31 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 60ms
-X-Request-ID: ddbaccc8-53cb-4495-bf6b-d79a171a4e9e
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "The invitation has been sent successfully.",
-  "shares": [
-    {
-      "uid": "blt936398a474ba2f72",
-      "email": "testcs_1@contentstack.com",
-      "user_uid": "blte0e9c5817aa9cc27",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "blt802c2cf444969bc3"
-      ],
-      "invited_by": "blt1930fc55e5669df9",
-      "invited_at": "2026-03-13T02:33:31.004Z",
-      "status": "pending",
-      "created_at": "2026-03-13T02:33:31.002Z",
-      "updated_at": "2026-03-13T02:33:31.002Z"
-    }
-  ]
-}
-
- Test Context - - - - -
TestScenarioAddUserToOrgAsync
-
Passed0.36s
-
✅ Test012_Should_Remove_User_From_Organization
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "notice": "The invitation has been deleted successfully.",
-  "shares": [
-    {
-      "uid": "bltbd1e5e658d86592f",
-      "email": "testcs@contentstack.com",
-      "user_uid": "bltdfb5035a5e13faa8",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "blt802c2cf444969bc3"
-      ],
-      "invited_by": "blt1930fc55e5669df9",
-      "invited_at": "2026-03-13T02:33:30.662Z",
-      "status": "pending",
-      "created_at": "2026-03-13T02:33:30.66Z",
-      "updated_at": "2026-03-13T02:33:30.66Z"
-    }
-  ]
-}
-
-
-
-
AreEqual(notice)
-
-
Expected:
The invitation has been deleted successfully.
-
Actual:
The invitation has been deleted successfully.
-
-

HTTP Transactions

-
- -
DELETEhttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share
-
Request Headers
authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 38
-Content-Type: application/json
-
Request Body
{"emails":["testcs@contentstack.com"]}
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8/share' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 38' \
-  -H 'Content-Type: application/json' \
-  -d '{"emails":["testcs@contentstack.com"]}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:32 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 135ms
-X-Request-ID: 5b04b87d-4f82-44d1-beeb-2fa038045acc
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "The invitation has been deleted successfully.",
-  "shares": [
-    {
-      "uid": "bltbd1e5e658d86592f",
-      "email": "testcs@contentstack.com",
-      "user_uid": "bltdfb5035a5e13faa8",
-      "org_uid": "blt8d282118e2094bb8",
-      "org_roles": [
-        "blt802c2cf444969bc3"
-      ],
-      "invited_by": "blt1930fc55e5669df9",
-      "invited_at": "2026-03-13T02:33:30.662Z",
-      "status": "pending",
-      "created_at": "2026-03-13T02:33:30.660Z",
-      "updated_at": "2026-03-13T02:33:30.660Z"
-    }
-  ]
-}
-
- Test Context - - - - -
TestScenarioRemoveUser
-
Passed0.43s
-
✅ Test005_Should_Return_Organization_With_UID_Include_Plan
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "organization": {
-    "_id": "6461c7329ebec1652d7ada73",
-    "uid": "blt8d282118e2094bb8",
-    "name": "SDK org",
-    "plan_id": "sdk_branch_plan",
-    "is_over_usage_allowed": true,
-    "expires_on": "2029-12-21T00:00:00Z",
-    "owner_uid": "blt37ba39e03b130064",
-    "enabled": true,
-    "created_at": "2023-05-15T05:46:26.262Z",
-    "updated_at": "2025-03-17T06:07:47.263Z",
-    "deleted_at": false,
-    "account_id": "",
-    "settings": {
-      "blockAuthQueryParams": true,
-      "allowedCDNTokens": [
-        "access_token"
-      ]
-    },
-    "created_by": "bltf7f13f53e2256a8a",
-    "updated_by": "bltfc88a63ec0767587",
-    "tags": [
-      "testing"
-    ],
-    "__v": 0,
-    "is_transfer_set": false,
-    "transfer_ownership_token": "",
-    "transfer_sent_at": "2025-03-17T06:06:30.203Z",
-    "transfer_to": "",
-    "plan": {
-      "plan_id": "sdk_branch_plan",
-      "name": "sdk_branch_plan",
-      "message": "",
-      "price": "$0",
-      "features": [
-        {
-          "uid": "users",
-          "name": "Users",
-          "key_order": 1,
-          "enabled": true,
-          "limit": 1000,
-          "max_limit": 1000,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "roles",
-          "name": "UserRoles",
-          "key_order": 2,
-          "enabled": true,
-          "limit": 10,
-          "max_limit": 10,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "sso",
-          "name": "SSO",
-          "key_order": 3,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "ssoRoles",
-          "name": "ssoRoles",
-          "key_order": 4,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "environments",
-          "name": "Environments",
-          "key_order": 1,
-          "enabled": true,
-          "limit": 400,
-          "max_limit": 400,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "branches",
-          "name": "branches",
-          "key_order": 2,
-          "enabled": true,
-          "limit": 10,
-          "max_limit": 10,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "branch_aliases",
-          "name": "branch_aliases",
-          "key_order": 3,
-          "enabled": true,
-          "limit": 10,
-          "max_limit": 10,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "digitalProperties",
-          "name": "DigitalProperties",
-          "key_order": 4,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "fieldModifierLocation",
-          "name": "Extension Field Modifier Location",
-          "key_order": 4,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "limit",
-          "name": "API Write Request Limit",
-          "key_order": 5,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 100,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "getLimit",
-          "name": "CMA GET Limit",
-          "key_order": 6,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 100,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "apiBandwidth",
-          "name": "API Bandwidth",
-          "key_order": 9,
-          "enabled": true,
-          "limit": 5000000000000,
-          "max_limit": 5000000000000,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "apiRequests",
-          "name": "API Requests",
-          "key_order": 10,
-          "enabled": true,
-          "limit": 6000000,
-          "max_limit": 6000000,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "managementTokensLimit",
-          "name": "managementTokensLimit",
-          "key_order": 11,
-          "enabled": true,
-          "limit": 20,
-          "max_limit": 20,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "newCDA",
-          "name": "New CDA API",
-          "key_order": 12,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "syncCDA",
-          "name": "default",
-          "key_order": 13,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 2,
-          "is_required": false,
-          "is_name_editable": true,
-          "depends_on": []
-        },
-        {
-          "uid": "fullPageLocation",
-          "name": "Extension Full Page Location",
-          "key_order": 13,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "newCDAWorkflow",
-          "name": "newCDAWorkflow",
-          "key_order": 14,
-          "enabled": true,
-          "limit": 0,
-          "max_limit": 3,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "getCdaLimit",
-          "name": "CDA rate limit",
-          "key_order": 15,
-          "enabled": true,
-          "limit": 500,
-          "max_limit": 500,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "workflowEntryLock",
-          "name": "Enable Workflow Stage Entry Locking ",
-          "key_order": 16,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "extension",
-          "name": "extension",
-          "key_order": 17,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "bin",
-          "name": "Enable Trash bin",
-          "key_order": 19,
-          "enabled": true,
-          "limit": 14,
-          "max_limit": 14,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "deliveryTokens",
-          "name": "DeliveryTokens",
-          "key_order": 22,
-          "enabled": true,
-          "limit": 3,
-          "max_limit": 3,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "cow_search",
-          "name": "Cow Search",
-          "key_order": 23,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "searchV2",
-          "name": "search V2",
-          "key_order": 24,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "newRefAndPartialSearch",
-          "name": "Reference and PartialSearch",
-          "key_order": 25,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "assetSearchV2",
-          "name": "Asset Search V2",
-          "key_order": 26,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "app_switcher",
-          "name": "App Switcher",
-          "key_order": 27,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "release_v2",
-          "name": "Release v2",
-          "key_order": 28,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "useCUDToViewManagementAPI",
-          "name": "View Management API for CUD Operations",
-          "key_order": 29,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "useViewManagementAPI",
-          "name": "View Management API",
-          "key_order": 30,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "globalDashboardAccess",
-          "name": "Global Dashboard Access",
-          "key_order": 34,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": [
-            "app_switcher"
-          ]
-        },
-        {
-          "uid": "readPublishLogsFromElastic",
-          "name": "Read Publish Logs from Elastic",
-          "key_order": 35,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "includeCMAReleaseLogsByDefault",
-          "name": "Include CMA Release Logs by Default",
-          "key_order": 36,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "cow_assets",
-          "name": "cow_assets",
-          "is_custom": true,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "group_key": "organization"
-        },
-        {
-          "uid": "dashboard",
-          "name": "Dashboard",
-          "key_order": 1,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "globalSearch",
-          "name": "globalSearch",
-          "key_order": 2,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "workflow",
-          "name": "Workflow",
-          "key_order": 3,
-          "enabled": true,
-          "limit": 10,
-          "max_limit": 10,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "dashboard_widget",
-          "name": "dashboard_widget",
-          "key_order": 4,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "extension_widget",
-          "name": "Custom Widgets",
-          "key_order": 5,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "incubationProjAccess",
-          "name": "incubationProjAccess",
-          "key_order": 6,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "analytics",
-          "name": "Analytics",
-          "key_order": 7,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "analyticsDashboard",
-          "name": "analyticsDashboard",
-          "key_order": 8,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "newDashboardEnabled",
-          "name": "newDashboardEnabled",
-          "key_order": 9,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "marketplaceAccess",
-          "name": "Market Place Access",
-          "key_order": 11,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "livePreview",
-          "name": "Live Preview",
-          "key_order": 12,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "nestedReferencePublishAccess",
-          "name": "Nested Reference Publish Access",
-          "key_order": 13,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 10,
-          "is_name_editable": false,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "nestedReferencePublishDepth",
-          "name": "Nested Graph Publish Depth",
-          "key_order": 14,
-          "enabled": true,
-          "limit": 10,
-          "max_limit": 10,
-          "depends_on": [
-            "nestedReferencePublishAccess"
-          ],
-          "is_name_editable": false,
-          "is_required": false
-        },
-        {
-          "uid": "livePreviewGraphql",
-          "name": "Live Preview Support for GraphQL",
-          "key_order": 15,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "previewTokens",
-          "name": "Preview tokens",
-          "key_order": 16,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": [
-            "livePreview"
-          ]
-        },
-        {
-          "uid": "in_app_notification_access",
-          "name": "Global Notifications",
-          "key_order": 17,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "timelineAPI",
-          "name": "timelineAPI",
-          "key_order": 18,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": [
-            "livePreview"
-          ]
-        },
-        {
-          "uid": "productAnalyticsV2",
-          "name": "Enhanced Product Analytics App productAnalyticsV2",
-          "key_order": 21,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "visualBuilderAccess",
-          "name": "Visual Build Access",
-          "key_order": 22,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": [
-            "livePreview"
-          ]
-        },
-        {
-          "uid": "global_notification_cma",
-          "name": "Global Notifications enablement for CMA",
-          "key_order": 23,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "discovery_dashboard",
-          "name": "Platform features - Discovery Dashboard",
-          "key_order": 28,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "nestedReferencePublishLog",
-          "name": "nestedReferencePublishLog",
-          "is_custom": true,
-          "enabled": true,
-          "limit": 10,
-          "max_limit": 10,
-          "group_key": "platform"
-        },
-        {
-          "uid": "nestedSinglePublishing",
-          "name": "nestedSinglePublishing",
-          "is_custom": true,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "group_key": "platform"
-        },
-        {
-          "uid": "stacks",
-          "name": "Stacks",
-          "key_order": 1,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 100,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "stackCreationLimit",
-          "name": "Stack Creation Limit",
-          "key_order": 2,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 100,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "releases",
-          "name": "Releases",
-          "key_order": 3,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 100,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "assets",
-          "name": "Assets",
-          "key_order": 4,
-          "enabled": true,
-          "limit": 10000,
-          "max_limit": 10000,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "content_types",
-          "name": "Content Types",
-          "key_order": 5,
-          "enabled": true,
-          "limit": 10000,
-          "max_limit": 10000,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "entries",
-          "name": "Entries",
-          "key_order": 6,
-          "enabled": true,
-          "limit": 10000,
-          "max_limit": 10000,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "global_fields",
-          "name": "Global Fields",
-          "key_order": 7,
-          "enabled": true,
-          "limit": 1000,
-          "max_limit": 1000,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "metadata",
-          "name": "metadata",
-          "key_order": 8,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "entryDiscussion",
-          "name": "entryDiscussion",
-          "key_order": 10,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 100,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "inProgressEntries",
-          "name": "inProgressEntries",
-          "key_order": 11,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "preserveMetadata",
-          "name": "Preserve Metadata in multiple group,global field and blocks",
-          "key_order": 12,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "assetExtension",
-          "name": "assetExtension",
-          "key_order": 13,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "includeOptimization",
-          "name": "Include Reference Optimization",
-          "key_order": 14,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "bypassRegexChecks",
-          "name": "Bypass Field Validation Regex Checks",
-          "key_order": 15,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "socialEmbed",
-          "name": "socialEmbed",
-          "key_order": 16,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxFieldsLimit",
-          "name": "maxFieldsLimit",
-          "key_order": 18,
-          "enabled": true,
-          "limit": 250,
-          "max_limit": 250,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxMetadataSizeInBytes",
-          "name": "maxMetadataSizeInBytes",
-          "key_order": 19,
-          "enabled": true,
-          "limit": 15000,
-          "max_limit": 15000,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxReleaseItems",
-          "name": "Max Items in a Release",
-          "key_order": 20,
-          "enabled": true,
-          "limit": 500,
-          "max_limit": 500,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxIncludeReferenceDepth",
-          "name": "maxIncludeReferenceDepth",
-          "key_order": 21,
-          "enabled": true,
-          "limit": 10,
-          "max_limit": 10,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxContentTypesPerReferenceField",
-          "name": "maxContentTypesPerReferenceField",
-          "key_order": 22,
-          "enabled": true,
-          "limit": 50,
-          "max_limit": 50,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxDynamicBlocksPerContentType",
-          "name": "maxDynamicBlocksPerContentType",
-          "key_order": 23,
-          "enabled": true,
-          "limit": 50,
-          "max_limit": 50,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxEntriesPerReferenceField",
-          "name": "maxEntriesPerReferenceField",
-          "key_order": 24,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 100,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxDynamicBlockDefinations",
-          "name": "maxDynamicBlockDefinations",
-          "key_order": 25,
-          "enabled": true,
-          "limit": 50,
-          "max_limit": 50,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxDynamicBlockObjects",
-          "name": "maxDynamicBlockObjects",
-          "key_order": 26,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 100,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxAssetFolders",
-          "name": "Max Asset Folders per Stack",
-          "key_order": 27,
-          "enabled": true,
-          "limit": 10000,
-          "max_limit": 10000,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxDynamicBlocksNestingDepth",
-          "name": "Modular Blocks Depth",
-          "key_order": 28,
-          "enabled": true,
-          "limit": 50,
-          "max_limit": 50,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxAssetSize",
-          "name": "MaxAsset Size",
-          "key_order": 29,
-          "enabled": true,
-          "limit": 15000000,
-          "max_limit": 15000000,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxGlobalFieldReferredInCT",
-          "name": "Max Global Fields per Content Type",
-          "key_order": 32,
-          "enabled": true,
-          "limit": 50,
-          "max_limit": 50,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "inQueryMaxObjectsLimit",
-          "name": "inQueryMaxObjectsLimit",
-          "key_order": 33,
-          "enabled": true,
-          "limit": 1300,
-          "max_limit": 1300,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxContentTypesPerReference",
-          "name": "Max Content Types per Reference",
-          "key_order": 36,
-          "enabled": true,
-          "limit": 50,
-          "max_limit": 50,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxGlobalFieldInstances",
-          "name": "Max Global Field Instances per Content Type",
-          "key_order": 37,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 100,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "cms_variants",
-          "name": "CMS Variants",
-          "key_order": 38,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "nested_global_fields",
-          "name": "Nested Global Fields",
-          "key_order": 39,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "nested_global_fields_max_nesting_depth",
-          "name": "Nested Global Fields Max Nesting Depth",
-          "key_order": 40,
-          "enabled": true,
-          "limit": 10,
-          "max_limit": 10,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "labels",
-          "name": "Labels",
-          "key_order": 41,
-          "enabled": true,
-          "limit": 500,
-          "max_limit": 500,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "entry_tabs",
-          "name": "entry tabs",
-          "key_order": 42,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "branchesV2",
-          "name": "Branches V2",
-          "key_order": 43,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "taxonomy_localization",
-          "name": "taxonomy_localization",
-          "key_order": 42,
-          "is_custom": true,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "group_key": "stacks"
-        },
-        {
-          "uid": "locales",
-          "name": "Max Publishing Locales",
-          "key_order": 1,
-          "enabled": true,
-          "limit": 50,
-          "max_limit": 50,
-          "is_required": false,
-          "depends_on": [],
-          "uuid": "2fd299f9-dcaf-4643-90b8-bb49a4d30a8d"
-        },
-        {
-          "uid": "languageFallback",
-          "name": "Fallback Language",
-          "key_order": 2,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "fieldLevelLocalization",
-          "name": "fieldLevelLocalization",
-          "key_order": 3,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "fieldLevelLocalizationGlobalFields",
-          "name": "fieldLevelLocalizationGlobalFields",
-          "key_order": 4,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "bulkPublishEntriesLocalesLimit",
-          "name": "Bulk Publishing Multiple Locales Limit",
-          "key_order": 5,
-          "enabled": true,
-          "limit": 50,
-          "max_limit": 50,
-          "is_required": false,
-          "depends_on": [],
-          "uuid": "1e9fbe1d-b838-45b3-b060-373e09254492"
-        },
-        {
-          "uid": "publishLocalizedVersions",
-          "name": "Bulk Language Publish",
-          "key_order": 7,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "automationAccess",
-          "name": "Automation Hub Access",
-          "key_order": 1,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "automation_exec_soft_limit",
-          "name": "Execution Soft Limit",
-          "key_order": 7,
-          "enabled": true,
-          "limit": 200,
-          "max_limit": 200,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "automation_exec_hard_limit",
-          "name": "Execution Hard Limit",
-          "key_order": 8,
-          "enabled": true,
-          "limit": 200,
-          "max_limit": 200,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "graphql",
-          "name": "GraphQL",
-          "key_order": 1,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "newGraphQL",
-          "name": "GraphQL CDA",
-          "key_order": 2,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "graphqlLimit",
-          "name": "GraphQL Limit",
-          "key_order": 4,
-          "enabled": true,
-          "limit": 80,
-          "max_limit": 80,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "customIndexes",
-          "name": "customIndexes",
-          "key_order": 5,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "publishWithMetadata",
-          "name": "publishWithMetadata",
-          "key_order": 6,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "gql_max_reference_depth",
-          "name": "gql_max_reference_depth",
-          "key_order": 8,
-          "enabled": true,
-          "limit": 5,
-          "max_limit": 5,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "gql_allow_regex",
-          "name": "gql_allow_regex",
-          "key_order": 11,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "contentflyAccess",
-          "name": "Enable Launch Access",
-          "key_order": 1,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "contentfly_projects_per_org",
-          "name": "Number of Launch Projects",
-          "key_order": 2,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 100,
-          "is_required": false,
-          "depends_on": [],
-          "uuid": "cc26eea6-4d33-494e-a449-a663e0323983"
-        },
-        {
-          "uid": "contentfly_environments_per_project",
-          "name": "Number of Launch Environments per Project",
-          "key_order": 4,
-          "enabled": true,
-          "limit": 3,
-          "max_limit": 3,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "contentfly_deployment_build_hours_per_month",
-          "name": "Number of Launch Build Hours per Month",
-          "key_order": 5,
-          "enabled": true,
-          "limit": 50,
-          "max_limit": 50,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "contentfly_build_minutes_per_deployment",
-          "name": "Maximum Launch Build Minutes per Build",
-          "key_order": 6,
-          "enabled": true,
-          "limit": 60,
-          "max_limit": 60,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "contentfly_domains_per_environment",
-          "name": "Maximum Launch Domains per Environment",
-          "key_order": 7,
-          "enabled": true,
-          "limit": 0,
-          "max_limit": 0,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "contentfly_domains_per_project",
-          "name": "Maximum Launch Domains per Project",
-          "key_order": 8,
-          "enabled": true,
-          "limit": 0,
-          "max_limit": 0,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "contentfly_deployhooks_per_environment",
-          "name": "Maximum deployment hooks per Environment",
-          "key_order": 9,
-          "enabled": true,
-          "limit": 5,
-          "max_limit": 5,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "contentfly_server_compute_time_hours",
-          "name": "Maximum server compute time per Project",
-          "key_order": 10,
-          "enabled": true,
-          "limit": 50,
-          "max_limit": 50,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "rtePlugin",
-          "name": "RTE Plugin",
-          "key_order": 1,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "embeddedObjects",
-          "name": "embeddedObjects",
-          "key_order": 2,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxEmbeddedObjectsPerJsonRteField",
-          "name": "maxEmbeddedObjectsPerJsonRteField",
-          "key_order": 3,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 100,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxContentTypesPerJsonRte",
-          "name": "maxContentTypesPerJsonRte",
-          "key_order": 4,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 100,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxJsonRTEReferredInCT",
-          "name": "maxJsonRTEReferredInCT",
-          "key_order": 5,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 100,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxMultipleJsonRte",
-          "name": "maxMultipleJsonRte",
-          "key_order": 6,
-          "enabled": true,
-          "limit": 10000,
-          "max_limit": 10000,
-          "is_required": false,
-          "depends_on": [],
-          "uuid": "f7eff29e-5073-4507-82d3-043cd78841b1"
-        },
-        {
-          "uid": "maxRteJsonSizeInBytes",
-          "name": "maxRteJsonSizeInBytes",
-          "key_order": 7,
-          "enabled": true,
-          "limit": 50000,
-          "max_limit": 50000,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxJSONCustomFieldsPerCT",
-          "name": "maxJSONCustomFieldsPerCT",
-          "key_order": 8,
-          "enabled": true,
-          "limit": 10,
-          "max_limit": 10,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "maxJSONCustomFieldSize",
-          "name": "maxJSONCustomFieldSize",
-          "key_order": 9,
-          "enabled": true,
-          "limit": 45000,
-          "max_limit": 45000,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "rteComment",
-          "name": "RTE Inline Comment",
-          "key_order": 12,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": [
-            "entryDiscussion"
-          ]
-        },
-        {
-          "uid": "emptyPIIValuesInIncludeOwnerForDelivery",
-          "name": "emptyPIIValuesInIncludeOwnerForDelivery",
-          "key_order": 7,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "developerhubAccess",
-          "name": "Developer Hub Access",
-          "key_order": 1,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "developerhub_apps_per_org",
-          "name": "Apps Per Organization",
-          "key_order": 2,
-          "enabled": true,
-          "limit": 500,
-          "max_limit": 500,
-          "is_required": false,
-          "depends_on": [],
-          "uuid": "994f9496-a28a-4617-8559-b38eae0bbccd"
-        },
-        {
-          "uid": "taxonomy",
-          "name": "Taxonomy",
-          "key_order": 1,
-          "enabled": true,
-          "limit": 50,
-          "max_limit": 50,
-          "is_required": false,
-          "depends_on": [],
-          "uuid": "1bbf6393-fd6a-4df1-8bee-a09323c8fc1d"
-        },
-        {
-          "uid": "taxonomy_terms",
-          "name": "Taxonomy Terms",
-          "key_order": 2,
-          "enabled": true,
-          "limit": 10000,
-          "max_limit": 10000,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "taxonomy_terms_max_depth",
-          "name": "Taxonomy Terms Max Depth",
-          "key_order": 3,
-          "enabled": true,
-          "limit": 10,
-          "max_limit": 10,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "max_taxonomies_per_content_type",
-          "name": "Max Taxonomies Per Content Type",
-          "key_order": 4,
-          "enabled": true,
-          "limit": 20,
-          "max_limit": 20,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "taxonomy_permissions",
-          "name": "Taxonomy Permissions",
-          "key_order": 6,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "taxonomy_localization",
-          "name": "taxonomy_localization",
-          "key_order": 7,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "orgAdminAccess",
-          "name": "OrgAdmin Access",
-          "key_order": 1,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "securityConfig",
-          "name": "Security Configuration",
-          "key_order": 2,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "bulk_user_actions",
-          "name": "Bulk User Actions",
-          "key_order": 3,
-          "enabled": true,
-          "limit": 10,
-          "max_limit": 10,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "teams",
-          "name": "Teams",
-          "key_order": 4,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "webhookConfig",
-          "name": "Webhook configuration",
-          "key_order": 6,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "allowedEmailDomains",
-          "name": "Allowed Email Domains",
-          "key_order": 7,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "mfaResetAccess",
-          "name": "Allow admins to reset MFA for users",
-          "key_order": 8,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "personalizationAccess",
-          "name": "Personalization Access",
-          "key_order": 1,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "personalizeProjects",
-          "name": "Projects in Organization",
-          "key_order": 2,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 100,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "personalizeExperiencesPerProject",
-          "name": "Experiences per Project",
-          "key_order": 3,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 1000,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "personalizeAudiencesPerProject",
-          "name": "Audiences per Project",
-          "key_order": 4,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 1000,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "personalizeAttributesPerProject",
-          "name": "Custom Attributes per Project",
-          "key_order": 5,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 1000,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "personalizeEventsPerProject",
-          "name": "Custom Events per Project",
-          "key_order": 6,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 1000,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "personalizeVariantsPerExperience",
-          "name": "Variants per Experience",
-          "key_order": 7,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 100,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "personalizeManifestRequests",
-          "name": "Manifest Requests",
-          "key_order": 9,
-          "enabled": true,
-          "limit": 1000000000,
-          "max_limit": 1000000000,
-          "is_required": false,
-          "depends_on": [],
-          "uuid": "b44e4685-7a5a-480f-b806-6a7bfd325cee"
-        },
-        {
-          "uid": "maxAssetFolderDepth",
-          "name": "Max Asset folder depth",
-          "key_order": 1,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 100,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "bulk-action",
-          "name": "Bulk action",
-          "key_order": 1,
-          "enabled": true,
-          "limit": 50,
-          "max_limit": 50,
-          "is_required": false,
-          "depends_on": [],
-          "uuid": "8635888f-8d4d-42e8-ba87-543408a79df9"
-        },
-        {
-          "uid": "bulkLimit",
-          "name": "Bulk Requests Limit",
-          "key_order": 2,
-          "enabled": true,
-          "limit": 50,
-          "max_limit": 50,
-          "is_required": false,
-          "depends_on": [],
-          "uuid": "1bf3ad4a-2ba0-4bc2-a389-0215edf8910b"
-        },
-        {
-          "uid": "bulk-action-publish",
-          "name": "Bulk action Publish",
-          "key_order": 6,
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 100,
-          "is_required": false,
-          "depends_on": [],
-          "uuid": "780d8549-aa50-49b7-9876-fee45f8b513c"
-        },
-        {
-          "uid": "nestedSinglePublishing",
-          "name": "nestedSinglePublishing",
-          "key_order": 2,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": []
-        },
-        {
-          "uid": "taxonomy_publish",
-          "name": "taxonomy publish",
-          "key_order": 3,
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1,
-          "is_required": false,
-          "depends_on": [],
-          "uuid": "f891ac5b-343c-4999-82b2-1c74be414526"
-        },
-        {
-          "uid": "contentfly_projects",
-          "name": "Number of Launch Projects",
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 100
-        },
-        {
-          "uid": "contentfly_environments",
-          "name": "Number of Launch Environments",
-          "enabled": true,
-          "limit": 30,
-          "max_limit": 30
-        },
-        {
-          "uid": "maxExtensionScopeCtRef",
-          "name": "Scope of CT for custom widgets",
-          "enabled": true,
-          "limit": 23,
-          "max_limit": 23
-        },
-        {
-          "uid": "total_extensions",
-          "name": "total_extensions",
-          "enabled": true,
-          "limit": 100,
-          "max_limit": 100
-        },
-        {
-          "uid": "extConcurrentCallsLimit",
-          "name": "extConcurrentCallsLimit",
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1
-        },
-        {
-          "uid": "releaseDeploymentAllocation",
-          "name": "releaseDeploymentAllocation",
-          "enabled": true,
-          "limit": 3,
-          "max_limit": 3
-        },
-        {
-          "uid": "disableIncludeOwnerForDelivery",
-          "name": "disableIncludeOwnerForDelivery",
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1
-        },
-        {
-          "uid": "extensionsMicroservice",
-          "name": "Extensions Microservice",
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1
-        },
-        {
-          "uid": "Webhook OAuth Access",
-          "name": "webhookOauth",
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1
-        },
-        {
-          "uid": "Audit log for Contentstack Products",
-          "name": "audit_log",
-          "enabled": true,
-          "limit": 1,
-          "max_limit": 1
-        }
-      ],
-      "created_at": "2023-06-07T07:23:21.904Z",
-      "updated_at": "2026-01-22T14:39:31.571Z",
-      "blockedAssetTypes": []
-    }
-  }
-}
-
-
-
-
IsNotNull(organization)
-
-
Expected:
NotNull
-
Actual:
{
-  "_id": "6461c7329ebec1652d7ada73",
-  "uid": "blt8d282118e2094bb8",
-  "name": "SDK org",
-  "plan_id": "sdk_branch_plan",
-  "is_over_usage_allowed": true,
-  "expires_on": "2029-12-21T00:00:00Z",
-  "owner_uid": "blt37ba39e03b130064",
-  "enabled": true,
-  "created_at": "2023-05-15T05:46:26.262Z",
-  "updated_at": "2025-03-17T06:07:47.263Z",
-  "deleted_at": false,
-  "account_id": "",
-  "settings": {
-    "blockAuthQueryParams": true,
-    "allowedCDNTokens": [
-      "access_token"
-    ]
-  },
-  "created_by": "bltf7f13f53e2256a8a",
-  "updated_by": "bltfc88a63ec0767587",
-  "tags": [
-    "testing"
-  ],
-  "__v": 0,
-  "is_transfer_set": false,
-  "transfer_ownership_token": "",
-  "transfer_sent_at": "2025-03-17T06:06:30.203Z",
-  "transfer_to": "",
-  "plan": {
-    "plan_id": "sdk_branch_plan",
-    "name": "sdk_branch_plan",
-    "message": "",
-    "price": "$0",
-    "features": [
-      {
-        "uid": "users",
-        "name": "Users",
-        "key_order": 1,
-        "enabled": true,
-        "limit": 1000,
-        "max_limit": 1000,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "roles",
-        "name": "UserRoles",
-        "key_order": 2,
-        "enabled": true,
-        "limit": 10,
-        "max_limit": 10,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "sso",
-        "name": "SSO",
-        "key_order": 3,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "ssoRoles",
-        "name": "ssoRoles",
-        "key_order": 4,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "environments",
-        "name": "Environments",
-        "key_order": 1,
-        "enabled": true,
-        "limit": 400,
-        "max_limit": 400,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "branches",
-        "name": "branches",
-        "key_order": 2,
-        "enabled": true,
-        "limit": 10,
-        "max_limit": 10,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "branch_aliases",
-        "name": "branch_aliases",
-        "key_order": 3,
-        "enabled": true,
-        "limit": 10,
-        "max_limit": 10,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "digitalProperties",
-        "name": "DigitalProperties",
-        "key_order": 4,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "fieldModifierLocation",
-        "name": "Extension Field Modifier Location",
-        "key_order": 4,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "limit",
-        "name": "API Write Request Limit",
-        "key_order": 5,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 100,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "getLimit",
-        "name": "CMA GET Limit",
-        "key_order": 6,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 100,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "apiBandwidth",
-        "name": "API Bandwidth",
-        "key_order": 9,
-        "enabled": true,
-        "limit": 5000000000000,
-        "max_limit": 5000000000000,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "apiRequests",
-        "name": "API Requests",
-        "key_order": 10,
-        "enabled": true,
-        "limit": 6000000,
-        "max_limit": 6000000,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "managementTokensLimit",
-        "name": "managementTokensLimit",
-        "key_order": 11,
-        "enabled": true,
-        "limit": 20,
-        "max_limit": 20,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "newCDA",
-        "name": "New CDA API",
-        "key_order": 12,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "syncCDA",
-        "name": "default",
-        "key_order": 13,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 2,
-        "is_required": false,
-        "is_name_editable": true,
-        "depends_on": []
-      },
-      {
-        "uid": "fullPageLocation",
-        "name": "Extension Full Page Location",
-        "key_order": 13,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "newCDAWorkflow",
-        "name": "newCDAWorkflow",
-        "key_order": 14,
-        "enabled": true,
-        "limit": 0,
-        "max_limit": 3,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "getCdaLimit",
-        "name": "CDA rate limit",
-        "key_order": 15,
-        "enabled": true,
-        "limit": 500,
-        "max_limit": 500,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "workflowEntryLock",
-        "name": "Enable Workflow Stage Entry Locking ",
-        "key_order": 16,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "extension",
-        "name": "extension",
-        "key_order": 17,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "bin",
-        "name": "Enable Trash bin",
-        "key_order": 19,
-        "enabled": true,
-        "limit": 14,
-        "max_limit": 14,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "deliveryTokens",
-        "name": "DeliveryTokens",
-        "key_order": 22,
-        "enabled": true,
-        "limit": 3,
-        "max_limit": 3,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "cow_search",
-        "name": "Cow Search",
-        "key_order": 23,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "searchV2",
-        "name": "search V2",
-        "key_order": 24,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "newRefAndPartialSearch",
-        "name": "Reference and PartialSearch",
-        "key_order": 25,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "assetSearchV2",
-        "name": "Asset Search V2",
-        "key_order": 26,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "app_switcher",
-        "name": "App Switcher",
-        "key_order": 27,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "release_v2",
-        "name": "Release v2",
-        "key_order": 28,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "useCUDToViewManagementAPI",
-        "name": "View Management API for CUD Operations",
-        "key_order": 29,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "useViewManagementAPI",
-        "name": "View Management API",
-        "key_order": 30,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "globalDashboardAccess",
-        "name": "Global Dashboard Access",
-        "key_order": 34,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": [
-          "app_switcher"
-        ]
-      },
-      {
-        "uid": "readPublishLogsFromElastic",
-        "name": "Read Publish Logs from Elastic",
-        "key_order": 35,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "includeCMAReleaseLogsByDefault",
-        "name": "Include CMA Release Logs by Default",
-        "key_order": 36,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "cow_assets",
-        "name": "cow_assets",
-        "is_custom": true,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "group_key": "organization"
-      },
-      {
-        "uid": "dashboard",
-        "name": "Dashboard",
-        "key_order": 1,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "globalSearch",
-        "name": "globalSearch",
-        "key_order": 2,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "workflow",
-        "name": "Workflow",
-        "key_order": 3,
-        "enabled": true,
-        "limit": 10,
-        "max_limit": 10,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "dashboard_widget",
-        "name": "dashboard_widget",
-        "key_order": 4,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "extension_widget",
-        "name": "Custom Widgets",
-        "key_order": 5,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "incubationProjAccess",
-        "name": "incubationProjAccess",
-        "key_order": 6,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "analytics",
-        "name": "Analytics",
-        "key_order": 7,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "analyticsDashboard",
-        "name": "analyticsDashboard",
-        "key_order": 8,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "newDashboardEnabled",
-        "name": "newDashboardEnabled",
-        "key_order": 9,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "marketplaceAccess",
-        "name": "Market Place Access",
-        "key_order": 11,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "livePreview",
-        "name": "Live Preview",
-        "key_order": 12,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "nestedReferencePublishAccess",
-        "name": "Nested Reference Publish Access",
-        "key_order": 13,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 10,
-        "is_name_editable": false,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "nestedReferencePublishDepth",
-        "name": "Nested Graph Publish Depth",
-        "key_order": 14,
-        "enabled": true,
-        "limit": 10,
-        "max_limit": 10,
-        "depends_on": [
-          "nestedReferencePublishAccess"
-        ],
-        "is_name_editable": false,
-        "is_required": false
-      },
-      {
-        "uid": "livePreviewGraphql",
-        "name": "Live Preview Support for GraphQL",
-        "key_order": 15,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "previewTokens",
-        "name": "Preview tokens",
-        "key_order": 16,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": [
-          "livePreview"
-        ]
-      },
-      {
-        "uid": "in_app_notification_access",
-        "name": "Global Notifications",
-        "key_order": 17,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "timelineAPI",
-        "name": "timelineAPI",
-        "key_order": 18,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": [
-          "livePreview"
-        ]
-      },
-      {
-        "uid": "productAnalyticsV2",
-        "name": "Enhanced Product Analytics App productAnalyticsV2",
-        "key_order": 21,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "visualBuilderAccess",
-        "name": "Visual Build Access",
-        "key_order": 22,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": [
-          "livePreview"
-        ]
-      },
-      {
-        "uid": "global_notification_cma",
-        "name": "Global Notifications enablement for CMA",
-        "key_order": 23,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "discovery_dashboard",
-        "name": "Platform features - Discovery Dashboard",
-        "key_order": 28,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "nestedReferencePublishLog",
-        "name": "nestedReferencePublishLog",
-        "is_custom": true,
-        "enabled": true,
-        "limit": 10,
-        "max_limit": 10,
-        "group_key": "platform"
-      },
-      {
-        "uid": "nestedSinglePublishing",
-        "name": "nestedSinglePublishing",
-        "is_custom": true,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "group_key": "platform"
-      },
-      {
-        "uid": "stacks",
-        "name": "Stacks",
-        "key_order": 1,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 100,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "stackCreationLimit",
-        "name": "Stack Creation Limit",
-        "key_order": 2,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 100,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "releases",
-        "name": "Releases",
-        "key_order": 3,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 100,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "assets",
-        "name": "Assets",
-        "key_order": 4,
-        "enabled": true,
-        "limit": 10000,
-        "max_limit": 10000,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "content_types",
-        "name": "Content Types",
-        "key_order": 5,
-        "enabled": true,
-        "limit": 10000,
-        "max_limit": 10000,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "entries",
-        "name": "Entries",
-        "key_order": 6,
-        "enabled": true,
-        "limit": 10000,
-        "max_limit": 10000,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "global_fields",
-        "name": "Global Fields",
-        "key_order": 7,
-        "enabled": true,
-        "limit": 1000,
-        "max_limit": 1000,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "metadata",
-        "name": "metadata",
-        "key_order": 8,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "entryDiscussion",
-        "name": "entryDiscussion",
-        "key_order": 10,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 100,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "inProgressEntries",
-        "name": "inProgressEntries",
-        "key_order": 11,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "preserveMetadata",
-        "name": "Preserve Metadata in multiple group,global field and blocks",
-        "key_order": 12,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "assetExtension",
-        "name": "assetExtension",
-        "key_order": 13,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "includeOptimization",
-        "name": "Include Reference Optimization",
-        "key_order": 14,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "bypassRegexChecks",
-        "name": "Bypass Field Validation Regex Checks",
-        "key_order": 15,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "socialEmbed",
-        "name": "socialEmbed",
-        "key_order": 16,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxFieldsLimit",
-        "name": "maxFieldsLimit",
-        "key_order": 18,
-        "enabled": true,
-        "limit": 250,
-        "max_limit": 250,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxMetadataSizeInBytes",
-        "name": "maxMetadataSizeInBytes",
-        "key_order": 19,
-        "enabled": true,
-        "limit": 15000,
-        "max_limit": 15000,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxReleaseItems",
-        "name": "Max Items in a Release",
-        "key_order": 20,
-        "enabled": true,
-        "limit": 500,
-        "max_limit": 500,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxIncludeReferenceDepth",
-        "name": "maxIncludeReferenceDepth",
-        "key_order": 21,
-        "enabled": true,
-        "limit": 10,
-        "max_limit": 10,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxContentTypesPerReferenceField",
-        "name": "maxContentTypesPerReferenceField",
-        "key_order": 22,
-        "enabled": true,
-        "limit": 50,
-        "max_limit": 50,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxDynamicBlocksPerContentType",
-        "name": "maxDynamicBlocksPerContentType",
-        "key_order": 23,
-        "enabled": true,
-        "limit": 50,
-        "max_limit": 50,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxEntriesPerReferenceField",
-        "name": "maxEntriesPerReferenceField",
-        "key_order": 24,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 100,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxDynamicBlockDefinations",
-        "name": "maxDynamicBlockDefinations",
-        "key_order": 25,
-        "enabled": true,
-        "limit": 50,
-        "max_limit": 50,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxDynamicBlockObjects",
-        "name": "maxDynamicBlockObjects",
-        "key_order": 26,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 100,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxAssetFolders",
-        "name": "Max Asset Folders per Stack",
-        "key_order": 27,
-        "enabled": true,
-        "limit": 10000,
-        "max_limit": 10000,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxDynamicBlocksNestingDepth",
-        "name": "Modular Blocks Depth",
-        "key_order": 28,
-        "enabled": true,
-        "limit": 50,
-        "max_limit": 50,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxAssetSize",
-        "name": "MaxAsset Size",
-        "key_order": 29,
-        "enabled": true,
-        "limit": 15000000,
-        "max_limit": 15000000,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxGlobalFieldReferredInCT",
-        "name": "Max Global Fields per Content Type",
-        "key_order": 32,
-        "enabled": true,
-        "limit": 50,
-        "max_limit": 50,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "inQueryMaxObjectsLimit",
-        "name": "inQueryMaxObjectsLimit",
-        "key_order": 33,
-        "enabled": true,
-        "limit": 1300,
-        "max_limit": 1300,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxContentTypesPerReference",
-        "name": "Max Content Types per Reference",
-        "key_order": 36,
-        "enabled": true,
-        "limit": 50,
-        "max_limit": 50,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxGlobalFieldInstances",
-        "name": "Max Global Field Instances per Content Type",
-        "key_order": 37,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 100,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "cms_variants",
-        "name": "CMS Variants",
-        "key_order": 38,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "nested_global_fields",
-        "name": "Nested Global Fields",
-        "key_order": 39,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "nested_global_fields_max_nesting_depth",
-        "name": "Nested Global Fields Max Nesting Depth",
-        "key_order": 40,
-        "enabled": true,
-        "limit": 10,
-        "max_limit": 10,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "labels",
-        "name": "Labels",
-        "key_order": 41,
-        "enabled": true,
-        "limit": 500,
-        "max_limit": 500,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "entry_tabs",
-        "name": "entry tabs",
-        "key_order": 42,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "branchesV2",
-        "name": "Branches V2",
-        "key_order": 43,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "taxonomy_localization",
-        "name": "taxonomy_localization",
-        "key_order": 42,
-        "is_custom": true,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "group_key": "stacks"
-      },
-      {
-        "uid": "locales",
-        "name": "Max Publishing Locales",
-        "key_order": 1,
-        "enabled": true,
-        "limit": 50,
-        "max_limit": 50,
-        "is_required": false,
-        "depends_on": [],
-        "uuid": "2fd299f9-dcaf-4643-90b8-bb49a4d30a8d"
-      },
-      {
-        "uid": "languageFallback",
-        "name": "Fallback Language",
-        "key_order": 2,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "fieldLevelLocalization",
-        "name": "fieldLevelLocalization",
-        "key_order": 3,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "fieldLevelLocalizationGlobalFields",
-        "name": "fieldLevelLocalizationGlobalFields",
-        "key_order": 4,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "bulkPublishEntriesLocalesLimit",
-        "name": "Bulk Publishing Multiple Locales Limit",
-        "key_order": 5,
-        "enabled": true,
-        "limit": 50,
-        "max_limit": 50,
-        "is_required": false,
-        "depends_on": [],
-        "uuid": "1e9fbe1d-b838-45b3-b060-373e09254492"
-      },
-      {
-        "uid": "publishLocalizedVersions",
-        "name": "Bulk Language Publish",
-        "key_order": 7,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "automationAccess",
-        "name": "Automation Hub Access",
-        "key_order": 1,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "automation_exec_soft_limit",
-        "name": "Execution Soft Limit",
-        "key_order": 7,
-        "enabled": true,
-        "limit": 200,
-        "max_limit": 200,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "automation_exec_hard_limit",
-        "name": "Execution Hard Limit",
-        "key_order": 8,
-        "enabled": true,
-        "limit": 200,
-        "max_limit": 200,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "graphql",
-        "name": "GraphQL",
-        "key_order": 1,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "newGraphQL",
-        "name": "GraphQL CDA",
-        "key_order": 2,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "graphqlLimit",
-        "name": "GraphQL Limit",
-        "key_order": 4,
-        "enabled": true,
-        "limit": 80,
-        "max_limit": 80,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "customIndexes",
-        "name": "customIndexes",
-        "key_order": 5,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "publishWithMetadata",
-        "name": "publishWithMetadata",
-        "key_order": 6,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "gql_max_reference_depth",
-        "name": "gql_max_reference_depth",
-        "key_order": 8,
-        "enabled": true,
-        "limit": 5,
-        "max_limit": 5,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "gql_allow_regex",
-        "name": "gql_allow_regex",
-        "key_order": 11,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "contentflyAccess",
-        "name": "Enable Launch Access",
-        "key_order": 1,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "contentfly_projects_per_org",
-        "name": "Number of Launch Projects",
-        "key_order": 2,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 100,
-        "is_required": false,
-        "depends_on": [],
-        "uuid": "cc26eea6-4d33-494e-a449-a663e0323983"
-      },
-      {
-        "uid": "contentfly_environments_per_project",
-        "name": "Number of Launch Environments per Project",
-        "key_order": 4,
-        "enabled": true,
-        "limit": 3,
-        "max_limit": 3,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "contentfly_deployment_build_hours_per_month",
-        "name": "Number of Launch Build Hours per Month",
-        "key_order": 5,
-        "enabled": true,
-        "limit": 50,
-        "max_limit": 50,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "contentfly_build_minutes_per_deployment",
-        "name": "Maximum Launch Build Minutes per Build",
-        "key_order": 6,
-        "enabled": true,
-        "limit": 60,
-        "max_limit": 60,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "contentfly_domains_per_environment",
-        "name": "Maximum Launch Domains per Environment",
-        "key_order": 7,
-        "enabled": true,
-        "limit": 0,
-        "max_limit": 0,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "contentfly_domains_per_project",
-        "name": "Maximum Launch Domains per Project",
-        "key_order": 8,
-        "enabled": true,
-        "limit": 0,
-        "max_limit": 0,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "contentfly_deployhooks_per_environment",
-        "name": "Maximum deployment hooks per Environment",
-        "key_order": 9,
-        "enabled": true,
-        "limit": 5,
-        "max_limit": 5,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "contentfly_server_compute_time_hours",
-        "name": "Maximum server compute time per Project",
-        "key_order": 10,
-        "enabled": true,
-        "limit": 50,
-        "max_limit": 50,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "rtePlugin",
-        "name": "RTE Plugin",
-        "key_order": 1,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "embeddedObjects",
-        "name": "embeddedObjects",
-        "key_order": 2,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxEmbeddedObjectsPerJsonRteField",
-        "name": "maxEmbeddedObjectsPerJsonRteField",
-        "key_order": 3,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 100,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxContentTypesPerJsonRte",
-        "name": "maxContentTypesPerJsonRte",
-        "key_order": 4,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 100,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxJsonRTEReferredInCT",
-        "name": "maxJsonRTEReferredInCT",
-        "key_order": 5,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 100,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxMultipleJsonRte",
-        "name": "maxMultipleJsonRte",
-        "key_order": 6,
-        "enabled": true,
-        "limit": 10000,
-        "max_limit": 10000,
-        "is_required": false,
-        "depends_on": [],
-        "uuid": "f7eff29e-5073-4507-82d3-043cd78841b1"
-      },
-      {
-        "uid": "maxRteJsonSizeInBytes",
-        "name": "maxRteJsonSizeInBytes",
-        "key_order": 7,
-        "enabled": true,
-        "limit": 50000,
-        "max_limit": 50000,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxJSONCustomFieldsPerCT",
-        "name": "maxJSONCustomFieldsPerCT",
-        "key_order": 8,
-        "enabled": true,
-        "limit": 10,
-        "max_limit": 10,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "maxJSONCustomFieldSize",
-        "name": "maxJSONCustomFieldSize",
-        "key_order": 9,
-        "enabled": true,
-        "limit": 45000,
-        "max_limit": 45000,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "rteComment",
-        "name": "RTE Inline Comment",
-        "key_order": 12,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": [
-          "entryDiscussion"
-        ]
-      },
-      {
-        "uid": "emptyPIIValuesInIncludeOwnerForDelivery",
-        "name": "emptyPIIValuesInIncludeOwnerForDelivery",
-        "key_order": 7,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "developerhubAccess",
-        "name": "Developer Hub Access",
-        "key_order": 1,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "developerhub_apps_per_org",
-        "name": "Apps Per Organization",
-        "key_order": 2,
-        "enabled": true,
-        "limit": 500,
-        "max_limit": 500,
-        "is_required": false,
-        "depends_on": [],
-        "uuid": "994f9496-a28a-4617-8559-b38eae0bbccd"
-      },
-      {
-        "uid": "taxonomy",
-        "name": "Taxonomy",
-        "key_order": 1,
-        "enabled": true,
-        "limit": 50,
-        "max_limit": 50,
-        "is_required": false,
-        "depends_on": [],
-        "uuid": "1bbf6393-fd6a-4df1-8bee-a09323c8fc1d"
-      },
-      {
-        "uid": "taxonomy_terms",
-        "name": "Taxonomy Terms",
-        "key_order": 2,
-        "enabled": true,
-        "limit": 10000,
-        "max_limit": 10000,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "taxonomy_terms_max_depth",
-        "name": "Taxonomy Terms Max Depth",
-        "key_order": 3,
-        "enabled": true,
-        "limit": 10,
-        "max_limit": 10,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "max_taxonomies_per_content_type",
-        "name": "Max Taxonomies Per Content Type",
-        "key_order": 4,
-        "enabled": true,
-        "limit": 20,
-        "max_limit": 20,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "taxonomy_permissions",
-        "name": "Taxonomy Permissions",
-        "key_order": 6,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "taxonomy_localization",
-        "name": "taxonomy_localization",
-        "key_order": 7,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "orgAdminAccess",
-        "name": "OrgAdmin Access",
-        "key_order": 1,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "securityConfig",
-        "name": "Security Configuration",
-        "key_order": 2,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "bulk_user_actions",
-        "name": "Bulk User Actions",
-        "key_order": 3,
-        "enabled": true,
-        "limit": 10,
-        "max_limit": 10,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "teams",
-        "name": "Teams",
-        "key_order": 4,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "webhookConfig",
-        "name": "Webhook configuration",
-        "key_order": 6,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "allowedEmailDomains",
-        "name": "Allowed Email Domains",
-        "key_order": 7,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "mfaResetAccess",
-        "name": "Allow admins to reset MFA for users",
-        "key_order": 8,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "personalizationAccess",
-        "name": "Personalization Access",
-        "key_order": 1,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "personalizeProjects",
-        "name": "Projects in Organization",
-        "key_order": 2,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 100,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "personalizeExperiencesPerProject",
-        "name": "Experiences per Project",
-        "key_order": 3,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 1000,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "personalizeAudiencesPerProject",
-        "name": "Audiences per Project",
-        "key_order": 4,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 1000,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "personalizeAttributesPerProject",
-        "name": "Custom Attributes per Project",
-        "key_order": 5,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 1000,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "personalizeEventsPerProject",
-        "name": "Custom Events per Project",
-        "key_order": 6,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 1000,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "personalizeVariantsPerExperience",
-        "name": "Variants per Experience",
-        "key_order": 7,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 100,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "personalizeManifestRequests",
-        "name": "Manifest Requests",
-        "key_order": 9,
-        "enabled": true,
-        "limit": 1000000000,
-        "max_limit": 1000000000,
-        "is_required": false,
-        "depends_on": [],
-        "uuid": "b44e4685-7a5a-480f-b806-6a7bfd325cee"
-      },
-      {
-        "uid": "maxAssetFolderDepth",
-        "name": "Max Asset folder depth",
-        "key_order": 1,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 100,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "bulk-action",
-        "name": "Bulk action",
-        "key_order": 1,
-        "enabled": true,
-        "limit": 50,
-        "max_limit": 50,
-        "is_required": false,
-        "depends_on": [],
-        "uuid": "8635888f-8d4d-42e8-ba87-543408a79df9"
-      },
-      {
-        "uid": "bulkLimit",
-        "name": "Bulk Requests Limit",
-        "key_order": 2,
-        "enabled": true,
-        "limit": 50,
-        "max_limit": 50,
-        "is_required": false,
-        "depends_on": [],
-        "uuid": "1bf3ad4a-2ba0-4bc2-a389-0215edf8910b"
-      },
-      {
-        "uid": "bulk-action-publish",
-        "name": "Bulk action Publish",
-        "key_order": 6,
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 100,
-        "is_required": false,
-        "depends_on": [],
-        "uuid": "780d8549-aa50-49b7-9876-fee45f8b513c"
-      },
-      {
-        "uid": "nestedSinglePublishing",
-        "name": "nestedSinglePublishing",
-        "key_order": 2,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": []
-      },
-      {
-        "uid": "taxonomy_publish",
-        "name": "taxonomy publish",
-        "key_order": 3,
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1,
-        "is_required": false,
-        "depends_on": [],
-        "uuid": "f891ac5b-343c-4999-82b2-1c74be414526"
-      },
-      {
-        "uid": "contentfly_projects",
-        "name": "Number of Launch Projects",
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 100
-      },
-      {
-        "uid": "contentfly_environments",
-        "name": "Number of Launch Environments",
-        "enabled": true,
-        "limit": 30,
-        "max_limit": 30
-      },
-      {
-        "uid": "maxExtensionScopeCtRef",
-        "name": "Scope of CT for custom widgets",
-        "enabled": true,
-        "limit": 23,
-        "max_limit": 23
-      },
-      {
-        "uid": "total_extensions",
-        "name": "total_extensions",
-        "enabled": true,
-        "limit": 100,
-        "max_limit": 100
-      },
-      {
-        "uid": "extConcurrentCallsLimit",
-        "name": "extConcurrentCallsLimit",
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1
-      },
-      {
-        "uid": "releaseDeploymentAllocation",
-        "name": "releaseDeploymentAllocation",
-        "enabled": true,
-        "limit": 3,
-        "max_limit": 3
-      },
-      {
-        "uid": "disableIncludeOwnerForDelivery",
-        "name": "disableIncludeOwnerForDelivery",
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1
-      },
-      {
-        "uid": "extensionsMicroservice",
-        "name": "Extensions Microservice",
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1
-      },
-      {
-        "uid": "Webhook OAuth Access",
-        "name": "webhookOauth",
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1
-      },
-      {
-        "uid": "Audit log for Contentstack Products",
-        "name": "audit_log",
-        "enabled": true,
-        "limit": 1,
-        "max_limit": 1
-      }
-    ],
-    "created_at": "2023-06-07T07:23:21.904Z",
-    "updated_at": "2026-01-22T14:39:31.571Z",
-    "blockedAssetTypes": []
-  }
-}
-
-
-
-
IsNotNull(plan)
-
-
Expected:
NotNull
-
Actual:
{
-  "plan_id": "sdk_branch_plan",
-  "name": "sdk_branch_plan",
-  "message": "",
-  "price": "$0",
-  "features": [
-    {
-      "uid": "users",
-      "name": "Users",
-      "key_order": 1,
-      "enabled": true,
-      "limit": 1000,
-      "max_limit": 1000,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "roles",
-      "name": "UserRoles",
-      "key_order": 2,
-      "enabled": true,
-      "limit": 10,
-      "max_limit": 10,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "sso",
-      "name": "SSO",
-      "key_order": 3,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "ssoRoles",
-      "name": "ssoRoles",
-      "key_order": 4,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "environments",
-      "name": "Environments",
-      "key_order": 1,
-      "enabled": true,
-      "limit": 400,
-      "max_limit": 400,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "branches",
-      "name": "branches",
-      "key_order": 2,
-      "enabled": true,
-      "limit": 10,
-      "max_limit": 10,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "branch_aliases",
-      "name": "branch_aliases",
-      "key_order": 3,
-      "enabled": true,
-      "limit": 10,
-      "max_limit": 10,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "digitalProperties",
-      "name": "DigitalProperties",
-      "key_order": 4,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "fieldModifierLocation",
-      "name": "Extension Field Modifier Location",
-      "key_order": 4,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "limit",
-      "name": "API Write Request Limit",
-      "key_order": 5,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 100,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "getLimit",
-      "name": "CMA GET Limit",
-      "key_order": 6,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 100,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "apiBandwidth",
-      "name": "API Bandwidth",
-      "key_order": 9,
-      "enabled": true,
-      "limit": 5000000000000,
-      "max_limit": 5000000000000,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "apiRequests",
-      "name": "API Requests",
-      "key_order": 10,
-      "enabled": true,
-      "limit": 6000000,
-      "max_limit": 6000000,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "managementTokensLimit",
-      "name": "managementTokensLimit",
-      "key_order": 11,
-      "enabled": true,
-      "limit": 20,
-      "max_limit": 20,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "newCDA",
-      "name": "New CDA API",
-      "key_order": 12,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "syncCDA",
-      "name": "default",
-      "key_order": 13,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 2,
-      "is_required": false,
-      "is_name_editable": true,
-      "depends_on": []
-    },
-    {
-      "uid": "fullPageLocation",
-      "name": "Extension Full Page Location",
-      "key_order": 13,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "newCDAWorkflow",
-      "name": "newCDAWorkflow",
-      "key_order": 14,
-      "enabled": true,
-      "limit": 0,
-      "max_limit": 3,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "getCdaLimit",
-      "name": "CDA rate limit",
-      "key_order": 15,
-      "enabled": true,
-      "limit": 500,
-      "max_limit": 500,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "workflowEntryLock",
-      "name": "Enable Workflow Stage Entry Locking ",
-      "key_order": 16,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "extension",
-      "name": "extension",
-      "key_order": 17,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "bin",
-      "name": "Enable Trash bin",
-      "key_order": 19,
-      "enabled": true,
-      "limit": 14,
-      "max_limit": 14,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "deliveryTokens",
-      "name": "DeliveryTokens",
-      "key_order": 22,
-      "enabled": true,
-      "limit": 3,
-      "max_limit": 3,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "cow_search",
-      "name": "Cow Search",
-      "key_order": 23,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "searchV2",
-      "name": "search V2",
-      "key_order": 24,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "newRefAndPartialSearch",
-      "name": "Reference and PartialSearch",
-      "key_order": 25,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "assetSearchV2",
-      "name": "Asset Search V2",
-      "key_order": 26,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "app_switcher",
-      "name": "App Switcher",
-      "key_order": 27,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "release_v2",
-      "name": "Release v2",
-      "key_order": 28,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "useCUDToViewManagementAPI",
-      "name": "View Management API for CUD Operations",
-      "key_order": 29,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "useViewManagementAPI",
-      "name": "View Management API",
-      "key_order": 30,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "globalDashboardAccess",
-      "name": "Global Dashboard Access",
-      "key_order": 34,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": [
-        "app_switcher"
-      ]
-    },
-    {
-      "uid": "readPublishLogsFromElastic",
-      "name": "Read Publish Logs from Elastic",
-      "key_order": 35,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "includeCMAReleaseLogsByDefault",
-      "name": "Include CMA Release Logs by Default",
-      "key_order": 36,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "cow_assets",
-      "name": "cow_assets",
-      "is_custom": true,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "group_key": "organization"
-    },
-    {
-      "uid": "dashboard",
-      "name": "Dashboard",
-      "key_order": 1,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "globalSearch",
-      "name": "globalSearch",
-      "key_order": 2,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "workflow",
-      "name": "Workflow",
-      "key_order": 3,
-      "enabled": true,
-      "limit": 10,
-      "max_limit": 10,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "dashboard_widget",
-      "name": "dashboard_widget",
-      "key_order": 4,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "extension_widget",
-      "name": "Custom Widgets",
-      "key_order": 5,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "incubationProjAccess",
-      "name": "incubationProjAccess",
-      "key_order": 6,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "analytics",
-      "name": "Analytics",
-      "key_order": 7,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "analyticsDashboard",
-      "name": "analyticsDashboard",
-      "key_order": 8,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "newDashboardEnabled",
-      "name": "newDashboardEnabled",
-      "key_order": 9,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "marketplaceAccess",
-      "name": "Market Place Access",
-      "key_order": 11,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "livePreview",
-      "name": "Live Preview",
-      "key_order": 12,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "nestedReferencePublishAccess",
-      "name": "Nested Reference Publish Access",
-      "key_order": 13,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 10,
-      "is_name_editable": false,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "nestedReferencePublishDepth",
-      "name": "Nested Graph Publish Depth",
-      "key_order": 14,
-      "enabled": true,
-      "limit": 10,
-      "max_limit": 10,
-      "depends_on": [
-        "nestedReferencePublishAccess"
-      ],
-      "is_name_editable": false,
-      "is_required": false
-    },
-    {
-      "uid": "livePreviewGraphql",
-      "name": "Live Preview Support for GraphQL",
-      "key_order": 15,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "previewTokens",
-      "name": "Preview tokens",
-      "key_order": 16,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": [
-        "livePreview"
-      ]
-    },
-    {
-      "uid": "in_app_notification_access",
-      "name": "Global Notifications",
-      "key_order": 17,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "timelineAPI",
-      "name": "timelineAPI",
-      "key_order": 18,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": [
-        "livePreview"
-      ]
-    },
-    {
-      "uid": "productAnalyticsV2",
-      "name": "Enhanced Product Analytics App productAnalyticsV2",
-      "key_order": 21,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "visualBuilderAccess",
-      "name": "Visual Build Access",
-      "key_order": 22,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": [
-        "livePreview"
-      ]
-    },
-    {
-      "uid": "global_notification_cma",
-      "name": "Global Notifications enablement for CMA",
-      "key_order": 23,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "discovery_dashboard",
-      "name": "Platform features - Discovery Dashboard",
-      "key_order": 28,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "nestedReferencePublishLog",
-      "name": "nestedReferencePublishLog",
-      "is_custom": true,
-      "enabled": true,
-      "limit": 10,
-      "max_limit": 10,
-      "group_key": "platform"
-    },
-    {
-      "uid": "nestedSinglePublishing",
-      "name": "nestedSinglePublishing",
-      "is_custom": true,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "group_key": "platform"
-    },
-    {
-      "uid": "stacks",
-      "name": "Stacks",
-      "key_order": 1,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 100,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "stackCreationLimit",
-      "name": "Stack Creation Limit",
-      "key_order": 2,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 100,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "releases",
-      "name": "Releases",
-      "key_order": 3,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 100,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "assets",
-      "name": "Assets",
-      "key_order": 4,
-      "enabled": true,
-      "limit": 10000,
-      "max_limit": 10000,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "content_types",
-      "name": "Content Types",
-      "key_order": 5,
-      "enabled": true,
-      "limit": 10000,
-      "max_limit": 10000,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "entries",
-      "name": "Entries",
-      "key_order": 6,
-      "enabled": true,
-      "limit": 10000,
-      "max_limit": 10000,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "global_fields",
-      "name": "Global Fields",
-      "key_order": 7,
-      "enabled": true,
-      "limit": 1000,
-      "max_limit": 1000,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "metadata",
-      "name": "metadata",
-      "key_order": 8,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "entryDiscussion",
-      "name": "entryDiscussion",
-      "key_order": 10,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 100,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "inProgressEntries",
-      "name": "inProgressEntries",
-      "key_order": 11,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "preserveMetadata",
-      "name": "Preserve Metadata in multiple group,global field and blocks",
-      "key_order": 12,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "assetExtension",
-      "name": "assetExtension",
-      "key_order": 13,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "includeOptimization",
-      "name": "Include Reference Optimization",
-      "key_order": 14,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "bypassRegexChecks",
-      "name": "Bypass Field Validation Regex Checks",
-      "key_order": 15,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "socialEmbed",
-      "name": "socialEmbed",
-      "key_order": 16,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxFieldsLimit",
-      "name": "maxFieldsLimit",
-      "key_order": 18,
-      "enabled": true,
-      "limit": 250,
-      "max_limit": 250,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxMetadataSizeInBytes",
-      "name": "maxMetadataSizeInBytes",
-      "key_order": 19,
-      "enabled": true,
-      "limit": 15000,
-      "max_limit": 15000,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxReleaseItems",
-      "name": "Max Items in a Release",
-      "key_order": 20,
-      "enabled": true,
-      "limit": 500,
-      "max_limit": 500,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxIncludeReferenceDepth",
-      "name": "maxIncludeReferenceDepth",
-      "key_order": 21,
-      "enabled": true,
-      "limit": 10,
-      "max_limit": 10,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxContentTypesPerReferenceField",
-      "name": "maxContentTypesPerReferenceField",
-      "key_order": 22,
-      "enabled": true,
-      "limit": 50,
-      "max_limit": 50,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxDynamicBlocksPerContentType",
-      "name": "maxDynamicBlocksPerContentType",
-      "key_order": 23,
-      "enabled": true,
-      "limit": 50,
-      "max_limit": 50,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxEntriesPerReferenceField",
-      "name": "maxEntriesPerReferenceField",
-      "key_order": 24,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 100,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxDynamicBlockDefinations",
-      "name": "maxDynamicBlockDefinations",
-      "key_order": 25,
-      "enabled": true,
-      "limit": 50,
-      "max_limit": 50,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxDynamicBlockObjects",
-      "name": "maxDynamicBlockObjects",
-      "key_order": 26,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 100,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxAssetFolders",
-      "name": "Max Asset Folders per Stack",
-      "key_order": 27,
-      "enabled": true,
-      "limit": 10000,
-      "max_limit": 10000,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxDynamicBlocksNestingDepth",
-      "name": "Modular Blocks Depth",
-      "key_order": 28,
-      "enabled": true,
-      "limit": 50,
-      "max_limit": 50,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxAssetSize",
-      "name": "MaxAsset Size",
-      "key_order": 29,
-      "enabled": true,
-      "limit": 15000000,
-      "max_limit": 15000000,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxGlobalFieldReferredInCT",
-      "name": "Max Global Fields per Content Type",
-      "key_order": 32,
-      "enabled": true,
-      "limit": 50,
-      "max_limit": 50,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "inQueryMaxObjectsLimit",
-      "name": "inQueryMaxObjectsLimit",
-      "key_order": 33,
-      "enabled": true,
-      "limit": 1300,
-      "max_limit": 1300,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxContentTypesPerReference",
-      "name": "Max Content Types per Reference",
-      "key_order": 36,
-      "enabled": true,
-      "limit": 50,
-      "max_limit": 50,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxGlobalFieldInstances",
-      "name": "Max Global Field Instances per Content Type",
-      "key_order": 37,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 100,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "cms_variants",
-      "name": "CMS Variants",
-      "key_order": 38,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "nested_global_fields",
-      "name": "Nested Global Fields",
-      "key_order": 39,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "nested_global_fields_max_nesting_depth",
-      "name": "Nested Global Fields Max Nesting Depth",
-      "key_order": 40,
-      "enabled": true,
-      "limit": 10,
-      "max_limit": 10,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "labels",
-      "name": "Labels",
-      "key_order": 41,
-      "enabled": true,
-      "limit": 500,
-      "max_limit": 500,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "entry_tabs",
-      "name": "entry tabs",
-      "key_order": 42,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "branchesV2",
-      "name": "Branches V2",
-      "key_order": 43,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "taxonomy_localization",
-      "name": "taxonomy_localization",
-      "key_order": 42,
-      "is_custom": true,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "group_key": "stacks"
-    },
-    {
-      "uid": "locales",
-      "name": "Max Publishing Locales",
-      "key_order": 1,
-      "enabled": true,
-      "limit": 50,
-      "max_limit": 50,
-      "is_required": false,
-      "depends_on": [],
-      "uuid": "2fd299f9-dcaf-4643-90b8-bb49a4d30a8d"
-    },
-    {
-      "uid": "languageFallback",
-      "name": "Fallback Language",
-      "key_order": 2,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "fieldLevelLocalization",
-      "name": "fieldLevelLocalization",
-      "key_order": 3,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "fieldLevelLocalizationGlobalFields",
-      "name": "fieldLevelLocalizationGlobalFields",
-      "key_order": 4,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "bulkPublishEntriesLocalesLimit",
-      "name": "Bulk Publishing Multiple Locales Limit",
-      "key_order": 5,
-      "enabled": true,
-      "limit": 50,
-      "max_limit": 50,
-      "is_required": false,
-      "depends_on": [],
-      "uuid": "1e9fbe1d-b838-45b3-b060-373e09254492"
-    },
-    {
-      "uid": "publishLocalizedVersions",
-      "name": "Bulk Language Publish",
-      "key_order": 7,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "automationAccess",
-      "name": "Automation Hub Access",
-      "key_order": 1,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "automation_exec_soft_limit",
-      "name": "Execution Soft Limit",
-      "key_order": 7,
-      "enabled": true,
-      "limit": 200,
-      "max_limit": 200,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "automation_exec_hard_limit",
-      "name": "Execution Hard Limit",
-      "key_order": 8,
-      "enabled": true,
-      "limit": 200,
-      "max_limit": 200,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "graphql",
-      "name": "GraphQL",
-      "key_order": 1,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "newGraphQL",
-      "name": "GraphQL CDA",
-      "key_order": 2,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "graphqlLimit",
-      "name": "GraphQL Limit",
-      "key_order": 4,
-      "enabled": true,
-      "limit": 80,
-      "max_limit": 80,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "customIndexes",
-      "name": "customIndexes",
-      "key_order": 5,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "publishWithMetadata",
-      "name": "publishWithMetadata",
-      "key_order": 6,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "gql_max_reference_depth",
-      "name": "gql_max_reference_depth",
-      "key_order": 8,
-      "enabled": true,
-      "limit": 5,
-      "max_limit": 5,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "gql_allow_regex",
-      "name": "gql_allow_regex",
-      "key_order": 11,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "contentflyAccess",
-      "name": "Enable Launch Access",
-      "key_order": 1,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "contentfly_projects_per_org",
-      "name": "Number of Launch Projects",
-      "key_order": 2,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 100,
-      "is_required": false,
-      "depends_on": [],
-      "uuid": "cc26eea6-4d33-494e-a449-a663e0323983"
-    },
-    {
-      "uid": "contentfly_environments_per_project",
-      "name": "Number of Launch Environments per Project",
-      "key_order": 4,
-      "enabled": true,
-      "limit": 3,
-      "max_limit": 3,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "contentfly_deployment_build_hours_per_month",
-      "name": "Number of Launch Build Hours per Month",
-      "key_order": 5,
-      "enabled": true,
-      "limit": 50,
-      "max_limit": 50,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "contentfly_build_minutes_per_deployment",
-      "name": "Maximum Launch Build Minutes per Build",
-      "key_order": 6,
-      "enabled": true,
-      "limit": 60,
-      "max_limit": 60,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "contentfly_domains_per_environment",
-      "name": "Maximum Launch Domains per Environment",
-      "key_order": 7,
-      "enabled": true,
-      "limit": 0,
-      "max_limit": 0,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "contentfly_domains_per_project",
-      "name": "Maximum Launch Domains per Project",
-      "key_order": 8,
-      "enabled": true,
-      "limit": 0,
-      "max_limit": 0,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "contentfly_deployhooks_per_environment",
-      "name": "Maximum deployment hooks per Environment",
-      "key_order": 9,
-      "enabled": true,
-      "limit": 5,
-      "max_limit": 5,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "contentfly_server_compute_time_hours",
-      "name": "Maximum server compute time per Project",
-      "key_order": 10,
-      "enabled": true,
-      "limit": 50,
-      "max_limit": 50,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "rtePlugin",
-      "name": "RTE Plugin",
-      "key_order": 1,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "embeddedObjects",
-      "name": "embeddedObjects",
-      "key_order": 2,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxEmbeddedObjectsPerJsonRteField",
-      "name": "maxEmbeddedObjectsPerJsonRteField",
-      "key_order": 3,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 100,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxContentTypesPerJsonRte",
-      "name": "maxContentTypesPerJsonRte",
-      "key_order": 4,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 100,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxJsonRTEReferredInCT",
-      "name": "maxJsonRTEReferredInCT",
-      "key_order": 5,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 100,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxMultipleJsonRte",
-      "name": "maxMultipleJsonRte",
-      "key_order": 6,
-      "enabled": true,
-      "limit": 10000,
-      "max_limit": 10000,
-      "is_required": false,
-      "depends_on": [],
-      "uuid": "f7eff29e-5073-4507-82d3-043cd78841b1"
-    },
-    {
-      "uid": "maxRteJsonSizeInBytes",
-      "name": "maxRteJsonSizeInBytes",
-      "key_order": 7,
-      "enabled": true,
-      "limit": 50000,
-      "max_limit": 50000,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxJSONCustomFieldsPerCT",
-      "name": "maxJSONCustomFieldsPerCT",
-      "key_order": 8,
-      "enabled": true,
-      "limit": 10,
-      "max_limit": 10,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "maxJSONCustomFieldSize",
-      "name": "maxJSONCustomFieldSize",
-      "key_order": 9,
-      "enabled": true,
-      "limit": 45000,
-      "max_limit": 45000,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "rteComment",
-      "name": "RTE Inline Comment",
-      "key_order": 12,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": [
-        "entryDiscussion"
-      ]
-    },
-    {
-      "uid": "emptyPIIValuesInIncludeOwnerForDelivery",
-      "name": "emptyPIIValuesInIncludeOwnerForDelivery",
-      "key_order": 7,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "developerhubAccess",
-      "name": "Developer Hub Access",
-      "key_order": 1,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "developerhub_apps_per_org",
-      "name": "Apps Per Organization",
-      "key_order": 2,
-      "enabled": true,
-      "limit": 500,
-      "max_limit": 500,
-      "is_required": false,
-      "depends_on": [],
-      "uuid": "994f9496-a28a-4617-8559-b38eae0bbccd"
-    },
-    {
-      "uid": "taxonomy",
-      "name": "Taxonomy",
-      "key_order": 1,
-      "enabled": true,
-      "limit": 50,
-      "max_limit": 50,
-      "is_required": false,
-      "depends_on": [],
-      "uuid": "1bbf6393-fd6a-4df1-8bee-a09323c8fc1d"
-    },
-    {
-      "uid": "taxonomy_terms",
-      "name": "Taxonomy Terms",
-      "key_order": 2,
-      "enabled": true,
-      "limit": 10000,
-      "max_limit": 10000,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "taxonomy_terms_max_depth",
-      "name": "Taxonomy Terms Max Depth",
-      "key_order": 3,
-      "enabled": true,
-      "limit": 10,
-      "max_limit": 10,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "max_taxonomies_per_content_type",
-      "name": "Max Taxonomies Per Content Type",
-      "key_order": 4,
-      "enabled": true,
-      "limit": 20,
-      "max_limit": 20,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "taxonomy_permissions",
-      "name": "Taxonomy Permissions",
-      "key_order": 6,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "taxonomy_localization",
-      "name": "taxonomy_localization",
-      "key_order": 7,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "orgAdminAccess",
-      "name": "OrgAdmin Access",
-      "key_order": 1,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "securityConfig",
-      "name": "Security Configuration",
-      "key_order": 2,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "bulk_user_actions",
-      "name": "Bulk User Actions",
-      "key_order": 3,
-      "enabled": true,
-      "limit": 10,
-      "max_limit": 10,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "teams",
-      "name": "Teams",
-      "key_order": 4,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "webhookConfig",
-      "name": "Webhook configuration",
-      "key_order": 6,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "allowedEmailDomains",
-      "name": "Allowed Email Domains",
-      "key_order": 7,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "mfaResetAccess",
-      "name": "Allow admins to reset MFA for users",
-      "key_order": 8,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "personalizationAccess",
-      "name": "Personalization Access",
-      "key_order": 1,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "personalizeProjects",
-      "name": "Projects in Organization",
-      "key_order": 2,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 100,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "personalizeExperiencesPerProject",
-      "name": "Experiences per Project",
-      "key_order": 3,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 1000,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "personalizeAudiencesPerProject",
-      "name": "Audiences per Project",
-      "key_order": 4,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 1000,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "personalizeAttributesPerProject",
-      "name": "Custom Attributes per Project",
-      "key_order": 5,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 1000,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "personalizeEventsPerProject",
-      "name": "Custom Events per Project",
-      "key_order": 6,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 1000,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "personalizeVariantsPerExperience",
-      "name": "Variants per Experience",
-      "key_order": 7,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 100,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "personalizeManifestRequests",
-      "name": "Manifest Requests",
-      "key_order": 9,
-      "enabled": true,
-      "limit": 1000000000,
-      "max_limit": 1000000000,
-      "is_required": false,
-      "depends_on": [],
-      "uuid": "b44e4685-7a5a-480f-b806-6a7bfd325cee"
-    },
-    {
-      "uid": "maxAssetFolderDepth",
-      "name": "Max Asset folder depth",
-      "key_order": 1,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 100,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "bulk-action",
-      "name": "Bulk action",
-      "key_order": 1,
-      "enabled": true,
-      "limit": 50,
-      "max_limit": 50,
-      "is_required": false,
-      "depends_on": [],
-      "uuid": "8635888f-8d4d-42e8-ba87-543408a79df9"
-    },
-    {
-      "uid": "bulkLimit",
-      "name": "Bulk Requests Limit",
-      "key_order": 2,
-      "enabled": true,
-      "limit": 50,
-      "max_limit": 50,
-      "is_required": false,
-      "depends_on": [],
-      "uuid": "1bf3ad4a-2ba0-4bc2-a389-0215edf8910b"
-    },
-    {
-      "uid": "bulk-action-publish",
-      "name": "Bulk action Publish",
-      "key_order": 6,
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 100,
-      "is_required": false,
-      "depends_on": [],
-      "uuid": "780d8549-aa50-49b7-9876-fee45f8b513c"
-    },
-    {
-      "uid": "nestedSinglePublishing",
-      "name": "nestedSinglePublishing",
-      "key_order": 2,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": []
-    },
-    {
-      "uid": "taxonomy_publish",
-      "name": "taxonomy publish",
-      "key_order": 3,
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1,
-      "is_required": false,
-      "depends_on": [],
-      "uuid": "f891ac5b-343c-4999-82b2-1c74be414526"
-    },
-    {
-      "uid": "contentfly_projects",
-      "name": "Number of Launch Projects",
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 100
-    },
-    {
-      "uid": "contentfly_environments",
-      "name": "Number of Launch Environments",
-      "enabled": true,
-      "limit": 30,
-      "max_limit": 30
-    },
-    {
-      "uid": "maxExtensionScopeCtRef",
-      "name": "Scope of CT for custom widgets",
-      "enabled": true,
-      "limit": 23,
-      "max_limit": 23
-    },
-    {
-      "uid": "total_extensions",
-      "name": "total_extensions",
-      "enabled": true,
-      "limit": 100,
-      "max_limit": 100
-    },
-    {
-      "uid": "extConcurrentCallsLimit",
-      "name": "extConcurrentCallsLimit",
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1
-    },
-    {
-      "uid": "releaseDeploymentAllocation",
-      "name": "releaseDeploymentAllocation",
-      "enabled": true,
-      "limit": 3,
-      "max_limit": 3
-    },
-    {
-      "uid": "disableIncludeOwnerForDelivery",
-      "name": "disableIncludeOwnerForDelivery",
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1
-    },
-    {
-      "uid": "extensionsMicroservice",
-      "name": "Extensions Microservice",
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1
-    },
-    {
-      "uid": "Webhook OAuth Access",
-      "name": "webhookOauth",
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1
-    },
-    {
-      "uid": "Audit log for Contentstack Products",
-      "name": "audit_log",
-      "enabled": true,
-      "limit": 1,
-      "max_limit": 1
-    }
-  ],
-  "created_at": "2023-06-07T07:23:21.904Z",
-  "updated_at": "2026-01-22T14:39:31.571Z",
-  "blockedAssetTypes": []
-}
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/organizations/blt8d282118e2094bb8?include_plan=true
-
Request Headers
authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/organizations/blt8d282118e2094bb8?include_plan=true' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:29 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 16ms
-X-Request-ID: 9261b6c4-0863-442b-9b28-9258da7a4470
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{"organization":{"_id":"6461c7329ebec1652d7ada73","uid":"blt8d282118e2094bb8","name":"SDK org","plan_id":"sdk_branch_plan","is_over_usage_allowed":true,"expires_on":"2029-12-21T00:00:00.000Z","owner_uid":"blt37ba39e03b130064","enabled":true,"created_at":"2023-05-15T05:46:26.262Z","updated_at":"2025-03-17T06:07:47.263Z","deleted_at":false,"account_id":"","settings":{"blockAuthQueryParams":true,"allowedCDNTokens":["access_token"]},"created_by":"bltf7f13f53e2256a8a","updated_by":"bltfc88a63ec0767587","tags":["testing"],"__v":0,"is_transfer_set":false,"transfer_ownership_token":"","transfer_sent_at":"2025-03-17T06:06:30.203Z","transfer_to":"","plan":{"plan_id":"sdk_branch_plan","name":"sdk_branch_plan","message":"","price":"$0","features":[{"uid":"users","name":"Users","key_order":1,"enabled":true,"limit":1000,"max_limit":1000,"is_required":false,"depends_on":[]},{"uid":"roles","name":"UserRoles","key_order":2,"enabled":true,"limit":10,"max_limit":10,"is_required":false,"depends_on":[]},{"uid":"sso","name":"SSO","key_order":3,"enabled":true,"limit":1,"max_limit":1,"is_required":false,"depends_on":[]},{"uid":"ssoRoles","name":"ssoRoles","key_order":4,"enabled":true,"limit":1,"max_limit":1,"is_required":false,"depends_on":[]},{"uid":"environments","name":"Environments","key_order":1,"enabled":true,"limit":400,"max_limit":400,"is_required":false,"depends_on":[]},{"uid":"branches","name":"branches","key_order":2,"enabled":true,"limit":10,"max_limit":10,"is_required":false,"depends_on":[]},{"uid":"branch_aliases","name":"branch_aliases","key_order":3,"enabled":true,"limit":10,"max_limit":10,"is_required":false,"depends_on":[]},{"uid":"digitalProperties","name":"DigitalProperties","key_order":4,"enabled":true,"limit":1,"max_limit":1,"is_required":false,"depends_on":[]},{"uid":"fieldModifierLocation","name":"Extension Field Modifier Location","key_order":4,"enabled":true,"limit":1,"max_limit":1,"is_required":false,"depends_on":[]},{"uid":"limit","name":"API Write Request Limit","key_order":5,"enabled":true,"limit":100,"max_limit":100,"is_required":false,"depends_on":[]},{"uid":"getLimit","name":"CMA GET Limit","key_order":6,"enabled":true,"limit":100,"max_limit":100,"is_required":false,"depends_on":[]},{"uid":"apiBandwidth","name":"API Bandwidth","key_order":9,"enabled":true,"limit":5000000000000,"max_limit":5000000000000,"is_required":false,"depends_on":[]},{"uid":"apiRequests","name":"API Requests","key_order":10,"enabled":true,"limit":6000000,"max_limit":6000000,"is_required":false,"depends_on":[]},{"uid":"managementTokensLimit","name":"managementTokensLimit","key_order":11,"enabled":true,"limit":20,"max_limit":20,"is_required":false,"depends_on":[]},{"uid":"newCDA","name":"New CDA API","key_order":12,"enabled":true,"limit":1,"max_limit":1,"is_required":false,"depends_on":[]},{"uid":"syncCDA","name":"default","key_order":13,"enabled":true,"limit":1,"max_limit":2,"is_required":false,"is_name_editable":true,"depends_on":[]},{"uid":"fullPageLocation","name"
-
- Test Context - - - - -
TestScenarioGetOrganizationWithPlan
-
Passed0.36s
-
-
- -
-
-
- - Contentstack003_StackTest -
-
- 13 passed · - 0 failed · - 0 skipped · - 13 total -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Test NameStatusDuration
-
✅ Test007_Should_Fetch_StackAsync
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "stack": {
-    "created_at": "2026-03-13T02:33:34.598Z",
-    "updated_at": "2026-03-13T02:33:35.337Z",
-    "uid": "bltcf56a6f05651f1d8",
-    "name": "DotNet Management SDK Stack",
-    "description": "Integration testing Stack for DotNet Management SDK",
-    "org_uid": "blt8d282118e2094bb8",
-    "api_key": "blt1bca31da998b57a9",
-    "master_locale": "en-us",
-    "is_asset_download_public": true,
-    "owner_uid": "blt1930fc55e5669df9",
-    "user_uids": [
-      "blt1930fc55e5669df9"
-    ],
-    "settings": {
-      "version": "2019-04-30",
-      "rte_version": 3,
-      "blockAuthQueryParams": true,
-      "allowedCDNTokens": [
-        "access_token"
-      ],
-      "branches": true,
-      "localesOptimization": false,
-      "webhook_enabled": true,
-      "visual_builder": {},
-      "timeline": {},
-      "live_preview": {},
-      "am_v2": {},
-      "entries": {},
-      "language_fallback": false
-    },
-    "master_key": "bltb651649fc56dcfa8",
-    "SYS_ACL": {
-      "others": {
-        "invite": false,
-        "sub_acl": {
-          "create": false,
-          "read": false,
-          "update": false,
-          "delete": false
-        }
-      },
-      "roles": [
-        {
-          "uid": "blt5f456b9cfa69b697",
-          "name": "Developer",
-          "invite": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true
-          }
-        },
-        {
-          "uid": "blt1b7926e68b1b14b2",
-          "name": "Admin",
-          "invite": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true
-          }
-        }
-      ]
-    },
-    "global_search": true
-  }
-}
-
-
-
-
AreEqual(APIKey)
-
-
Expected:
blt1bca31da998b57a9
-
Actual:
blt1bca31da998b57a9
-
-
-
-
AreEqual(StackName)
-
-
Expected:
DotNet Management SDK Stack
-
Actual:
DotNet Management SDK Stack
-
-
-
-
AreEqual(MasterLocale)
-
-
Expected:
en-us
-
Actual:
en-us
-
-
-
-
AreEqual(Description)
-
-
Expected:
Integration testing Stack for DotNet Management SDK
-
Actual:
Integration testing Stack for DotNet Management SDK
-
-
-
-
AreEqual(OrgUid)
-
-
Expected:
blt8d282118e2094bb8
-
Actual:
blt8d282118e2094bb8
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/stacks
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/stacks' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:35 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 21ms
-X-Request-ID: a566a22b-7a06-41ec-9fbc-e62a63154f42
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "stack": {
-    "created_at": "2026-03-13T02:33:34.598Z",
-    "updated_at": "2026-03-13T02:33:35.337Z",
-    "uid": "bltcf56a6f05651f1d8",
-    "name": "DotNet Management SDK Stack",
-    "description": "Integration testing Stack for DotNet Management SDK",
-    "org_uid": "blt8d282118e2094bb8",
-    "api_key": "blt1bca31da998b57a9",
-    "master_locale": "en-us",
-    "is_asset_download_public": true,
-    "owner_uid": "blt1930fc55e5669df9",
-    "user_uids": [
-      "blt1930fc55e5669df9"
-    ],
-    "settings": {
-      "version": "2019-04-30",
-      "rte_version": 3,
-      "blockAuthQueryParams": true,
-      "allowedCDNTokens": [
-        "access_token"
-      ],
-      "branches": true,
-      "localesOptimization": false,
-      "webhook_enabled": true,
-      "visual_builder": {},
-      "timeline": {},
-      "live_preview": {},
-      "am_v2": {},
-      "entries": {},
-      "language_fallback": false
-    },
-    "master_key": "bltb651649fc56dcfa8",
-    "SYS_ACL": {
-      "others": {
-        "invite": false,
-        "sub_acl": {
-          "create": false,
-          "read": false,
-          "update": false,
-          "delete": false
-        }
-      },
-      "roles": [
-        {
-          "uid": "blt5f456b9cfa69b697",
-          "name": "Developer",
-          "invite": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true
-          }
-        },
-        {
-          "uid": "blt1b7926e68b1b14b2",
-          "name": "Admin",
-          "invite": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true
-          }
-        }
-      ]
-    },
-    "global_search": true
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioFetchStackAsync
StackApiKeyblt1bca31da998b57a9
-
Passed0.28s
-
✅ Test008_Add_Stack_Settings
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "notice": "Stack settings updated successfully.",
-  "stack_settings": {
-    "stack_variables": {
-      "enforce_unique_urls": true,
-      "sys_rte_allowed_tags": "figure"
-    },
-    "discrete_variables": {
-      "cms": true,
-      "_version": 3
-    },
-    "live_preview": {},
-    "visual_builder": {},
-    "timeline": {},
-    "entries": {}
-  }
-}
-
-
-
-
AreEqual(Notice)
-
-
Expected:
Stack settings updated successfully.
-
Actual:
Stack settings updated successfully.
-
-
-
-
AreEqual(enforce_unique_urls)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
AreEqual(sys_rte_allowed_tags)
-
-
Expected:
figure
-
Actual:
figure
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/stacks/settings
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 136
-Content-Type: application/json
-
Request Body
{"stack_settings":{"stack_variables":{"enforce_unique_urls":true,"sys_rte_allowed_tags":"figure"},"discrete_variables":null,"rte":null}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks/settings' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 136' \
-  -H 'Content-Type: application/json' \
-  -d '{"stack_settings":{"stack_variables":{"enforce_unique_urls":true,"sys_rte_allowed_tags":"figure"},"discrete_variables":null,"rte":null}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:36 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 20ms
-X-Request-ID: 8621d748-68ec-45de-864e-1027ad2136f7
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Stack settings updated successfully.",
-  "stack_settings": {
-    "stack_variables": {
-      "enforce_unique_urls": true,
-      "sys_rte_allowed_tags": "figure"
-    },
-    "discrete_variables": {
-      "cms": true,
-      "_version": 3
-    },
-    "live_preview": {},
-    "visual_builder": {},
-    "timeline": {},
-    "entries": {}
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioAddStackSettings
StackApiKeyblt1bca31da998b57a9
-
Passed0.29s
-
✅ Test006_Should_Fetch_Stack
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "stack": {
-    "created_at": "2026-03-13T02:33:34.598Z",
-    "updated_at": "2026-03-13T02:33:35.337Z",
-    "uid": "bltcf56a6f05651f1d8",
-    "name": "DotNet Management SDK Stack",
-    "description": "Integration testing Stack for DotNet Management SDK",
-    "org_uid": "blt8d282118e2094bb8",
-    "api_key": "blt1bca31da998b57a9",
-    "master_locale": "en-us",
-    "is_asset_download_public": true,
-    "owner_uid": "blt1930fc55e5669df9",
-    "user_uids": [
-      "blt1930fc55e5669df9"
-    ],
-    "settings": {
-      "version": "2019-04-30",
-      "rte_version": 3,
-      "blockAuthQueryParams": true,
-      "allowedCDNTokens": [
-        "access_token"
-      ],
-      "branches": true,
-      "localesOptimization": false,
-      "webhook_enabled": true,
-      "visual_builder": {},
-      "timeline": {},
-      "live_preview": {},
-      "am_v2": {},
-      "entries": {},
-      "language_fallback": false
-    },
-    "master_key": "bltb651649fc56dcfa8",
-    "SYS_ACL": {
-      "others": {
-        "invite": false,
-        "sub_acl": {
-          "create": false,
-          "read": false,
-          "update": false,
-          "delete": false
-        }
-      },
-      "roles": [
-        {
-          "uid": "blt5f456b9cfa69b697",
-          "name": "Developer",
-          "invite": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true
-          }
-        },
-        {
-          "uid": "blt1b7926e68b1b14b2",
-          "name": "Admin",
-          "invite": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true
-          }
-        }
-      ]
-    },
-    "global_search": true
-  }
-}
-
-
-
-
AreEqual(APIKey)
-
-
Expected:
blt1bca31da998b57a9
-
Actual:
blt1bca31da998b57a9
-
-
-
-
AreEqual(StackName)
-
-
Expected:
DotNet Management SDK Stack
-
Actual:
DotNet Management SDK Stack
-
-
-
-
AreEqual(MasterLocale)
-
-
Expected:
en-us
-
Actual:
en-us
-
-
-
-
AreEqual(Description)
-
-
Expected:
Integration testing Stack for DotNet Management SDK
-
Actual:
Integration testing Stack for DotNet Management SDK
-
-
-
-
AreEqual(OrgUid)
-
-
Expected:
blt8d282118e2094bb8
-
Actual:
blt8d282118e2094bb8
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/stacks
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/stacks' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:35 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 22ms
-X-Request-ID: 073de114-7fe2-4bbb-8d48-4c91d07625e7
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "stack": {
-    "created_at": "2026-03-13T02:33:34.598Z",
-    "updated_at": "2026-03-13T02:33:35.337Z",
-    "uid": "bltcf56a6f05651f1d8",
-    "name": "DotNet Management SDK Stack",
-    "description": "Integration testing Stack for DotNet Management SDK",
-    "org_uid": "blt8d282118e2094bb8",
-    "api_key": "blt1bca31da998b57a9",
-    "master_locale": "en-us",
-    "is_asset_download_public": true,
-    "owner_uid": "blt1930fc55e5669df9",
-    "user_uids": [
-      "blt1930fc55e5669df9"
-    ],
-    "settings": {
-      "version": "2019-04-30",
-      "rte_version": 3,
-      "blockAuthQueryParams": true,
-      "allowedCDNTokens": [
-        "access_token"
-      ],
-      "branches": true,
-      "localesOptimization": false,
-      "webhook_enabled": true,
-      "visual_builder": {},
-      "timeline": {},
-      "live_preview": {},
-      "am_v2": {},
-      "entries": {},
-      "language_fallback": false
-    },
-    "master_key": "bltb651649fc56dcfa8",
-    "SYS_ACL": {
-      "others": {
-        "invite": false,
-        "sub_acl": {
-          "create": false,
-          "read": false,
-          "update": false,
-          "delete": false
-        }
-      },
-      "roles": [
-        {
-          "uid": "blt5f456b9cfa69b697",
-          "name": "Developer",
-          "invite": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true
-          }
-        },
-        {
-          "uid": "blt1b7926e68b1b14b2",
-          "name": "Admin",
-          "invite": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true
-          }
-        }
-      ]
-    },
-    "global_search": true
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioFetchStack
StackApiKeyblt1bca31da998b57a9
-
Passed0.29s
-
✅ Test004_Should_Update_Stack
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "notice": "Stack updated successfully.",
-  "stack": {
-    "created_at": "2026-03-13T02:33:34.598Z",
-    "updated_at": "2026-03-13T02:33:35.007Z",
-    "uid": "bltcf56a6f05651f1d8",
-    "name": "DotNet Management SDK Stack",
-    "org_uid": "blt8d282118e2094bb8",
-    "api_key": "blt1bca31da998b57a9",
-    "master_locale": "en-us",
-    "is_asset_download_public": true,
-    "owner_uid": "blt1930fc55e5669df9",
-    "user_uids": [
-      "blt1930fc55e5669df9"
-    ],
-    "settings": {
-      "version": "2019-04-30",
-      "rte_version": 3,
-      "blockAuthQueryParams": true,
-      "allowedCDNTokens": [
-        "access_token"
-      ],
-      "branches": true,
-      "localesOptimization": false,
-      "webhook_enabled": true,
-      "visual_builder": {},
-      "timeline": {},
-      "live_preview": {},
-      "am_v2": {},
-      "entries": {},
-      "language_fallback": false
-    },
-    "master_key": "bltb651649fc56dcfa8",
-    "SYS_ACL": {
-      "others": {
-        "invite": false,
-        "sub_acl": {
-          "create": false,
-          "read": false,
-          "update": false,
-          "delete": false
-        }
-      },
-      "roles": [
-        {
-          "uid": "blt5f456b9cfa69b697",
-          "name": "Developer",
-          "invite": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true
-          }
-        },
-        {
-          "uid": "blt1b7926e68b1b14b2",
-          "name": "Admin",
-          "invite": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true
-          }
-        }
-      ]
-    },
-    "stack_variables": {},
-    "discrete_variables": {
-      "cms": true,
-      "_version": 3,
-      "secret_key": "689488de7ee7fae3f2ce57afeaecfc03cf638e18"
-    }
-  }
-}
-
-
-
-
IsNull(model.Stack.Description)
-
-
Expected:
null
-
Actual:
null
-
-
-
-
AreEqual(APIKey)
-
-
Expected:
blt1bca31da998b57a9
-
Actual:
blt1bca31da998b57a9
-
-
-
-
AreEqual(StackName)
-
-
Expected:
DotNet Management SDK Stack
-
Actual:
DotNet Management SDK Stack
-
-
-
-
AreEqual(MasterLocale)
-
-
Expected:
en-us
-
Actual:
en-us
-
-
-
-
AreEqual(OrgUid)
-
-
Expected:
blt8d282118e2094bb8
-
Actual:
blt8d282118e2094bb8
-
-

HTTP Transactions

-
- -
PUThttps://api.contentstack.io/v3/stacks
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 48
-Content-Type: application/json
-
Request Body
{"stack":{"name":"DotNet Management SDK Stack"}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/stacks' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 48' \
-  -H 'Content-Type: application/json' \
-  -d '{"stack":{"name":"DotNet Management SDK Stack"}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:35 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 42ms
-X-Request-ID: 5f0cbb1d-b1a4-43e9-810e-4da42d0518b7
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Stack updated successfully.",
-  "stack": {
-    "created_at": "2026-03-13T02:33:34.598Z",
-    "updated_at": "2026-03-13T02:33:35.007Z",
-    "uid": "bltcf56a6f05651f1d8",
-    "name": "DotNet Management SDK Stack",
-    "org_uid": "blt8d282118e2094bb8",
-    "api_key": "blt1bca31da998b57a9",
-    "master_locale": "en-us",
-    "is_asset_download_public": true,
-    "owner_uid": "blt1930fc55e5669df9",
-    "user_uids": [
-      "blt1930fc55e5669df9"
-    ],
-    "settings": {
-      "version": "2019-04-30",
-      "rte_version": 3,
-      "blockAuthQueryParams": true,
-      "allowedCDNTokens": [
-        "access_token"
-      ],
-      "branches": true,
-      "localesOptimization": false,
-      "webhook_enabled": true,
-      "visual_builder": {},
-      "timeline": {},
-      "live_preview": {},
-      "am_v2": {},
-      "entries": {},
-      "language_fallback": false
-    },
-    "master_key": "bltb651649fc56dcfa8",
-    "SYS_ACL": {
-      "others": {
-        "invite": false,
-        "sub_acl": {
-          "create": false,
-          "read": false,
-          "update": false,
-          "delete": false
-        }
-      },
-      "roles": [
-        {
-          "uid": "blt5f456b9cfa69b697",
-          "name": "Developer",
-          "invite": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true
-          }
-        },
-        {
-          "uid": "blt1b7926e68b1b14b2",
-          "name": "Admin",
-          "invite": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true
-          }
-        }
-      ]
-    },
-    "stack_variables": {},
-    "discrete_variables": {
-      "cms": true,
-      "_version": 3,
-      "secret_key": "689488de7ee7fae3f2ce57afeaecfc03cf638e18"
-    }
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioUpdateStack
StackApiKeyblt1bca31da998b57a9
-
Passed0.32s
-
✅ Test012_Reset_Stack_Settings_Async
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "notice": "Stack settings updated successfully.",
-  "stack_settings": {
-    "rte": {},
-    "stack_variables": {
-      "enforce_unique_urls": true,
-      "sys_rte_allowed_tags": "figure"
-    },
-    "discrete_variables": {
-      "cms": true,
-      "_version": 3
-    },
-    "live_preview": {},
-    "visual_builder": {},
-    "timeline": {},
-    "entries": {}
-  }
-}
-
-
-
-
AreEqual(Notice)
-
-
Expected:
Stack settings updated successfully.
-
Actual:
Stack settings updated successfully.
-
-
-
-
AreEqual(enforce_unique_urls)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
AreEqual(sys_rte_allowed_tags)
-
-
Expected:
figure
-
Actual:
figure
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/stacks/settings
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 74
-Content-Type: application/json
-
Request Body
{"stack_settings":{"stack_variables":{},"discrete_variables":{},"rte":{}}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks/settings' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 74' \
-  -H 'Content-Type: application/json' \
-  -d '{"stack_settings":{"stack_variables":{},"discrete_variables":{},"rte":{}}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:37 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 23ms
-X-Request-ID: b574092f-d4e5-4b02-807e-bdd41fad0aa4
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Stack settings updated successfully.",
-  "stack_settings": {
-    "rte": {},
-    "stack_variables": {
-      "enforce_unique_urls": true,
-      "sys_rte_allowed_tags": "figure"
-    },
-    "discrete_variables": {
-      "cms": true,
-      "_version": 3
-    },
-    "live_preview": {},
-    "visual_builder": {},
-    "timeline": {},
-    "entries": {}
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioResetStackSettingsAsync
StackApiKeyblt1bca31da998b57a9
-
Passed0.30s
-
✅ Test013_Stack_Settings_Async
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "stack_settings": {
-    "rte": {},
-    "stack_variables": {
-      "enforce_unique_urls": true,
-      "sys_rte_allowed_tags": "figure"
-    },
-    "discrete_variables": {
-      "cms": true,
-      "_version": 3
-    },
-    "live_preview": {},
-    "visual_builder": {},
-    "timeline": {},
-    "entries": {}
-  }
-}
-
-
-
-
AreEqual(enforce_unique_urls)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
AreEqual(sys_rte_allowed_tags)
-
-
Expected:
figure
-
Actual:
figure
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/stacks/settings
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/stacks/settings' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:37 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 12ms
-X-Request-ID: 2016f37c-a61a-4b24-b96b-82637aa95863
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "stack_settings": {
-    "rte": {},
-    "stack_variables": {
-      "enforce_unique_urls": true,
-      "sys_rte_allowed_tags": "figure"
-    },
-    "discrete_variables": {
-      "cms": true,
-      "_version": 3
-    },
-    "live_preview": {},
-    "visual_builder": {},
-    "timeline": {},
-    "entries": {}
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioStackSettingsAsync
StackApiKeyblt1bca31da998b57a9
-
Passed0.28s
-
✅ Test010_Reset_Stack_Settings
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "notice": "Stack settings updated successfully.",
-  "stack_settings": {
-    "rte": {},
-    "stack_variables": {
-      "enforce_unique_urls": true,
-      "sys_rte_allowed_tags": "figure"
-    },
-    "discrete_variables": {
-      "cms": true,
-      "_version": 3
-    },
-    "live_preview": {},
-    "visual_builder": {},
-    "timeline": {},
-    "entries": {}
-  }
-}
-
-
-
-
AreEqual(Notice)
-
-
Expected:
Stack settings updated successfully.
-
Actual:
Stack settings updated successfully.
-
-
-
-
AreEqual(enforce_unique_urls)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
AreEqual(sys_rte_allowed_tags)
-
-
Expected:
figure
-
Actual:
figure
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/stacks/settings
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 74
-Content-Type: application/json
-
Request Body
{"stack_settings":{"stack_variables":{},"discrete_variables":{},"rte":{}}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks/settings' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 74' \
-  -H 'Content-Type: application/json' \
-  -d '{"stack_settings":{"stack_variables":{},"discrete_variables":{},"rte":{}}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:36 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 22ms
-X-Request-ID: 6dcdf1d0-6b2e-4258-a1a7-a0cafba897db
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Stack settings updated successfully.",
-  "stack_settings": {
-    "rte": {},
-    "stack_variables": {
-      "enforce_unique_urls": true,
-      "sys_rte_allowed_tags": "figure"
-    },
-    "discrete_variables": {
-      "cms": true,
-      "_version": 3
-    },
-    "live_preview": {},
-    "visual_builder": {},
-    "timeline": {},
-    "entries": {}
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioResetStackSettings
StackApiKeyblt1bca31da998b57a9
-
Passed0.28s
-
✅ Test001_Should_Return_All_Stacks
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "stacks": [
-    {
-      "created_at": "2026-01-08T05:35:15.139Z",
-      "updated_at": "2026-02-03T09:46:34.542Z",
-      "uid": "blt5c0ec6f94a0a9fc2",
-      "name": "Interns 2026 - Jan",
-      "description": "This stack is for the interns joing us in Jan 2026",
-      "org_uid": "bltc27b596a90cf8edc",
-      "api_key": "blt2fe3288bcebfa8ae",
-      "master_locale": "en-us",
-      "is_asset_download_public": true,
-      "owner_uid": "blt903aded41dff204d",
-      "user_uids": [
-        "blt903aded41dff204d",
-        "blt8001963599ba21f9",
-        "blt97cfbb0ce84fd2c5",
-        "blt01684de27f8ca841",
-        "cs001cad49eaaea4e0",
-        "cs745d1ab2a1560148",
-        "blt2fd21f9e9dbb26c9",
-        "blt1930fc55e5669df9",
-        "blt38b66ea00448e029",
-        "bltc15b42703fa590a5"
-      ],
-      "settings": {
-        "version": "2019-04-30",
-        "rte_version": 3,
-        "blockAuthQueryParams": true,
-        "allowedCDNTokens": [
-          "access_token"
-        ],
-        "branches": true,
-        "localesOptimization": false,
-        "webhook_enabled": true,
-        "visual_builder": {},
-        "timeline": {},
-        "live_preview": {
-          "enabled": true,
-          "default-env": "bltd54a9c9664f7642e",
-          "default-url": "",
-          "is-always-open-in-new-tab": false,
-          "lp-onboarding-setup-visible": true
-        },
-        "am_v2": {},
-        "language_fallback": false
-      },
-      "SYS_ACL": {
-        "others": {
-          "invite": false,
-          "sub_acl": {
-            "create": false,
-            "read": false,
-            "update": false,
-            "delete": false
-          }
-        },
-        "roles": [
-          {
-            "uid": "blt3e4a83f62c3ed726",
-            "name": "Developer",
-            "invite": true,
-            "sub_acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true
-            }
-          },
-          {
-            "uid": "blte050fa9e897278d5",
-            "name": "Admin",
-            "invite": true,
-            "sub_acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true
-            }
-          }
-        ]
-      }
-    },
-    {
-      "created_at": "2026-03-06T15:18:49.878Z",
-      "updated_at": "2026-03-12T12:11:46.324Z",
-      "uid": "bltae6bacc186e4819f",
-      "name": "Copy of Dotnet CDA SDK internal test",
-      "org_uid": "blt8d282118e2094bb8",
-      "api_key": "blta23060d14351eb10",
-      "master_locale": "en-us",
-      "is_asset_download_public": true,
-      "owner_uid": "blt4c60a7a861d77460",
-      "user_uids": [
-        "blt4c60a7a861d77460",
-        "blt1930fc55e5669df9"
-      ],
-      "settings": {
-        "version": "2019-04-30",
-        "rte_version": 3,
-        "blockAuthQueryParams": true,
-        "allowedCDNTokens": [
-          "access_token"
-        ],
-        "branches": true,
-        "localesOptimization": false,
-        "webhook_enabled": true,
-        "visual_builder": {},
-        "timeline": {},
-        "live_preview": {
-          "enabled": true,
-          "default-env": "blta799e64ff18a4df3",
-          "default-url": ""
-        },
-        "am_v2": {},
-        "entries": {},
-        "language_fallback": false
-      },
-      "SYS_ACL": {
-        "others": {
-          "invite": false,
-          "sub_acl": {
-            "create": false,
-            "read": false,
-            "update": false,
-            "delete": false
-          }
-        },
-        "roles": [
-          {
-            "uid": "bltd84b6b0132b0a0e5",
-            "name": "Developer",
-            "invite": true,
-            "sub_acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true
-            }
-          },
-          {
-            "uid": "blt167f15fb55232230",
-            "name": "Admin",
-            "invite": true,
-            "sub_acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true
-            }
-          }
-        ]
-      }
-    },
-    {
-      "created_at": "2026-03-07T06:14:15.241Z",
-      "updated_at": "2026-03-07T06:14:33.229Z",
-      "uid": "blt280e2f910a2197a9",
-      "name": "Copy of Interns 2026 - Jan",
-      "org_uid": "bltc27b596a90cf8edc",
-      "api_key": "blt24ae66d4b6dc2080",
-      "master_locale": "en-us",
-      "is_asset_download_public": true,
-      "owner_uid": "blt1930fc55e5669df9",
-      "user_uids": [
-        "blt1930fc55e5669df9"
-      ],
-      "settings": {
-        "version": "2019-04-30",
-        "rte_version": 3,
-        "blockAuthQueryParams": true,
-        "allowedCDNTokens": [
-          "access_token"
-        ],
-        "branches": true,
-        "localesOptimization": false,
-        "webhook_enabled": true,
-        "visual_builder": {},
-        "timeline": {},
-        "live_preview": {
-          "enabled": true,
-          "default-env": "blt229ad7409015a267",
-          "default-url": "",
-          "is-always-open-in-new-tab": false,
-          "lp-onboarding-setup-visible": true
-        },
-        "am_v2": {},
-        "entries": {},
-        "language_fallback": false
-      },
-      "master_key": "blt437a774a7a6e5ad7",
-      "SYS_ACL": {
-        "others": {
-          "invite": false,
-          "sub_acl": {
-            "create": false,
-            "read": false,
-            "update": false,
-            "delete": false
-          }
-        },
-        "roles": [
-          {
-            "uid": "blt77b9ea181befa604",
-            "name": "Developer",
-            "invite": true,
-            "sub_acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true
-            }
-          },
-          {
-            "uid": "blt0472445c363a2ed3",
-            "name": "Admin",
-            "invite": true,
-            "sub_acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true
-            }
-          }
-        ]
-      }
-    },
-    {
-      "created_at": "2026-03-12T12:16:53.714Z",
-      "updated_at": "2026-03-12T12:16:56.378Z",
-      "uid": "blta77d4b24cace786a",
-      "name": "DotNet Management SDK Stack",
-      "description": "Integration testing Stack for DotNet Management SDK",
-      "org_uid": "blt8d282118e2094bb8",
-      "api_key": "bltd87839f91f3e1448",
-      "master_locale": "en-us",
-      "is_asset_download_public": true,
-      "owner_uid": "blt1930fc55e5669df9",
-      "user_uids": [
-        "blt1930fc55e5669df9"
-      ],
-      "settings": {
-        "version": "2019-04-30",
-        "rte_version": 3,
-        "blockAuthQueryParams": true,
-        "allowedCDNTokens": [
-          "access_token"
-        ],
-        "branches": true,
-        "localesOptimization": false,
-        "webhook_enabled": true,
-        "visual_builder": {},
-        "timeline": {},
-        "live_preview": {},
-        "am_v2": {},
-        "entries": {},
-        "language_fallback": false,
-        "rte": {},
-        "workflow_stages": false,
-        "publishing_rules": false
-      },
-      "master_key": "bltb426e3b0f3a4c531",
-      "SYS_ACL": {
-        "others": {
-          "invite": false,
-          "sub_acl": {
-            "create": false,
-            "read": false,
-            "update": false,
-            "delete": false
-          }
-        },
-        "roles": [
-          {
-            "uid": "blt9abb917383970961",
-            "name": "Developer",
-            "invite": true,
-            "sub_acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true
-            }
-          },
-          {
-            "uid": "blt60539db603b6350b",
-            "name": "Admin",
-            "invite": true,
-            "sub_acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true
-            }
-          }
-        ]
-      }
-    },
-    {
-      "created_at": "2026-03-12T12:35:38.558Z",
-      "updated_at": "2026-03-12T12:35:41.085Z",
-      "uid": "bltf6dedbb54111facb",
-      "name": "DotNet Management SDK Stack",
-      "description": "Integration testing Stack for DotNet Management SDK",
-      "org_uid": "blt8d282118e2094bb8",
-      "api_key": "blt72045e49dc1aa085",
-      "master_locale": "en-us",
-      "is_asset_download_public": true,
-      "owner_uid": "blt1930fc55e5669df9",
-      "user_uids": [
-        "blt1930fc55e5669df9"
-      ],
-      "settings": {
-        "version": "2019-04-30",
-        "rte_version": 3,
-        "blockAuthQueryParams": true,
-        "allowedCDNTokens": [
-          "access_token"
-        ],
-        "branches": true,
-        "localesOptimization": false,
-        "webhook_enabled": true,
-        "visual_builder": {},
-        "timeline": {},
-        "live_preview": {},
-        "am_v2": {},
-        "entries": {},
-        "language_fallback": false,
-        "rte": {},
-        "workflow_stages": false,
-        "publishing_rules": false
-      },
-      "master_key": "blt5c25d00df8c449c8",
-      "SYS_ACL": {
-        "others": {
-          "invite": false,
-          "sub_acl": {
-            "create": false,
-            "read": false,
-            "update": false,
-            "delete": false
-          }
-        },
-        "roles": [
-          {
-            "uid": "blt006177335aae6cf8",
-            "name": "Developer",
-            "invite": true,
-            "sub_acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true
-            }
-          },
-          {
-            "uid": "blt96bdff8eb43af1b9",
-            "name": "Admin",
-            "invite": true,
-            "sub_acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true
-            }
-          }
-        ]
-      }
-    }
-  ],
-  "count": 5
-}
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/stacks
-
Request Headers
authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/stacks' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:34 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-runtime: 33ms
-X-Request-ID: ab0f9a73-79b9-4280-a165-8c5fd626d8e5
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{"stacks":[{"created_at":"2026-01-08T05:35:15.139Z","updated_at":"2026-02-03T09:46:34.542Z","uid":"blt5c0ec6f94a0a9fc2","name":"Interns 2026 - Jan","description":"This stack is for the interns joing us in Jan 2026","org_uid":"bltc27b596a90cf8edc","api_key":"blt2fe3288bcebfa8ae","master_locale":"en-us","is_asset_download_public":true,"owner_uid":"blt903aded41dff204d","user_uids":["blt903aded41dff204d","blt8001963599ba21f9","blt97cfbb0ce84fd2c5","blt01684de27f8ca841","cs001cad49eaaea4e0","cs745d1ab2a1560148","blt2fd21f9e9dbb26c9","blt1930fc55e5669df9","blt38b66ea00448e029","bltc15b42703fa590a5"],"settings":{"version":"2019-04-30","rte_version":3,"blockAuthQueryParams":true,"allowedCDNTokens":["access_token"],"branches":true,"localesOptimization":false,"webhook_enabled":true,"visual_builder":{},"timeline":{},"live_preview":{"enabled":true,"default-env":"bltd54a9c9664f7642e","default-url":"","is-always-open-in-new-tab":false,"lp-onboarding-setup-visible":true},"am_v2":{},"language_fallback":false},"SYS_ACL":{"others":{"invite":false,"sub_acl":{"create":false,"read":false,"update":false,"delete":false}},"roles":[{"uid":"blt3e4a83f62c3ed726","name":"Developer","invite":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true}},{"uid":"blte050fa9e897278d5","name":"Admin","invite":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true}}]}},{"created_at":"2026-03-06T15:18:49.878Z","updated_at":"2026-03-12T12:11:46.324Z","uid":"bltae6bacc186e4819f","name":"Copy of Dotnet CDA SDK internal test","org_uid":"blt8d282118e2094bb8","api_key":"blta23060d14351eb10","master_locale":"en-us","is_asset_download_public":true,"owner_uid":"blt4c60a7a861d77460","user_uids":["blt4c60a7a861d77460","blt1930fc55e5669df9"],"settings":{"version":"2019-04-30","rte_version":3,"blockAuthQueryParams":true,"allowedCDNTokens":["access_token"],"branches":true,"localesOptimization":false,"webhook_enabled":true,"visual_builder":{},"timeline":{},"live_preview":{"enabled":true,"default-env":"blta799e64ff18a4df3","default-url":""},"am_v2":{},"entries":{},"language_fallback":false},"SYS_ACL":{"others":{"invite":false,"sub_acl":{"create":false,"read":false,"update":false,"delete":false}},"roles":[{"uid":"bltd84b6b0132b0a0e5","name":"Developer","invite":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true}},{"uid":"blt167f15fb55232230","name":"Admin","invite":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true}}]}},{"created_at":"2026-03-07T06:14:15.241Z","updated_at":"2026-03-07T06:14:33.229Z","uid":"blt280e2f910a2197a9","name":"Copy of Interns 2026 - Jan","org_uid":"bltc27b596a90cf8edc","api_key":"blt24ae66d4b6dc2080","master_locale":"en-us","is_asset_download_public":true,"owner_uid":"blt1930fc55e5669df9","user_uids":["blt1930fc55e5669df9"],"settings":{"version":"2019-04-30","rte_version":3,"blockAuthQueryParams":true,"allowedCDNTokens":["access_token"],"branches":true,"localesOptimization":false,"webhook_enabled":true,"visual_b
-
- Test Context - - - - -
TestScenarioReturnAllStacks
-
Passed0.30s
-
✅ Test009_Stack_Settings
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "stack_settings": {
-    "stack_variables": {
-      "enforce_unique_urls": true,
-      "sys_rte_allowed_tags": "figure"
-    },
-    "discrete_variables": {
-      "cms": true,
-      "_version": 3
-    },
-    "live_preview": {},
-    "visual_builder": {},
-    "timeline": {},
-    "entries": {}
-  }
-}
-
-
-
-
IsNull(model.Notice)
-
-
Expected:
null
-
Actual:
null
-
-
-
-
AreEqual(enforce_unique_urls)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
AreEqual(sys_rte_allowed_tags)
-
-
Expected:
figure
-
Actual:
figure
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/stacks/settings
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/stacks/settings' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:36 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 14ms
-X-Request-ID: 9972443d-0bdf-4519-aed1-6a37cd189417
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "stack_settings": {
-    "stack_variables": {
-      "enforce_unique_urls": true,
-      "sys_rte_allowed_tags": "figure"
-    },
-    "discrete_variables": {
-      "cms": true,
-      "_version": 3
-    },
-    "live_preview": {},
-    "visual_builder": {},
-    "timeline": {},
-    "entries": {}
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioStackSettings
StackApiKeyblt1bca31da998b57a9
-
Passed0.27s
-
✅ Test002_Should_Return_All_StacksAsync
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "stacks": [
-    {
-      "created_at": "2026-01-08T05:35:15.139Z",
-      "updated_at": "2026-02-03T09:46:34.542Z",
-      "uid": "blt5c0ec6f94a0a9fc2",
-      "name": "Interns 2026 - Jan",
-      "description": "This stack is for the interns joing us in Jan 2026",
-      "org_uid": "bltc27b596a90cf8edc",
-      "api_key": "blt2fe3288bcebfa8ae",
-      "master_locale": "en-us",
-      "is_asset_download_public": true,
-      "owner_uid": "blt903aded41dff204d",
-      "user_uids": [
-        "blt903aded41dff204d",
-        "blt8001963599ba21f9",
-        "blt97cfbb0ce84fd2c5",
-        "blt01684de27f8ca841",
-        "cs001cad49eaaea4e0",
-        "cs745d1ab2a1560148",
-        "blt2fd21f9e9dbb26c9",
-        "blt1930fc55e5669df9",
-        "blt38b66ea00448e029",
-        "bltc15b42703fa590a5"
-      ],
-      "settings": {
-        "version": "2019-04-30",
-        "rte_version": 3,
-        "blockAuthQueryParams": true,
-        "allowedCDNTokens": [
-          "access_token"
-        ],
-        "branches": true,
-        "localesOptimization": false,
-        "webhook_enabled": true,
-        "visual_builder": {},
-        "timeline": {},
-        "live_preview": {
-          "enabled": true,
-          "default-env": "bltd54a9c9664f7642e",
-          "default-url": "",
-          "is-always-open-in-new-tab": false,
-          "lp-onboarding-setup-visible": true
-        },
-        "am_v2": {},
-        "language_fallback": false
-      },
-      "SYS_ACL": {
-        "others": {
-          "invite": false,
-          "sub_acl": {
-            "create": false,
-            "read": false,
-            "update": false,
-            "delete": false
-          }
-        },
-        "roles": [
-          {
-            "uid": "blt3e4a83f62c3ed726",
-            "name": "Developer",
-            "invite": true,
-            "sub_acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true
-            }
-          },
-          {
-            "uid": "blte050fa9e897278d5",
-            "name": "Admin",
-            "invite": true,
-            "sub_acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true
-            }
-          }
-        ]
-      }
-    },
-    {
-      "created_at": "2026-03-06T15:18:49.878Z",
-      "updated_at": "2026-03-12T12:11:46.324Z",
-      "uid": "bltae6bacc186e4819f",
-      "name": "Copy of Dotnet CDA SDK internal test",
-      "org_uid": "blt8d282118e2094bb8",
-      "api_key": "blta23060d14351eb10",
-      "master_locale": "en-us",
-      "is_asset_download_public": true,
-      "owner_uid": "blt4c60a7a861d77460",
-      "user_uids": [
-        "blt4c60a7a861d77460",
-        "blt1930fc55e5669df9"
-      ],
-      "settings": {
-        "version": "2019-04-30",
-        "rte_version": 3,
-        "blockAuthQueryParams": true,
-        "allowedCDNTokens": [
-          "access_token"
-        ],
-        "branches": true,
-        "localesOptimization": false,
-        "webhook_enabled": true,
-        "visual_builder": {},
-        "timeline": {},
-        "live_preview": {
-          "enabled": true,
-          "default-env": "blta799e64ff18a4df3",
-          "default-url": ""
-        },
-        "am_v2": {},
-        "entries": {},
-        "language_fallback": false
-      },
-      "SYS_ACL": {
-        "others": {
-          "invite": false,
-          "sub_acl": {
-            "create": false,
-            "read": false,
-            "update": false,
-            "delete": false
-          }
-        },
-        "roles": [
-          {
-            "uid": "bltd84b6b0132b0a0e5",
-            "name": "Developer",
-            "invite": true,
-            "sub_acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true
-            }
-          },
-          {
-            "uid": "blt167f15fb55232230",
-            "name": "Admin",
-            "invite": true,
-            "sub_acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true
-            }
-          }
-        ]
-      }
-    },
-    {
-      "created_at": "2026-03-07T06:14:15.241Z",
-      "updated_at": "2026-03-07T06:14:33.229Z",
-      "uid": "blt280e2f910a2197a9",
-      "name": "Copy of Interns 2026 - Jan",
-      "org_uid": "bltc27b596a90cf8edc",
-      "api_key": "blt24ae66d4b6dc2080",
-      "master_locale": "en-us",
-      "is_asset_download_public": true,
-      "owner_uid": "blt1930fc55e5669df9",
-      "user_uids": [
-        "blt1930fc55e5669df9"
-      ],
-      "settings": {
-        "version": "2019-04-30",
-        "rte_version": 3,
-        "blockAuthQueryParams": true,
-        "allowedCDNTokens": [
-          "access_token"
-        ],
-        "branches": true,
-        "localesOptimization": false,
-        "webhook_enabled": true,
-        "visual_builder": {},
-        "timeline": {},
-        "live_preview": {
-          "enabled": true,
-          "default-env": "blt229ad7409015a267",
-          "default-url": "",
-          "is-always-open-in-new-tab": false,
-          "lp-onboarding-setup-visible": true
-        },
-        "am_v2": {},
-        "entries": {},
-        "language_fallback": false
-      },
-      "master_key": "blt437a774a7a6e5ad7",
-      "SYS_ACL": {
-        "others": {
-          "invite": false,
-          "sub_acl": {
-            "create": false,
-            "read": false,
-            "update": false,
-            "delete": false
-          }
-        },
-        "roles": [
-          {
-            "uid": "blt77b9ea181befa604",
-            "name": "Developer",
-            "invite": true,
-            "sub_acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true
-            }
-          },
-          {
-            "uid": "blt0472445c363a2ed3",
-            "name": "Admin",
-            "invite": true,
-            "sub_acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true
-            }
-          }
-        ]
-      }
-    },
-    {
-      "created_at": "2026-03-12T12:16:53.714Z",
-      "updated_at": "2026-03-12T12:16:56.378Z",
-      "uid": "blta77d4b24cace786a",
-      "name": "DotNet Management SDK Stack",
-      "description": "Integration testing Stack for DotNet Management SDK",
-      "org_uid": "blt8d282118e2094bb8",
-      "api_key": "bltd87839f91f3e1448",
-      "master_locale": "en-us",
-      "is_asset_download_public": true,
-      "owner_uid": "blt1930fc55e5669df9",
-      "user_uids": [
-        "blt1930fc55e5669df9"
-      ],
-      "settings": {
-        "version": "2019-04-30",
-        "rte_version": 3,
-        "blockAuthQueryParams": true,
-        "allowedCDNTokens": [
-          "access_token"
-        ],
-        "branches": true,
-        "localesOptimization": false,
-        "webhook_enabled": true,
-        "visual_builder": {},
-        "timeline": {},
-        "live_preview": {},
-        "am_v2": {},
-        "entries": {},
-        "language_fallback": false,
-        "rte": {},
-        "workflow_stages": false,
-        "publishing_rules": false
-      },
-      "master_key": "bltb426e3b0f3a4c531",
-      "SYS_ACL": {
-        "others": {
-          "invite": false,
-          "sub_acl": {
-            "create": false,
-            "read": false,
-            "update": false,
-            "delete": false
-          }
-        },
-        "roles": [
-          {
-            "uid": "blt9abb917383970961",
-            "name": "Developer",
-            "invite": true,
-            "sub_acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true
-            }
-          },
-          {
-            "uid": "blt60539db603b6350b",
-            "name": "Admin",
-            "invite": true,
-            "sub_acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true
-            }
-          }
-        ]
-      }
-    },
-    {
-      "created_at": "2026-03-12T12:35:38.558Z",
-      "updated_at": "2026-03-12T12:35:41.085Z",
-      "uid": "bltf6dedbb54111facb",
-      "name": "DotNet Management SDK Stack",
-      "description": "Integration testing Stack for DotNet Management SDK",
-      "org_uid": "blt8d282118e2094bb8",
-      "api_key": "blt72045e49dc1aa085",
-      "master_locale": "en-us",
-      "is_asset_download_public": true,
-      "owner_uid": "blt1930fc55e5669df9",
-      "user_uids": [
-        "blt1930fc55e5669df9"
-      ],
-      "settings": {
-        "version": "2019-04-30",
-        "rte_version": 3,
-        "blockAuthQueryParams": true,
-        "allowedCDNTokens": [
-          "access_token"
-        ],
-        "branches": true,
-        "localesOptimization": false,
-        "webhook_enabled": true,
-        "visual_builder": {},
-        "timeline": {},
-        "live_preview": {},
-        "am_v2": {},
-        "entries": {},
-        "language_fallback": false,
-        "rte": {},
-        "workflow_stages": false,
-        "publishing_rules": false
-      },
-      "master_key": "blt5c25d00df8c449c8",
-      "SYS_ACL": {
-        "others": {
-          "invite": false,
-          "sub_acl": {
-            "create": false,
-            "read": false,
-            "update": false,
-            "delete": false
-          }
-        },
-        "roles": [
-          {
-            "uid": "blt006177335aae6cf8",
-            "name": "Developer",
-            "invite": true,
-            "sub_acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true
-            }
-          },
-          {
-            "uid": "blt96bdff8eb43af1b9",
-            "name": "Admin",
-            "invite": true,
-            "sub_acl": {
-              "create": true,
-              "read": true,
-              "update": true,
-              "delete": true
-            }
-          }
-        ]
-      }
-    }
-  ],
-  "count": 5
-}
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/stacks
-
Request Headers
authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/stacks' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:34 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-runtime: 23ms
-X-Request-ID: adb85936-fd7b-4b15-82ce-06e2b4b089c6
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{"stacks":[{"created_at":"2026-01-08T05:35:15.139Z","updated_at":"2026-02-03T09:46:34.542Z","uid":"blt5c0ec6f94a0a9fc2","name":"Interns 2026 - Jan","description":"This stack is for the interns joing us in Jan 2026","org_uid":"bltc27b596a90cf8edc","api_key":"blt2fe3288bcebfa8ae","master_locale":"en-us","is_asset_download_public":true,"owner_uid":"blt903aded41dff204d","user_uids":["blt903aded41dff204d","blt8001963599ba21f9","blt97cfbb0ce84fd2c5","blt01684de27f8ca841","cs001cad49eaaea4e0","cs745d1ab2a1560148","blt2fd21f9e9dbb26c9","blt1930fc55e5669df9","blt38b66ea00448e029","bltc15b42703fa590a5"],"settings":{"version":"2019-04-30","rte_version":3,"blockAuthQueryParams":true,"allowedCDNTokens":["access_token"],"branches":true,"localesOptimization":false,"webhook_enabled":true,"visual_builder":{},"timeline":{},"live_preview":{"enabled":true,"default-env":"bltd54a9c9664f7642e","default-url":"","is-always-open-in-new-tab":false,"lp-onboarding-setup-visible":true},"am_v2":{},"language_fallback":false},"SYS_ACL":{"others":{"invite":false,"sub_acl":{"create":false,"read":false,"update":false,"delete":false}},"roles":[{"uid":"blt3e4a83f62c3ed726","name":"Developer","invite":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true}},{"uid":"blte050fa9e897278d5","name":"Admin","invite":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true}}]}},{"created_at":"2026-03-06T15:18:49.878Z","updated_at":"2026-03-12T12:11:46.324Z","uid":"bltae6bacc186e4819f","name":"Copy of Dotnet CDA SDK internal test","org_uid":"blt8d282118e2094bb8","api_key":"blta23060d14351eb10","master_locale":"en-us","is_asset_download_public":true,"owner_uid":"blt4c60a7a861d77460","user_uids":["blt4c60a7a861d77460","blt1930fc55e5669df9"],"settings":{"version":"2019-04-30","rte_version":3,"blockAuthQueryParams":true,"allowedCDNTokens":["access_token"],"branches":true,"localesOptimization":false,"webhook_enabled":true,"visual_builder":{},"timeline":{},"live_preview":{"enabled":true,"default-env":"blta799e64ff18a4df3","default-url":""},"am_v2":{},"entries":{},"language_fallback":false},"SYS_ACL":{"others":{"invite":false,"sub_acl":{"create":false,"read":false,"update":false,"delete":false}},"roles":[{"uid":"bltd84b6b0132b0a0e5","name":"Developer","invite":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true}},{"uid":"blt167f15fb55232230","name":"Admin","invite":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true}}]}},{"created_at":"2026-03-07T06:14:15.241Z","updated_at":"2026-03-07T06:14:33.229Z","uid":"blt280e2f910a2197a9","name":"Copy of Interns 2026 - Jan","org_uid":"bltc27b596a90cf8edc","api_key":"blt24ae66d4b6dc2080","master_locale":"en-us","is_asset_download_public":true,"owner_uid":"blt1930fc55e5669df9","user_uids":["blt1930fc55e5669df9"],"settings":{"version":"2019-04-30","rte_version":3,"blockAuthQueryParams":true,"allowedCDNTokens":["access_token"],"branches":true,"localesOptimization":false,"webhook_enabled":true,"visual_b
-
- Test Context - - - - -
TestScenarioReturnAllStacksAsync
-
Passed0.29s
-
✅ Test011_Add_Stack_Settings_Async
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "notice": "Stack settings updated successfully.",
-  "stack_settings": {
-    "rte": {
-      "cs_only_breakline": true
-    },
-    "stack_variables": {
-      "enforce_unique_urls": true,
-      "sys_rte_allowed_tags": "figure"
-    },
-    "discrete_variables": {
-      "cms": true,
-      "_version": 3
-    },
-    "live_preview": {},
-    "visual_builder": {},
-    "timeline": {},
-    "entries": {}
-  }
-}
-
-
-
-
AreEqual(Notice)
-
-
Expected:
Stack settings updated successfully.
-
Actual:
Stack settings updated successfully.
-
-
-
-
AreEqual(cs_only_breakline)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/stacks/settings
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 102
-Content-Type: application/json
-
Request Body
{"stack_settings":{"stack_variables":null,"discrete_variables":null,"rte":{"cs_only_breakline":true}}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks/settings' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 102' \
-  -H 'Content-Type: application/json' \
-  -d '{"stack_settings":{"stack_variables":null,"discrete_variables":null,"rte":{"cs_only_breakline":true}}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:37 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 22ms
-X-Request-ID: 5f0dca29-e0f5-4013-a22c-756e7d10dcdf
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Stack settings updated successfully.",
-  "stack_settings": {
-    "rte": {
-      "cs_only_breakline": true
-    },
-    "stack_variables": {
-      "enforce_unique_urls": true,
-      "sys_rte_allowed_tags": "figure"
-    },
-    "discrete_variables": {
-      "cms": true,
-      "_version": 3
-    },
-    "live_preview": {},
-    "visual_builder": {},
-    "timeline": {},
-    "entries": {}
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioAddStackSettingsAsync
StackApiKeyblt1bca31da998b57a9
-
Passed0.28s
-
✅ Test003_Should_Create_Stack
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "notice": "Stack created successfully.",
-  "stack": {
-    "cluster": "cs-internal",
-    "created_at": "2026-03-13T02:33:34.598Z",
-    "updated_at": "2026-03-13T02:33:34.701Z",
-    "uid": "bltcf56a6f05651f1d8",
-    "name": "DotNet Management Stack",
-    "org_uid": "blt8d282118e2094bb8",
-    "api_key": "blt1bca31da998b57a9",
-    "master_locale": "en-us",
-    "is_asset_download_public": true,
-    "owner_uid": "blt1930fc55e5669df9",
-    "user_uids": [
-      "blt1930fc55e5669df9"
-    ],
-    "settings": {
-      "version": "2019-04-30",
-      "rte_version": 3,
-      "blockAuthQueryParams": true,
-      "allowedCDNTokens": [
-        "access_token"
-      ],
-      "branches": true,
-      "localesOptimization": false,
-      "webhook_enabled": true,
-      "visual_builder": {},
-      "timeline": {},
-      "live_preview": {},
-      "am_v2": {},
-      "entries": {},
-      "language_fallback": false
-    },
-    "master_key": "bltb651649fc56dcfa8",
-    "SYS_ACL": {
-      "others": {
-        "invite": false,
-        "sub_acl": {
-          "create": false,
-          "read": false,
-          "update": false,
-          "delete": false
-        }
-      },
-      "roles": [
-        {
-          "uid": "blt5f456b9cfa69b697",
-          "name": "Developer",
-          "invite": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true
-          }
-        },
-        {
-          "uid": "blt1b7926e68b1b14b2",
-          "name": "Admin",
-          "invite": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true
-          }
-        }
-      ]
-    },
-    "discrete_variables": {
-      "cms": true,
-      "_version": 3,
-      "secret_key": "689488de7ee7fae3f2ce57afeaecfc03cf638e18"
-    }
-  }
-}
-
-
-
-
IsNull(model.Stack.Description)
-
-
Expected:
null
-
Actual:
null
-
-
-
-
AreEqual(StackName)
-
-
Expected:
DotNet Management Stack
-
Actual:
DotNet Management Stack
-
-
-
-
AreEqual(MasterLocale)
-
-
Expected:
en-us
-
Actual:
en-us
-
-
-
-
AreEqual(OrgUid)
-
-
Expected:
blt8d282118e2094bb8
-
Actual:
blt8d282118e2094bb8
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/stacks
-
Request Headers
organization_uid: blt8d282118e2094bb8
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 68
-Content-Type: application/json
-
Request Body
{"stack":{"name":"DotNet Management Stack","master_locale":"en-us"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks' \
-  -H 'organization_uid: blt8d282118e2094bb8' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 68' \
-  -H 'Content-Type: application/json' \
-  -d '{"stack":{"name":"DotNet Management Stack","master_locale":"en-us"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:34 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-ratelimit-reset: 60
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 151ms
-X-Request-ID: 8fcba118-f318-486e-adbd-ae65f79d770d
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Stack created successfully.",
-  "stack": {
-    "cluster": "cs-internal",
-    "created_at": "2026-03-13T02:33:34.598Z",
-    "updated_at": "2026-03-13T02:33:34.701Z",
-    "uid": "bltcf56a6f05651f1d8",
-    "name": "DotNet Management Stack",
-    "org_uid": "blt8d282118e2094bb8",
-    "api_key": "blt1bca31da998b57a9",
-    "master_locale": "en-us",
-    "is_asset_download_public": true,
-    "owner_uid": "blt1930fc55e5669df9",
-    "user_uids": [
-      "blt1930fc55e5669df9"
-    ],
-    "settings": {
-      "version": "2019-04-30",
-      "rte_version": 3,
-      "blockAuthQueryParams": true,
-      "allowedCDNTokens": [
-        "access_token"
-      ],
-      "branches": true,
-      "localesOptimization": false,
-      "webhook_enabled": true,
-      "visual_builder": {},
-      "timeline": {},
-      "live_preview": {},
-      "am_v2": {},
-      "entries": {},
-      "language_fallback": false
-    },
-    "master_key": "bltb651649fc56dcfa8",
-    "SYS_ACL": {
-      "others": {
-        "invite": false,
-        "sub_acl": {
-          "create": false,
-          "read": false,
-          "update": false,
-          "delete": false
-        }
-      },
-      "roles": [
-        {
-          "uid": "blt5f456b9cfa69b697",
-          "name": "Developer",
-          "invite": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true
-          }
-        },
-        {
-          "uid": "blt1b7926e68b1b14b2",
-          "name": "Admin",
-          "invite": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true
-          }
-        }
-      ]
-    },
-    "discrete_variables": {
-      "cms": true,
-      "_version": 3,
-      "secret_key": "689488de7ee7fae3f2ce57afeaecfc03cf638e18"
-    }
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioCreateStack
StackApiKeyblt1bca31da998b57a9
-
Passed0.42s
-
✅ Test005_Should_Update_Stack_Async
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
{
-  "notice": "Stack updated successfully.",
-  "stack": {
-    "created_at": "2026-03-13T02:33:34.598Z",
-    "updated_at": "2026-03-13T02:33:35.337Z",
-    "uid": "bltcf56a6f05651f1d8",
-    "name": "DotNet Management SDK Stack",
-    "description": "Integration testing Stack for DotNet Management SDK",
-    "org_uid": "blt8d282118e2094bb8",
-    "api_key": "blt1bca31da998b57a9",
-    "master_locale": "en-us",
-    "is_asset_download_public": true,
-    "owner_uid": "blt1930fc55e5669df9",
-    "user_uids": [
-      "blt1930fc55e5669df9"
-    ],
-    "settings": {
-      "version": "2019-04-30",
-      "rte_version": 3,
-      "blockAuthQueryParams": true,
-      "allowedCDNTokens": [
-        "access_token"
-      ],
-      "branches": true,
-      "localesOptimization": false,
-      "webhook_enabled": true,
-      "visual_builder": {},
-      "timeline": {},
-      "live_preview": {},
-      "am_v2": {},
-      "entries": {},
-      "language_fallback": false
-    },
-    "master_key": "bltb651649fc56dcfa8",
-    "SYS_ACL": {
-      "others": {
-        "invite": false,
-        "sub_acl": {
-          "create": false,
-          "read": false,
-          "update": false,
-          "delete": false
-        }
-      },
-      "roles": [
-        {
-          "uid": "blt5f456b9cfa69b697",
-          "name": "Developer",
-          "invite": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true
-          }
-        },
-        {
-          "uid": "blt1b7926e68b1b14b2",
-          "name": "Admin",
-          "invite": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true
-          }
-        }
-      ]
-    },
-    "stack_variables": {},
-    "discrete_variables": {
-      "cms": true,
-      "_version": 3,
-      "secret_key": "689488de7ee7fae3f2ce57afeaecfc03cf638e18"
-    }
-  }
-}
-
-
-
-
AreEqual(APIKey)
-
-
Expected:
blt1bca31da998b57a9
-
Actual:
blt1bca31da998b57a9
-
-
-
-
AreEqual(StackName)
-
-
Expected:
DotNet Management SDK Stack
-
Actual:
DotNet Management SDK Stack
-
-
-
-
AreEqual(MasterLocale)
-
-
Expected:
en-us
-
Actual:
en-us
-
-
-
-
AreEqual(Description)
-
-
Expected:
Integration testing Stack for DotNet Management SDK
-
Actual:
Integration testing Stack for DotNet Management SDK
-
-
-
-
AreEqual(OrgUid)
-
-
Expected:
blt8d282118e2094bb8
-
Actual:
blt8d282118e2094bb8
-
-

HTTP Transactions

-
- -
PUThttps://api.contentstack.io/v3/stacks
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 116
-Content-Type: application/json
-
Request Body
{"stack":{"name":"DotNet Management SDK Stack","description":"Integration testing Stack for DotNet Management SDK"}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/stacks' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 116' \
-  -H 'Content-Type: application/json' \
-  -d '{"stack":{"name":"DotNet Management SDK Stack","description":"Integration testing Stack for DotNet Management SDK"}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:35 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 47ms
-X-Request-ID: d5545347-6c0d-42db-b7cd-6155c4e4c44c
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Stack updated successfully.",
-  "stack": {
-    "created_at": "2026-03-13T02:33:34.598Z",
-    "updated_at": "2026-03-13T02:33:35.337Z",
-    "uid": "bltcf56a6f05651f1d8",
-    "name": "DotNet Management SDK Stack",
-    "description": "Integration testing Stack for DotNet Management SDK",
-    "org_uid": "blt8d282118e2094bb8",
-    "api_key": "blt1bca31da998b57a9",
-    "master_locale": "en-us",
-    "is_asset_download_public": true,
-    "owner_uid": "blt1930fc55e5669df9",
-    "user_uids": [
-      "blt1930fc55e5669df9"
-    ],
-    "settings": {
-      "version": "2019-04-30",
-      "rte_version": 3,
-      "blockAuthQueryParams": true,
-      "allowedCDNTokens": [
-        "access_token"
-      ],
-      "branches": true,
-      "localesOptimization": false,
-      "webhook_enabled": true,
-      "visual_builder": {},
-      "timeline": {},
-      "live_preview": {},
-      "am_v2": {},
-      "entries": {},
-      "language_fallback": false
-    },
-    "master_key": "bltb651649fc56dcfa8",
-    "SYS_ACL": {
-      "others": {
-        "invite": false,
-        "sub_acl": {
-          "create": false,
-          "read": false,
-          "update": false,
-          "delete": false
-        }
-      },
-      "roles": [
-        {
-          "uid": "blt5f456b9cfa69b697",
-          "name": "Developer",
-          "invite": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true
-          }
-        },
-        {
-          "uid": "blt1b7926e68b1b14b2",
-          "name": "Admin",
-          "invite": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true
-          }
-        }
-      ]
-    },
-    "stack_variables": {},
-    "discrete_variables": {
-      "cms": true,
-      "_version": 3,
-      "secret_key": "689488de7ee7fae3f2ce57afeaecfc03cf638e18"
-    }
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioUpdateStackAsync
StackApiKeyblt1bca31da998b57a9
-
Passed0.32s
-
-
- -
-
-
- - Contentstack004_GlobalFieldTest -
-
- 9 passed · - 0 failed · - 0 skipped · - 9 total -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Test NameStatusDuration
-
✅ Test004_Should_Update_Global_Field
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsNotNull(globalField)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Tests.Model.GlobalFieldModel
-
-
-
-
IsNotNull(globalField.Modelling)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.ContentModelling
-
-
-
-
AreEqual(Title)
-
-
Expected:
Updated title
-
Actual:
Updated title
-
-
-
-
AreEqual(Uid)
-
-
Expected:
first
-
Actual:
first
-
-
-
-
AreEqual(SchemaCount)
-
-
Expected:
2
-
Actual:
2
-
-

HTTP Transactions

-
- -
PUThttps://api.contentstack.io/v3/global_fields/first
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 467
-Content-Type: application/json
-
Request Body
{"global_field": {"title":"Updated title","uid":"first","schema":[{"display_name":"Name","uid":"name","data_type":"text","multiple":false,"mandatory":false,"unique":false},{"display_name":"Rich text editor","uid":"description","data_type":"text","field_metadata":{"allow_rich_text":true,"description":"","multiline":false,"rich_text_type":"advanced","options":[],"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}]}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/global_fields/first' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 467' \
-  -H 'Content-Type: application/json' \
-  -d '{"global_field": {"title":"Updated title","uid":"first","schema":[{"display_name":"Name","uid":"name","data_type":"text","multiple":false,"mandatory":false,"unique":false},{"display_name":"Rich text editor","uid":"description","data_type":"text","field_metadata":{"allow_rich_text":true,"description":"","multiline":false,"rich_text_type":"advanced","options":[],"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}]}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:18 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-api_version: 3.2
-x-contentstack-organization: blt8d282118e2094bb8
-X-Request-ID: 6ba1e283-b227-4615-89e0-06ca430a867d
-x-runtime: 33
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 699
-
Response Body -
{
-  "notice": "Global Field updated successfully.",
-  "global_field": {
-    "title": "Updated title",
-    "uid": "first",
-    "description": "",
-    "schema": [
-      {
-        "display_name": "Name",
-        "uid": "name",
-        "data_type": "text",
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "display_name": "Rich text editor",
-        "uid": "description",
-        "data_type": "text",
-        "field_metadata": {
-          "allow_rich_text": true,
-          "description": "",
-          "multiline": false,
-          "rich_text_type": "advanced",
-          "options": [],
-          "version": 3
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      }
-    ],
-    "created_at": "2026-03-13T02:34:17.338Z",
-    "updated_at": "2026-03-13T02:34:18.507Z",
-    "_version": 2,
-    "inbuilt_class": false,
-    "last_activity": {},
-    "maintain_revisions": true
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioUpdateGlobalField
GlobalFieldfirst
-
Passed0.35s
-
✅ Test002_Should_Fetch_Global_Field
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsNotNull(globalField)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Tests.Model.GlobalFieldModel
-
-
-
-
IsNotNull(globalField.Modelling)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.ContentModelling
-
-
-
-
AreEqual(Title)
-
-
Expected:
First
-
Actual:
First
-
-
-
-
AreEqual(Uid)
-
-
Expected:
first
-
Actual:
first
-
-
-
-
AreEqual(SchemaCount)
-
-
Expected:
2
-
Actual:
2
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/global_fields/first
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/global_fields/first' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:17 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-surrogate-key: blt1bca31da998b57a9.global_fields blt1bca31da998b57a9.global_fields.first
-api_version: 3.2
-x-contentstack-organization: blt8d282118e2094bb8
-X-Request-ID: b37a738b-4083-4344-8296-47a228356d32
-x-runtime: 36
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 645
-
Response Body -
{
-  "global_field": {
-    "title": "First",
-    "uid": "first",
-    "description": "",
-    "schema": [
-      {
-        "display_name": "Name",
-        "uid": "name",
-        "data_type": "text",
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "display_name": "Rich text editor",
-        "uid": "description",
-        "data_type": "text",
-        "field_metadata": {
-          "allow_rich_text": true,
-          "description": "",
-          "multiline": false,
-          "rich_text_type": "advanced",
-          "options": [],
-          "version": 3
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      }
-    ],
-    "created_at": "2026-03-13T02:34:17.338Z",
-    "updated_at": "2026-03-13T02:34:17.338Z",
-    "_version": 1,
-    "inbuilt_class": false,
-    "last_activity": {},
-    "maintain_revisions": true
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioFetchGlobalField
GlobalFieldfirst
-
Passed0.33s
-
✅ Test001_Should_Create_Global_Field
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsNotNull(globalField)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Tests.Model.GlobalFieldModel
-
-
-
-
IsNotNull(globalField.Modelling)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.ContentModelling
-
-
-
-
AreEqual(Title)
-
-
Expected:
First
-
Actual:
First
-
-
-
-
AreEqual(Uid)
-
-
Expected:
first
-
Actual:
first
-
-
-
-
AreEqual(SchemaCount)
-
-
Expected:
2
-
Actual:
2
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/global_fields
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 459
-Content-Type: application/json
-
Request Body
{"global_field": {"title":"First","uid":"first","schema":[{"display_name":"Name","uid":"name","data_type":"text","multiple":false,"mandatory":false,"unique":false},{"display_name":"Rich text editor","uid":"description","data_type":"text","field_metadata":{"allow_rich_text":true,"description":"","multiline":false,"rich_text_type":"advanced","options":[],"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/global_fields' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 459' \
-  -H 'Content-Type: application/json' \
-  -d '{"global_field": {"title":"First","uid":"first","schema":[{"display_name":"Name","uid":"name","data_type":"text","multiple":false,"mandatory":false,"unique":false},{"display_name":"Rich text editor","uid":"description","data_type":"text","field_metadata":{"allow_rich_text":true,"description":"","multiline":false,"rich_text_type":"advanced","options":[],"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}]}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:17 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-api_version: 3.2
-x-contentstack-organization: blt8d282118e2094bb8
-X-Request-ID: eab07c8f-50e0-4aa3-9bf4-0f9a14442fea
-x-runtime: 216
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 691
-
Response Body -
{
-  "notice": "Global Field created successfully.",
-  "global_field": {
-    "title": "First",
-    "uid": "first",
-    "description": "",
-    "schema": [
-      {
-        "display_name": "Name",
-        "uid": "name",
-        "data_type": "text",
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "display_name": "Rich text editor",
-        "uid": "description",
-        "data_type": "text",
-        "field_metadata": {
-          "allow_rich_text": true,
-          "description": "",
-          "multiline": false,
-          "rich_text_type": "advanced",
-          "options": [],
-          "version": 3
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      }
-    ],
-    "created_at": "2026-03-13T02:34:17.338Z",
-    "updated_at": "2026-03-13T02:34:17.338Z",
-    "_version": 1,
-    "inbuilt_class": false,
-    "last_activity": {},
-    "maintain_revisions": true
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioCreateGlobalField
GlobalFieldfirst
-
Passed0.59s
-
✅ Test007_Should_Query_Async_Global_Field
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsNotNull(globalField)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Tests.Model.GlobalFieldsModel
-
-
-
-
IsNotNull(globalField.Modellings)
-
-
Expected:
NotNull
-
Actual:
System.Collections.Generic.List`1[Contentstack.Management.Core.Models.ContentModelling]
-
-
-
-
AreEqual(ModellingsCount)
-
-
Expected:
1
-
Actual:
1
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/global_fields
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/global_fields' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:20 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-surrogate-key: blt1bca31da998b57a9.global_fields
-api_version: 3.2
-x-contentstack-organization: blt8d282118e2094bb8
-X-Request-ID: d2ad04a0-4e82-4214-ab30-272af7c71ca9
-x-runtime: 21
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 654
-
Response Body -
{
-  "global_fields": [
-    {
-      "title": "First Async",
-      "uid": "first",
-      "description": "",
-      "schema": [
-        {
-          "display_name": "Name",
-          "uid": "name",
-          "data_type": "text",
-          "multiple": false,
-          "mandatory": false,
-          "unique": false,
-          "non_localizable": false
-        },
-        {
-          "display_name": "Rich text editor",
-          "uid": "description",
-          "data_type": "text",
-          "field_metadata": {
-            "allow_rich_text": true,
-            "description": "",
-            "multiline": false,
-            "rich_text_type": "advanced",
-            "options": [],
-            "version": 3
-          },
-          "multiple": false,
-          "mandatory": false,
-          "unique": false,
-          "non_localizable": false
-        }
-      ],
-      "created_at": "2026-03-13T02:34:17.338Z",
-      "updated_at": "2026-03-13T02:34:18.864Z",
-      "_version": 3,
-      "inbuilt_class": false,
-      "last_activity": {},
-      "maintain_revisions": true
-    }
-  ]
-}
-
- Test Context - - - - -
TestScenarioQueryAsyncGlobalField
-
Passed0.30s
-
✅ Test003_Should_Fetch_Async_Global_Field
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsNotNull(globalField)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Tests.Model.GlobalFieldModel
-
-
-
-
IsNotNull(globalField.Modelling)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.ContentModelling
-
-
-
-
AreEqual(Title)
-
-
Expected:
First
-
Actual:
First
-
-
-
-
AreEqual(Uid)
-
-
Expected:
first
-
Actual:
first
-
-
-
-
AreEqual(SchemaCount)
-
-
Expected:
2
-
Actual:
2
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/global_fields/first
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/global_fields/first' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:18 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-surrogate-key: blt1bca31da998b57a9.global_fields blt1bca31da998b57a9.global_fields.first
-api_version: 3.2
-x-contentstack-organization: blt8d282118e2094bb8
-X-Request-ID: eaef4c8c-1310-4372-b306-20b1df3ab393
-x-runtime: 38
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 645
-
Response Body -
{
-  "global_field": {
-    "title": "First",
-    "uid": "first",
-    "description": "",
-    "schema": [
-      {
-        "display_name": "Name",
-        "uid": "name",
-        "data_type": "text",
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "display_name": "Rich text editor",
-        "uid": "description",
-        "data_type": "text",
-        "field_metadata": {
-          "allow_rich_text": true,
-          "description": "",
-          "multiline": false,
-          "rich_text_type": "advanced",
-          "options": [],
-          "version": 3
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      }
-    ],
-    "created_at": "2026-03-13T02:34:17.338Z",
-    "updated_at": "2026-03-13T02:34:17.338Z",
-    "_version": 1,
-    "inbuilt_class": false,
-    "last_activity": {},
-    "maintain_revisions": true
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioFetchAsyncGlobalField
GlobalFieldfirst
-
Passed0.34s
-
✅ Test007a_Should_Query_Async_Global_Field_With_ApiVersion
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsNotNull(globalField)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Tests.Model.GlobalFieldsModel
-
-
-
-
IsNotNull(globalField.Modellings)
-
-
Expected:
NotNull
-
Actual:
System.Collections.Generic.List`1[Contentstack.Management.Core.Models.ContentModelling]
-
-
-
-
AreEqual(ModellingsCount)
-
-
Expected:
1
-
Actual:
1
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/global_fields
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-api_version: 3.2
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/global_fields' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'api_version: 3.2' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:20 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-surrogate-key: blt1bca31da998b57a9.global_fields
-api_version: 3.2
-x-contentstack-organization: blt8d282118e2094bb8
-X-Request-ID: bcc64c43-861d-4d6b-b24f-c5bc4208c67d
-x-runtime: 18
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 654
-
Response Body -
{
-  "global_fields": [
-    {
-      "title": "First Async",
-      "uid": "first",
-      "description": "",
-      "schema": [
-        {
-          "display_name": "Name",
-          "uid": "name",
-          "data_type": "text",
-          "multiple": false,
-          "mandatory": false,
-          "unique": false,
-          "non_localizable": false
-        },
-        {
-          "display_name": "Rich text editor",
-          "uid": "description",
-          "data_type": "text",
-          "field_metadata": {
-            "allow_rich_text": true,
-            "description": "",
-            "multiline": false,
-            "rich_text_type": "advanced",
-            "options": [],
-            "version": 3
-          },
-          "multiple": false,
-          "mandatory": false,
-          "unique": false,
-          "non_localizable": false
-        }
-      ],
-      "created_at": "2026-03-13T02:34:17.338Z",
-      "updated_at": "2026-03-13T02:34:18.864Z",
-      "_version": 3,
-      "inbuilt_class": false,
-      "last_activity": {},
-      "maintain_revisions": true
-    }
-  ]
-}
-
- Test Context - - - - -
TestScenarioQueryAsyncGlobalFieldWithApiVersion
-
Passed0.30s
-
✅ Test006_Should_Query_Global_Field
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsNotNull(globalField)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Tests.Model.GlobalFieldsModel
-
-
-
-
IsNotNull(globalField.Modellings)
-
-
Expected:
NotNull
-
Actual:
System.Collections.Generic.List`1[Contentstack.Management.Core.Models.ContentModelling]
-
-
-
-
AreEqual(ModellingsCount)
-
-
Expected:
1
-
Actual:
1
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/global_fields
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/global_fields' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:19 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-surrogate-key: blt1bca31da998b57a9.global_fields
-api_version: 3.2
-x-contentstack-organization: blt8d282118e2094bb8
-X-Request-ID: 865c4dad-42cf-4655-8a39-d3785a44a03b
-x-runtime: 18
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 654
-
Response Body -
{
-  "global_fields": [
-    {
-      "title": "First Async",
-      "uid": "first",
-      "description": "",
-      "schema": [
-        {
-          "display_name": "Name",
-          "uid": "name",
-          "data_type": "text",
-          "multiple": false,
-          "mandatory": false,
-          "unique": false,
-          "non_localizable": false
-        },
-        {
-          "display_name": "Rich text editor",
-          "uid": "description",
-          "data_type": "text",
-          "field_metadata": {
-            "allow_rich_text": true,
-            "description": "",
-            "multiline": false,
-            "rich_text_type": "advanced",
-            "options": [],
-            "version": 3
-          },
-          "multiple": false,
-          "mandatory": false,
-          "unique": false,
-          "non_localizable": false
-        }
-      ],
-      "created_at": "2026-03-13T02:34:17.338Z",
-      "updated_at": "2026-03-13T02:34:18.864Z",
-      "_version": 3,
-      "inbuilt_class": false,
-      "last_activity": {},
-      "maintain_revisions": true
-    }
-  ]
-}
-
- Test Context - - - - -
TestScenarioQueryGlobalField
-
Passed0.49s
-
✅ Test006a_Should_Query_Global_Field_With_ApiVersion
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsNotNull(globalField)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Tests.Model.GlobalFieldsModel
-
-
-
-
IsNotNull(globalField.Modellings)
-
-
Expected:
NotNull
-
Actual:
System.Collections.Generic.List`1[Contentstack.Management.Core.Models.ContentModelling]
-
-
-
-
AreEqual(ModellingsCount)
-
-
Expected:
1
-
Actual:
1
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/global_fields
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-api_version: 3.2
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/global_fields' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'api_version: 3.2' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:19 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-surrogate-key: blt1bca31da998b57a9.global_fields
-api_version: 3.2
-x-contentstack-organization: blt8d282118e2094bb8
-X-Request-ID: 1cf6c7d8-1281-43e4-921e-a73619340a9e
-x-runtime: 21
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 654
-
Response Body -
{
-  "global_fields": [
-    {
-      "title": "First Async",
-      "uid": "first",
-      "description": "",
-      "schema": [
-        {
-          "display_name": "Name",
-          "uid": "name",
-          "data_type": "text",
-          "multiple": false,
-          "mandatory": false,
-          "unique": false,
-          "non_localizable": false
-        },
-        {
-          "display_name": "Rich text editor",
-          "uid": "description",
-          "data_type": "text",
-          "field_metadata": {
-            "allow_rich_text": true,
-            "description": "",
-            "multiline": false,
-            "rich_text_type": "advanced",
-            "options": [],
-            "version": 3
-          },
-          "multiple": false,
-          "mandatory": false,
-          "unique": false,
-          "non_localizable": false
-        }
-      ],
-      "created_at": "2026-03-13T02:34:17.338Z",
-      "updated_at": "2026-03-13T02:34:18.864Z",
-      "_version": 3,
-      "inbuilt_class": false,
-      "last_activity": {},
-      "maintain_revisions": true
-    }
-  ]
-}
-
- Test Context - - - - -
TestScenarioQueryGlobalFieldWithApiVersion
-
Passed0.35s
-
✅ Test005_Should_Update_Async_Global_Field
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsNotNull(globalField)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Tests.Model.GlobalFieldModel
-
-
-
-
IsNotNull(globalField.Modelling)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.ContentModelling
-
-
-
-
AreEqual(Title)
-
-
Expected:
First Async
-
Actual:
First Async
-
-
-
-
AreEqual(Uid)
-
-
Expected:
first
-
Actual:
first
-
-
-
-
AreEqual(SchemaCount)
-
-
Expected:
2
-
Actual:
2
-
-

HTTP Transactions

-
- -
PUThttps://api.contentstack.io/v3/global_fields/first
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 465
-Content-Type: application/json
-
Request Body
{"global_field": {"title":"First Async","uid":"first","schema":[{"display_name":"Name","uid":"name","data_type":"text","multiple":false,"mandatory":false,"unique":false},{"display_name":"Rich text editor","uid":"description","data_type":"text","field_metadata":{"allow_rich_text":true,"description":"","multiline":false,"rich_text_type":"advanced","options":[],"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}]}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/global_fields/first' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 465' \
-  -H 'Content-Type: application/json' \
-  -d '{"global_field": {"title":"First Async","uid":"first","schema":[{"display_name":"Name","uid":"name","data_type":"text","multiple":false,"mandatory":false,"unique":false},{"display_name":"Rich text editor","uid":"description","data_type":"text","field_metadata":{"allow_rich_text":true,"description":"","multiline":false,"rich_text_type":"advanced","options":[],"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}]}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:18 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-api_version: 3.2
-x-contentstack-organization: blt8d282118e2094bb8
-X-Request-ID: a6345a41-0dce-4d58-9bb6-d8f95ba9bb2f
-x-runtime: 38
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 697
-
Response Body -
{
-  "notice": "Global Field updated successfully.",
-  "global_field": {
-    "title": "First Async",
-    "uid": "first",
-    "description": "",
-    "schema": [
-      {
-        "display_name": "Name",
-        "uid": "name",
-        "data_type": "text",
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "display_name": "Rich text editor",
-        "uid": "description",
-        "data_type": "text",
-        "field_metadata": {
-          "allow_rich_text": true,
-          "description": "",
-          "multiline": false,
-          "rich_text_type": "advanced",
-          "options": [],
-          "version": 3
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      }
-    ],
-    "created_at": "2026-03-13T02:34:17.338Z",
-    "updated_at": "2026-03-13T02:34:18.864Z",
-    "_version": 3,
-    "inbuilt_class": false,
-    "last_activity": {},
-    "maintain_revisions": true
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioUpdateAsyncGlobalField
GlobalFieldfirst
-
Passed0.39s
-
-
- -
-
-
- - Contentstack004_ReleaseTest -
-
- 22 passed · - 0 failed · - 0 skipped · - 22 total -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Test NameStatusDuration
-
✅ Test018_Should_Handle_Release_Not_Found_Async
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/releases/non_existent_release_uid_12345
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/releases/non_existent_release_uid_12345' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:13 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 458586ec-148b-4d81-bf82-ed712cf6ed09
-x-response-time: 23
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 95
-
Response Body -
{
-  "error_message": "Release does not exist.",
-  "error_code": 141,
-  "errors": {
-    "uid": [
-      "is not valid."
-    ]
-  }
-}
-
Passed0.30s
-
✅ Test006_Should_Fetch_Release_Async
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:52 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 2ba3a5a7-c88e-46f2-a504-3ed0a59dbea0
-x-response-time: 33
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 1",
-    "description": "Release created for .NET SDK integration testing (Number 1)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt9291650ea9629fd4",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:52.579Z",
-    "updated_at": "2026-03-13T02:33:52.579Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:52 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 81408948-8283-4f55-bbfd-e3a074571e99
-x-response-time: 34
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 2",
-    "description": "Release created for .NET SDK integration testing (Number 2)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt6dd1f2d09435f601",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:52.886Z",
-    "updated_at": "2026-03-13T02:33:52.886Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:53 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: e0266631-4c34-4b08-8add-205d1c3e90f5
-x-response-time: 33
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 3",
-    "description": "Release created for .NET SDK integration testing (Number 3)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt3054f2d2671039a0",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:53.195Z",
-    "updated_at": "2026-03-13T02:33:53.195Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:53 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 18c37670-27ac-435d-81f8-0ea14e7ac763
-x-response-time: 35
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 4",
-    "description": "Release created for .NET SDK integration testing (Number 4)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt799c72b9c29e34ad",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:53.504Z",
-    "updated_at": "2026-03-13T02:33:53.504Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:53 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 3d36ced3-30e1-4623-bf64-3e5fe4f08bd3
-x-response-time: 149
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 5",
-    "description": "Release created for .NET SDK integration testing (Number 5)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt571520303dfd9ef9",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:53.929Z",
-    "updated_at": "2026-03-13T02:33:53.929Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:54 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 4cef4653-bd76-4eef-addf-f5c56f066ff6
-x-response-time: 38
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 6",
-    "description": "Release created for .NET SDK integration testing (Number 6)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt14254daaebcec84d",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:54.234Z",
-    "updated_at": "2026-03-13T02:33:54.234Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/releases/blt571520303dfd9ef9
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/releases/blt571520303dfd9ef9' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:54 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 5fb9a512-d7eb-4251-87d6-946e897e4d37
-x-response-time: 20
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 391
-
Response Body -
{
-  "release": {
-    "name": "DotNet SDK Integration Test Release 5",
-    "description": "Release created for .NET SDK integration testing (Number 5)",
-    "locked": false,
-    "uid": "blt571520303dfd9ef9",
-    "items": [],
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:53.929Z",
-    "updated_at": "2026-03-13T02:33:53.929Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "_deploy_latest": false
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt9291650ea9629fd4
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt9291650ea9629fd4' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:54 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: d39f80ce-0499-4563-b60c-23289ae0d97b
-x-response-time: 45
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt6dd1f2d09435f601
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt6dd1f2d09435f601' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:55 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 4cde3267-2338-42f8-bf5d-9b8afdaf689f
-x-response-time: 37
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt3054f2d2671039a0
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt3054f2d2671039a0' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:55 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 26e828f8-ca39-44e6-bbd7-27b22abd57b4
-x-response-time: 40
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt799c72b9c29e34ad
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt799c72b9c29e34ad' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:55 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 0b5b0a9d-32a5-45f5-b796-db041352fd98
-x-response-time: 35
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt571520303dfd9ef9
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt571520303dfd9ef9' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:56 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: db928282-bafe-4a0e-a599-d5481e8dc1d1
-x-response-time: 45
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt14254daaebcec84d
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt14254daaebcec84d' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:56 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 8ce7e205-1457-4036-97e5-1c8b4e10cae0
-x-response-time: 41
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
Passed4.28s
-
✅ Test008_Should_Update_Release_Async
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 156
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 156' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:57 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 89e5784e-c866-4ec2-99b5-c43d8f0e44cc
-x-response-time: 35
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 472
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release",
-    "description": "Release created for .NET SDK integration testing",
-    "locked": false,
-    "archived": false,
-    "uid": "blt4f27e99ff9e341a7",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:57.805Z",
-    "updated_at": "2026-03-13T02:33:57.805Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
PUThttps://api.contentstack.io/v3/releases/blt4f27e99ff9e341a7
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 186
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release Updated Async","description":"Release created for .NET SDK integration testing (Updated Async)","locked":false,"archived":false}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/releases/blt4f27e99ff9e341a7' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 186' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release Updated Async","description":"Release created for .NET SDK integration testing (Updated Async)","locked":false,"archived":false}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:58 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 45c6f347-442f-4b81-9e14-cef4de2c6166
-x-response-time: 33
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 434
-
Response Body -
{
-  "notice": "Release updated successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release Updated Async",
-    "description": "Release created for .NET SDK integration testing (Updated Async)",
-    "locked": false,
-    "uid": "blt4f27e99ff9e341a7",
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:57.805Z",
-    "updated_at": "2026-03-13T02:33:58.188Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt4f27e99ff9e341a7
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt4f27e99ff9e341a7' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:58 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 69744904-5643-4478-ac8a-25cc05b96c52
-x-response-time: 47
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
Passed1.01s
-
✅ Test020_Should_Delete_Release_Async
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 197
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release For Deletion Async","description":"Release created for .NET SDK integration testing (To be deleted async)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 197' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release For Deletion Async","description":"Release created for .NET SDK integration testing (To be deleted async)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:14 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: d7866d4d-3ca0-4db3-b8b4-5aa1791ff100
-x-response-time: 41
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 513
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release For Deletion Async",
-    "description": "Release created for .NET SDK integration testing (To be deleted async)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt60ea988ef42b0256",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:14.691Z",
-    "updated_at": "2026-03-13T02:34:14.691Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt60ea988ef42b0256
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt60ea988ef42b0256' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:15 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 56db80d4-1e7a-4f2d-a6c6-fd37004672a0
-x-response-time: 41
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
Passed0.63s
-
✅ Test005_Should_Fetch_Release
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:48 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: e0501694-51cb-4e58-b906-b783e1f2b938
-x-response-time: 36
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 1",
-    "description": "Release created for .NET SDK integration testing (Number 1)",
-    "locked": false,
-    "archived": false,
-    "uid": "blta08e890c6dbdf585",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:48.326Z",
-    "updated_at": "2026-03-13T02:33:48.326Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:48 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 6e171a37-a91c-4278-a8e2-c51c57518a48
-x-response-time: 35
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 2",
-    "description": "Release created for .NET SDK integration testing (Number 2)",
-    "locked": false,
-    "archived": false,
-    "uid": "bltdb9128a53256d8e0",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:48.626Z",
-    "updated_at": "2026-03-13T02:33:48.626Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:48 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 1cb1f6c4-0046-4217-aeab-36ceb680ee5c
-x-response-time: 36
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 3",
-    "description": "Release created for .NET SDK integration testing (Number 3)",
-    "locked": false,
-    "archived": false,
-    "uid": "bltd9b09deb117ed76f",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:48.932Z",
-    "updated_at": "2026-03-13T02:33:48.932Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:49 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: f328cb0c-3822-46a9-9026-2052fb649d13
-x-response-time: 40
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 4",
-    "description": "Release created for .NET SDK integration testing (Number 4)",
-    "locked": false,
-    "archived": false,
-    "uid": "bltbb66ef53808fa4b7",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:49.237Z",
-    "updated_at": "2026-03-13T02:33:49.237Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:49 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 24959387-f347-4f72-92a3-419f8d09154e
-x-response-time: 109
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 5",
-    "description": "Release created for .NET SDK integration testing (Number 5)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt2c1102b1cc62ad71",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:49.626Z",
-    "updated_at": "2026-03-13T02:33:49.626Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:49 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 5ab12afc-5129-4609-bbef-2519b50e7b4f
-x-response-time: 44
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 6",
-    "description": "Release created for .NET SDK integration testing (Number 6)",
-    "locked": false,
-    "archived": false,
-    "uid": "bltba6f1db096411c83",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:49.940Z",
-    "updated_at": "2026-03-13T02:33:49.940Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/releases/bltd9b09deb117ed76f
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/releases/bltd9b09deb117ed76f' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:50 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: f72dff8f-3a91-4ea4-acc0-5790d3712591
-x-response-time: 27
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 391
-
Response Body -
{
-  "release": {
-    "name": "DotNet SDK Integration Test Release 3",
-    "description": "Release created for .NET SDK integration testing (Number 3)",
-    "locked": false,
-    "uid": "bltd9b09deb117ed76f",
-    "items": [],
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:48.932Z",
-    "updated_at": "2026-03-13T02:33:48.932Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "_deploy_latest": false
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blta08e890c6dbdf585
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blta08e890c6dbdf585' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:50 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: a68d73ab-a05a-490a-b19a-8305f1966427
-x-response-time: 223
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/bltdb9128a53256d8e0
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/bltdb9128a53256d8e0' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:51 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 0c6b0c60-6dc8-4a02-b9ae-345fca2e0d45
-x-response-time: 36
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/bltd9b09deb117ed76f
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/bltd9b09deb117ed76f' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:51 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: a037d8e7-8468-4523-88ea-30bc0646d98b
-x-response-time: 41
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/bltbb66ef53808fa4b7
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/bltbb66ef53808fa4b7' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:51 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: c58a6118-07f7-4c38-b1fd-a2ad3e2115eb
-x-response-time: 35
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt2c1102b1cc62ad71
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt2c1102b1cc62ad71' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:51 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: cec3c1b0-3487-4f43-8185-24ad98685360
-x-response-time: 45
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/bltba6f1db096411c83
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/bltba6f1db096411c83' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:52 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 7f1cf5cd-4180-4935-a25f-89abbca9a7f2
-x-response-time: 43
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
Passed4.26s
-
✅ Test022_Should_Delete_Release_Async_Without_Content_Type_Header
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 233
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release Delete Async Without Content-Type","description":"Release created for .NET SDK integration testing (Delete async without Content-Type header)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 233' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release Delete Async Without Content-Type","description":"Release created for .NET SDK integration testing (Delete async without Content-Type header)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:16 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 9a7ca23e-fa3a-4065-aef2-078c60253e1c
-x-response-time: 36
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 549
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release Delete Async Without Content-Type",
-    "description": "Release created for .NET SDK integration testing (Delete async without Content-Type header)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt568ebdd0a8c00d75",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:16.242Z",
-    "updated_at": "2026-03-13T02:34:16.242Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt568ebdd0a8c00d75
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt568ebdd0a8c00d75' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:16 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: b60b8c51-4734-4ab7-a3e8-1b20bc5f79ca
-x-response-time: 96
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
GEThttps://api.contentstack.io/v3/releases/blt568ebdd0a8c00d75
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/releases/blt568ebdd0a8c00d75' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:16 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 0b6f4529-7408-4539-aa3b-b03a11fac17a
-x-response-time: 29
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 95
-
Response Body -
{
-  "error_message": "Release does not exist.",
-  "error_code": 141,
-  "errors": {
-    "uid": [
-      "is not valid."
-    ]
-  }
-}
-
Passed0.98s
-
✅ Test011_Should_Query_Release_With_Parameters
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:01 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: ceffbca8-afb3-44c6-9432-e63a63ca5343
-x-response-time: 34
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 1",
-    "description": "Release created for .NET SDK integration testing (Number 1)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt663a37fb078107bf",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:01.369Z",
-    "updated_at": "2026-03-13T02:34:01.369Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:01 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 5f44f1fd-e9a1-4a98-b3e8-7ab5f010fcb3
-x-response-time: 37
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 2",
-    "description": "Release created for .NET SDK integration testing (Number 2)",
-    "locked": false,
-    "archived": false,
-    "uid": "bltc253439ececa2f22",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:01.688Z",
-    "updated_at": "2026-03-13T02:34:01.688Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:02 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 9db1ba90-e6f2-4442-a999-c312de22c8bb
-x-response-time: 43
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 3",
-    "description": "Release created for .NET SDK integration testing (Number 3)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt726470c6c2bb232c",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:02.022Z",
-    "updated_at": "2026-03-13T02:34:02.022Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:02 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: b962c590-d22e-4ae6-b482-50b6cd713bc2
-x-response-time: 111
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 4",
-    "description": "Release created for .NET SDK integration testing (Number 4)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt72513d1f0f925250",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:02.328Z",
-    "updated_at": "2026-03-13T02:34:02.328Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:02 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: f571c5cf-f4ea-4b97-966a-497d926c6145
-x-response-time: 58
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 5",
-    "description": "Release created for .NET SDK integration testing (Number 5)",
-    "locked": false,
-    "archived": false,
-    "uid": "bltb5a9d8d30cdd1628",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:02.711Z",
-    "updated_at": "2026-03-13T02:34:02.711Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:03 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: ea840b6a-eada-4c10-8144-f0c4694c6ffc
-x-response-time: 276
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 6",
-    "description": "Release created for .NET SDK integration testing (Number 6)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt9e2b5b0b77a6f80c",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:03.033Z",
-    "updated_at": "2026-03-13T02:34:03.033Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/releases?limit=5
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/releases?limit=5' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:03 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: f1d8aa53-7888-4be5-afb9-3bd81c7752df
-x-response-time: 44
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 1919
-
Response Body -
{
-  "releases": [
-    {
-      "name": "DotNet SDK Integration Test Release 6",
-      "description": "Release created for .NET SDK integration testing (Number 6)",
-      "locked": false,
-      "uid": "blt9e2b5b0b77a6f80c",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:34:03.033Z",
-      "updated_at": "2026-03-13T02:34:03.033Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    },
-    {
-      "name": "DotNet SDK Integration Test Release 5",
-      "description": "Release created for .NET SDK integration testing (Number 5)",
-      "locked": false,
-      "uid": "bltb5a9d8d30cdd1628",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:34:02.711Z",
-      "updated_at": "2026-03-13T02:34:02.711Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    },
-    {
-      "name": "DotNet SDK Integration Test Release 4",
-      "description": "Release created for .NET SDK integration testing (Number 4)",
-      "locked": false,
-      "uid": "blt72513d1f0f925250",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:34:02.328Z",
-      "updated_at": "2026-03-13T02:34:02.328Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    },
-    {
-      "name": "DotNet SDK Integration Test Release 3",
-      "description": "Release created for .NET SDK integration testing (Number 3)",
-      "locked": false,
-      "uid": "blt726470c6c2bb232c",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:34:02.022Z",
-      "updated_at": "2026-03-13T02:34:02.022Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    },
-    {
-      "name": "DotNet SDK Integration Test Release 2",
-      "description": "Release created for .NET SDK integration testing (Number 2)",
-      "locked": false,
-      "uid": "bltc253439ececa2f22",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:34:01.688Z",
-      "updated_at": "2026-03-13T02:34:01.688Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt663a37fb078107bf
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt663a37fb078107bf' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:03 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 6e77a8d2-8b73-4a82-b89a-22eb7fc0e064
-x-response-time: 45
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/bltc253439ececa2f22
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/bltc253439ececa2f22' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:04 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: e6b346c7-1d8f-4ac4-8fd8-7e6bc55fc2b1
-x-response-time: 40
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt726470c6c2bb232c
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt726470c6c2bb232c' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:04 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 306b8962-5687-4adb-a098-e0002ffb6563
-x-response-time: 34
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt72513d1f0f925250
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt72513d1f0f925250' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:04 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 83c2aad3-8e26-482c-b87b-8ca85577e71e
-x-response-time: 33
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/bltb5a9d8d30cdd1628
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/bltb5a9d8d30cdd1628' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:05 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 3e6107fb-296c-4a66-a308-46e4bd829438
-x-response-time: 38
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt9e2b5b0b77a6f80c
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt9e2b5b0b77a6f80c' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:05 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 5c5ff3e2-df89-4549-b572-2235bb6347b5
-x-response-time: 40
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
Passed4.37s
-
✅ Test019_Should_Delete_Release
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 185
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release For Deletion","description":"Release created for .NET SDK integration testing (To be deleted)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 185' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release For Deletion","description":"Release created for .NET SDK integration testing (To be deleted)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:14 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: d09f8f3d-79eb-445e-8742-16f332552fa3
-x-response-time: 33
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 501
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release For Deletion",
-    "description": "Release created for .NET SDK integration testing (To be deleted)",
-    "locked": false,
-    "archived": false,
-    "uid": "bltf16a3c42820c89b7",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:14.067Z",
-    "updated_at": "2026-03-13T02:34:14.067Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/bltf16a3c42820c89b7
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/bltf16a3c42820c89b7' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:14 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 28ddcacd-4806-4699-ae74-46dc345ae4b4
-x-response-time: 37
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
Passed0.62s
-
✅ Test002_Should_Create_Release_Async
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 156
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 156' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:38 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 7b87a6e6-6424-40b2-bf75-9f317239a5f7
-x-response-time: 42
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 472
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release",
-    "description": "Release created for .NET SDK integration testing",
-    "locked": false,
-    "archived": false,
-    "uid": "blt6a44a60f71864e22",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:38.917Z",
-    "updated_at": "2026-03-13T02:33:38.917Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/releases/blt6a44a60f71864e22
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/releases/blt6a44a60f71864e22' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:39 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: de72539e-a93a-4b92-8f86-bc9172ae3791
-x-response-time: 25
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 378
-
Response Body -
{
-  "release": {
-    "name": "DotNet SDK Integration Test Release",
-    "description": "Release created for .NET SDK integration testing",
-    "locked": false,
-    "uid": "blt6a44a60f71864e22",
-    "items": [],
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:38.917Z",
-    "updated_at": "2026-03-13T02:33:38.917Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "_deploy_latest": false
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt6a44a60f71864e22
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt6a44a60f71864e22' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:39 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 7f6e94be-35f7-4f27-b10a-d69d80cf7614
-x-response-time: 44
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
Passed0.95s
-
✅ Test016_Should_Get_Release_Items_Async
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 156
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 156' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:12 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 920df1d9-d89b-42cb-8e6a-e51ed9a20228
-x-response-time: 127
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 472
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release",
-    "description": "Release created for .NET SDK integration testing",
-    "locked": false,
-    "archived": false,
-    "uid": "bltc620d68865660fb6",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:12.528Z",
-    "updated_at": "2026-03-13T02:34:12.528Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/releases/bltc620d68865660fb6/items
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/releases/bltc620d68865660fb6/items' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:12 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 4f624059-ff4b-4fd0-bb55-84d7ce5490c8
-x-response-time: 28
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 12
-
Response Body -
{
-  "items": []
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/bltc620d68865660fb6
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/bltc620d68865660fb6' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:13 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 36aa81c4-46e4-4ab4-9ae4-3b96f23eca9a
-x-response-time: 41
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
Passed1.01s
-
✅ Test001_Should_Create_Release
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 156
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 156' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:38 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 49c82390-be00-40d8-bacd-4ff9a38ea321
-x-response-time: 120
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 472
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release",
-    "description": "Release created for .NET SDK integration testing",
-    "locked": false,
-    "archived": false,
-    "uid": "blt6bef0a6dc36fc482",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:37.926Z",
-    "updated_at": "2026-03-13T02:33:37.926Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/releases/blt6bef0a6dc36fc482
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/releases/blt6bef0a6dc36fc482' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:38 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 3d6c0bcb-7b0c-400a-ad97-87c0621c1719
-x-response-time: 21
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 378
-
Response Body -
{
-  "release": {
-    "name": "DotNet SDK Integration Test Release",
-    "description": "Release created for .NET SDK integration testing",
-    "locked": false,
-    "uid": "blt6bef0a6dc36fc482",
-    "items": [],
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:37.926Z",
-    "updated_at": "2026-03-13T02:33:37.926Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "_deploy_latest": false
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt6bef0a6dc36fc482
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt6bef0a6dc36fc482' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:38 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: c89dc8b6-d9b0-41e0-9865-882534730b7e
-x-response-time: 41
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
Passed0.99s
-
✅ Test004_Should_Query_All_Releases_Async
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:44 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 7c7e1308-cc3a-4147-a701-b3b215451f22
-x-response-time: 45
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 1",
-    "description": "Release created for .NET SDK integration testing (Number 1)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt85a94ddcba83c1ce",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:44.087Z",
-    "updated_at": "2026-03-13T02:33:44.087Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:44 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: baa924ee-5112-4af7-aeeb-e539467fcfca
-x-response-time: 32
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 2",
-    "description": "Release created for .NET SDK integration testing (Number 2)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt955bf2f232eb60b4",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:44.403Z",
-    "updated_at": "2026-03-13T02:33:44.403Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:44 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 58036fe5-de82-4ab5-a5b6-a977c4b21db1
-x-response-time: 45
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 3",
-    "description": "Release created for .NET SDK integration testing (Number 3)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt0d83445b0740a4a1",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:44.720Z",
-    "updated_at": "2026-03-13T02:33:44.720Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:45 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: a495f567-4658-4b07-9af6-26307b6040dc
-x-response-time: 33
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 4",
-    "description": "Release created for .NET SDK integration testing (Number 4)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt6717186ae89c2fca",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:45.021Z",
-    "updated_at": "2026-03-13T02:33:45.021Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:45 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 565cfe68-f3a8-48d9-bd79-5b6b46eab393
-x-response-time: 32
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 5",
-    "description": "Release created for .NET SDK integration testing (Number 5)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt1bffeda5fd47953f",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:45.312Z",
-    "updated_at": "2026-03-13T02:33:45.312Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:45 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 6ca85827-6fcf-453a-b7de-eb4c6abf8d4e
-x-response-time: 37
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 6",
-    "description": "Release created for .NET SDK integration testing (Number 6)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt8cd9af016e5679b2",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:45.612Z",
-    "updated_at": "2026-03-13T02:33:45.612Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:45 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 1d2b9e62-1f22-4f9d-9a42-899339bbdc6f
-x-response-time: 37
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 2300
-
Response Body -
{
-  "releases": [
-    {
-      "name": "DotNet SDK Integration Test Release 6",
-      "description": "Release created for .NET SDK integration testing (Number 6)",
-      "locked": false,
-      "uid": "blt8cd9af016e5679b2",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:33:45.612Z",
-      "updated_at": "2026-03-13T02:33:45.612Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    },
-    {
-      "name": "DotNet SDK Integration Test Release 5",
-      "description": "Release created for .NET SDK integration testing (Number 5)",
-      "locked": false,
-      "uid": "blt1bffeda5fd47953f",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:33:45.312Z",
-      "updated_at": "2026-03-13T02:33:45.312Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    },
-    {
-      "name": "DotNet SDK Integration Test Release 4",
-      "description": "Release created for .NET SDK integration testing (Number 4)",
-      "locked": false,
-      "uid": "blt6717186ae89c2fca",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:33:45.021Z",
-      "updated_at": "2026-03-13T02:33:45.021Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    },
-    {
-      "name": "DotNet SDK Integration Test Release 3",
-      "description": "Release created for .NET SDK integration testing (Number 3)",
-      "locked": false,
-      "uid": "blt0d83445b0740a4a1",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:33:44.720Z",
-      "updated_at": "2026-03-13T02:33:44.720Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    },
-    {
-      "name": "DotNet SDK Integration Test Release 2",
-      "description": "Release created for .NET SDK integration testing (Number 2)",
-      "locked": false,
-      "uid": "blt955bf2f232eb60b4",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:33:44.403Z",
-      "updated_at": "2026-03-13T02:33:44.403Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    },
-    {
-      "name": "DotNet SDK Integration Test Release 1",
-      "description": "Release created for .NET SDK integration testing (Number 1)",
-      "locked": false,
-      "uid": "blt85a94ddcba83c1ce",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:33:44.087Z",
-      "updated_at": "2026-03-13T02:33:44.087Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt85a94ddcba83c1ce
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt85a94ddcba83c1ce' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:46 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: d7758ca9-89fd-4afa-8a32-0bcb4e058b7b
-x-response-time: 33
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt955bf2f232eb60b4
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt955bf2f232eb60b4' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:46 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 7a9f4e5a-7b38-4aa2-8c06-9c309518dbec
-x-response-time: 41
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt0d83445b0740a4a1
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt0d83445b0740a4a1' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:46 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: e8015c26-4eb7-41e2-ac28-ac533e371efa
-x-response-time: 39
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt6717186ae89c2fca
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt6717186ae89c2fca' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:47 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 04aed9c9-7864-45a0-a2b3-6b907249c878
-x-response-time: 34
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt1bffeda5fd47953f
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt1bffeda5fd47953f' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:47 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 7b1902a7-68c8-4c97-9cba-57c6cf0be0a0
-x-response-time: 191
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt8cd9af016e5679b2
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt8cd9af016e5679b2' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:48 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 92c2582d-4054-952d-969c-090685efe81c
-x-response-time: 118
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
Passed4.25s
-
✅ Test021_Should_Delete_Release_Without_Content_Type_Header
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 221
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release Delete Without Content-Type","description":"Release created for .NET SDK integration testing (Delete without Content-Type header)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 221' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release Delete Without Content-Type","description":"Release created for .NET SDK integration testing (Delete without Content-Type header)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:15 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 5b002f9e-44dd-49c4-960c-710c3dcb8e44
-x-response-time: 32
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 537
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release Delete Without Content-Type",
-    "description": "Release created for .NET SDK integration testing (Delete without Content-Type header)",
-    "locked": false,
-    "archived": false,
-    "uid": "bltea6bb1d95b3b84d8",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:15.313Z",
-    "updated_at": "2026-03-13T02:34:15.313Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/bltea6bb1d95b3b84d8
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/bltea6bb1d95b3b84d8' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:15 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 16a5b670-e5d5-4a9f-b15f-a9d692a280ca
-x-response-time: 33
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
GEThttps://api.contentstack.io/v3/releases/bltea6bb1d95b3b84d8
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/releases/bltea6bb1d95b3b84d8' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:15 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: ce2b081e-fd93-43c1-acbe-500d3f3d3cff
-x-response-time: 25
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 95
-
Response Body -
{
-  "error_message": "Release does not exist.",
-  "error_code": 141,
-  "errors": {
-    "uid": [
-      "is not valid."
-    ]
-  }
-}
-
Passed0.93s
-
✅ Test017_Should_Handle_Release_Not_Found
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/releases/non_existent_release_uid_12345
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/releases/non_existent_release_uid_12345' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:13 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 978f369e-9607-4a23-a0c3-446e492cead4
-x-response-time: 18
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 95
-
Response Body -
{
-  "error_message": "Release does not exist.",
-  "error_code": 141,
-  "errors": {
-    "uid": [
-      "is not valid."
-    ]
-  }
-}
-
Passed0.31s
-
✅ Test014_Should_Create_Release_With_ParameterCollection_Async
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/releases?include_count=true
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 198
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release With Params Async","description":"Release created for .NET SDK integration testing (With Parameters Async)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases?include_count=true' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 198' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release With Params Async","description":"Release created for .NET SDK integration testing (With Parameters Async)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:10 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 7d1aeae4-76db-4eb7-ac06-addce888ae24
-x-response-time: 33
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 514
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release With Params Async",
-    "description": "Release created for .NET SDK integration testing (With Parameters Async)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt6f326a40f2db0303",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:10.664Z",
-    "updated_at": "2026-03-13T02:34:10.664Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt6f326a40f2db0303
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt6f326a40f2db0303' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:11 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 8334f461-8bf1-4429-a918-4544a4b8807c
-x-response-time: 43
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
Passed0.71s
-
✅ Test015_Should_Get_Release_Items
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 156
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 156' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:11 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: ab5232b5-844f-48db-86b5-0268f88050cc
-x-response-time: 37
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 472
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release",
-    "description": "Release created for .NET SDK integration testing",
-    "locked": false,
-    "archived": false,
-    "uid": "blte0a4f7b6fd4a97d6",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:11.343Z",
-    "updated_at": "2026-03-13T02:34:11.343Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/releases/blte0a4f7b6fd4a97d6/items
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/releases/blte0a4f7b6fd4a97d6/items' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:11 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 95e418fb-5f31-47cf-81b8-325b91f8a69b
-x-response-time: 138
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 12
-
Response Body -
{
-  "items": []
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blte0a4f7b6fd4a97d6
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blte0a4f7b6fd4a97d6' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:12 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 2718416a-0d6d-44f5-a0e1-63df21ebdd17
-x-response-time: 46
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
Passed1.08s
-
✅ Test012_Should_Query_Release_With_Parameters_Async
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:05 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: c2c0e914-c6a8-4782-99f8-f15dadb73c48
-x-response-time: 44
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 1",
-    "description": "Release created for .NET SDK integration testing (Number 1)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt773f5b263e9657e4",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:05.752Z",
-    "updated_at": "2026-03-13T02:34:05.752Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:06 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: fbd44b27-257b-4a35-a77c-765b767eadf5
-x-response-time: 41
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 2",
-    "description": "Release created for .NET SDK integration testing (Number 2)",
-    "locked": false,
-    "archived": false,
-    "uid": "bltfae026db5af12d0a",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:06.057Z",
-    "updated_at": "2026-03-13T02:34:06.057Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:06 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 56f10182-caf2-4000-9aa4-e9f640652640
-x-response-time: 30
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 3",
-    "description": "Release created for .NET SDK integration testing (Number 3)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt5e154776b5ba2034",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:06.360Z",
-    "updated_at": "2026-03-13T02:34:06.360Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:06 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 0f311bbc-4367-4c88-a95e-e4f6c2d35150
-x-response-time: 45
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 4",
-    "description": "Release created for .NET SDK integration testing (Number 4)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt8af4f206fe64912e",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:06.674Z",
-    "updated_at": "2026-03-13T02:34:06.674Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:07 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: fba7207f-c0bb-4eef-8e23-db80434fce2f
-x-response-time: 102
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 5",
-    "description": "Release created for .NET SDK integration testing (Number 5)",
-    "locked": false,
-    "archived": false,
-    "uid": "bltea169ae8cdd68b66",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:07.030Z",
-    "updated_at": "2026-03-13T02:34:07.030Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:07 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 3261485f-0558-4d4d-ab16-d9c25d155064
-x-response-time: 33
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 6",
-    "description": "Release created for .NET SDK integration testing (Number 6)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt326713324f192f4c",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:07.349Z",
-    "updated_at": "2026-03-13T02:34:07.349Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/releases?limit=5
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/releases?limit=5' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:07 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 7d3c4f81-8729-480a-82b6-7324e43a3f67
-x-response-time: 35
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 1919
-
Response Body -
{
-  "releases": [
-    {
-      "name": "DotNet SDK Integration Test Release 6",
-      "description": "Release created for .NET SDK integration testing (Number 6)",
-      "locked": false,
-      "uid": "blt326713324f192f4c",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:34:07.349Z",
-      "updated_at": "2026-03-13T02:34:07.349Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    },
-    {
-      "name": "DotNet SDK Integration Test Release 5",
-      "description": "Release created for .NET SDK integration testing (Number 5)",
-      "locked": false,
-      "uid": "bltea169ae8cdd68b66",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:34:07.030Z",
-      "updated_at": "2026-03-13T02:34:07.030Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    },
-    {
-      "name": "DotNet SDK Integration Test Release 4",
-      "description": "Release created for .NET SDK integration testing (Number 4)",
-      "locked": false,
-      "uid": "blt8af4f206fe64912e",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:34:06.674Z",
-      "updated_at": "2026-03-13T02:34:06.674Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    },
-    {
-      "name": "DotNet SDK Integration Test Release 3",
-      "description": "Release created for .NET SDK integration testing (Number 3)",
-      "locked": false,
-      "uid": "blt5e154776b5ba2034",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:34:06.360Z",
-      "updated_at": "2026-03-13T02:34:06.360Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    },
-    {
-      "name": "DotNet SDK Integration Test Release 2",
-      "description": "Release created for .NET SDK integration testing (Number 2)",
-      "locked": false,
-      "uid": "bltfae026db5af12d0a",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:34:06.057Z",
-      "updated_at": "2026-03-13T02:34:06.057Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt773f5b263e9657e4
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt773f5b263e9657e4' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:07 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 8b8bd811-cb60-4ed9-96f6-053fbbb61a2d
-x-response-time: 32
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/bltfae026db5af12d0a
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/bltfae026db5af12d0a' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:08 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: f1d0ac1a-75de-49e8-9ce9-1677d4934ad2
-x-response-time: 33
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt5e154776b5ba2034
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt5e154776b5ba2034' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:08 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 1c8a84ac-e72f-448a-90b9-fc41b26568a8
-x-response-time: 34
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt8af4f206fe64912e
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt8af4f206fe64912e' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:08 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: fed78337-df83-4242-b68e-39c84e8f2282
-x-response-time: 40
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/bltea169ae8cdd68b66
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/bltea169ae8cdd68b66' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:09 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 8ca56fa1-a0fa-4692-8a06-6adb97e33ba4
-x-response-time: 42
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt326713324f192f4c
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt326713324f192f4c' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:09 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 22659e7b-374e-4c14-bbd2-1401a31106ea
-x-response-time: 45
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
Passed4.19s
-
✅ Test009_Should_Clone_Release
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 156
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 156' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:58 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: ff497a1a-144d-4f71-90b2-4fb2b5e02fe2
-x-response-time: 46
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 472
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release",
-    "description": "Release created for .NET SDK integration testing",
-    "locked": false,
-    "archived": false,
-    "uid": "blte29359c369ea9cdd",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:58.829Z",
-    "updated_at": "2026-03-13T02:33:58.829Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases/blte29359c369ea9cdd/clone
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 140
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release Cloned","desctiption":"Release created for .NET SDK integration testing (Cloned)"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases/blte29359c369ea9cdd/clone' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 140' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release Cloned","desctiption":"Release created for .NET SDK integration testing (Cloned)"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:59 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 1ebbcde2-be5e-4a1f-9842-0399258b60dc
-x-response-time: 46
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 470
-
Response Body -
{
-  "notice": "Release cloned successfully.",
-  "release": {
-    "uid": "bltaf66bb91539973a8",
-    "name": "DotNet SDK Integration Test Release Cloned",
-    "desctiption": "Release created for .NET SDK integration testing (Cloned)",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "locked": false,
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:59.163Z",
-    "updated_at": "2026-03-13T02:33:59.163Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/bltaf66bb91539973a8
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/bltaf66bb91539973a8' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:59 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: ddd5d932-05a9-4e0c-b224-189119cfa574
-x-response-time: 40
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blte29359c369ea9cdd
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blte29359c369ea9cdd' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:59 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: a7323cd3-2576-4efa-b8e9-c5cdd1568d96
-x-response-time: 34
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
Passed1.32s
-
✅ Test003_Should_Query_All_Releases
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 1","description":"Release created for .NET SDK integration testing (Number 1)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:39 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 7f9fdafa-ed3c-4892-8c18-704155ce5a3d
-x-response-time: 41
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 1",
-    "description": "Release created for .NET SDK integration testing (Number 1)",
-    "locked": false,
-    "archived": false,
-    "uid": "bltb1af7a87357ab7f2",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:39.871Z",
-    "updated_at": "2026-03-13T02:33:39.871Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 2","description":"Release created for .NET SDK integration testing (Number 2)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:40 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 3e12b168-eb5a-4f42-b0b8-26e5ceebb7cf
-x-response-time: 60
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 2",
-    "description": "Release created for .NET SDK integration testing (Number 2)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt2f7dc91f7c58e9d8",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:40.185Z",
-    "updated_at": "2026-03-13T02:33:40.185Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 3","description":"Release created for .NET SDK integration testing (Number 3)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:40 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 5c4994e5-ec65-4474-bf30-233cd93de57f
-x-response-time: 40
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 3",
-    "description": "Release created for .NET SDK integration testing (Number 3)",
-    "locked": false,
-    "archived": false,
-    "uid": "bltf6e7f1b80423a779",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:40.504Z",
-    "updated_at": "2026-03-13T02:33:40.504Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 4","description":"Release created for .NET SDK integration testing (Number 4)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:40 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 63de0d21-4e1c-42d2-bd6a-803d0097de15
-x-response-time: 41
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 4",
-    "description": "Release created for .NET SDK integration testing (Number 4)",
-    "locked": false,
-    "archived": false,
-    "uid": "blt9eaf1a97a694ea39",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:40.811Z",
-    "updated_at": "2026-03-13T02:33:40.811Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 5","description":"Release created for .NET SDK integration testing (Number 5)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:41 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 07fa7806-4123-4407-8c9e-d2aea565fb36
-x-response-time: 38
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 5",
-    "description": "Release created for .NET SDK integration testing (Number 5)",
-    "locked": false,
-    "archived": false,
-    "uid": "bltfb0b88efec17af85",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:41.117Z",
-    "updated_at": "2026-03-13T02:33:41.117Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 169
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 169' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release 6","description":"Release created for .NET SDK integration testing (Number 6)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:41 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 8ff490bd-26d7-4532-91fb-619d655718ec
-x-response-time: 35
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 485
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release 6",
-    "description": "Release created for .NET SDK integration testing (Number 6)",
-    "locked": false,
-    "archived": false,
-    "uid": "bltd98a67d51cbeae87",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:41.423Z",
-    "updated_at": "2026-03-13T02:33:41.423Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:41 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 455bcfa4-49e4-486e-b256-cdc9749485c6
-x-response-time: 39
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 2300
-
Response Body -
{
-  "releases": [
-    {
-      "name": "DotNet SDK Integration Test Release 6",
-      "description": "Release created for .NET SDK integration testing (Number 6)",
-      "locked": false,
-      "uid": "bltd98a67d51cbeae87",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:33:41.423Z",
-      "updated_at": "2026-03-13T02:33:41.423Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    },
-    {
-      "name": "DotNet SDK Integration Test Release 5",
-      "description": "Release created for .NET SDK integration testing (Number 5)",
-      "locked": false,
-      "uid": "bltfb0b88efec17af85",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:33:41.117Z",
-      "updated_at": "2026-03-13T02:33:41.117Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    },
-    {
-      "name": "DotNet SDK Integration Test Release 4",
-      "description": "Release created for .NET SDK integration testing (Number 4)",
-      "locked": false,
-      "uid": "blt9eaf1a97a694ea39",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:33:40.811Z",
-      "updated_at": "2026-03-13T02:33:40.811Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    },
-    {
-      "name": "DotNet SDK Integration Test Release 3",
-      "description": "Release created for .NET SDK integration testing (Number 3)",
-      "locked": false,
-      "uid": "bltf6e7f1b80423a779",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:33:40.504Z",
-      "updated_at": "2026-03-13T02:33:40.504Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    },
-    {
-      "name": "DotNet SDK Integration Test Release 2",
-      "description": "Release created for .NET SDK integration testing (Number 2)",
-      "locked": false,
-      "uid": "blt2f7dc91f7c58e9d8",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:33:40.185Z",
-      "updated_at": "2026-03-13T02:33:40.185Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    },
-    {
-      "name": "DotNet SDK Integration Test Release 1",
-      "description": "Release created for .NET SDK integration testing (Number 1)",
-      "locked": false,
-      "uid": "bltb1af7a87357ab7f2",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:33:39.871Z",
-      "updated_at": "2026-03-13T02:33:39.871Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/bltb1af7a87357ab7f2
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/bltb1af7a87357ab7f2' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:42 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: debf5dae-5af2-4546-b9e7-068137f378e1
-x-response-time: 187
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt2f7dc91f7c58e9d8
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt2f7dc91f7c58e9d8' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:42 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 618e6c07-bb33-485c-83bf-368334256766
-x-response-time: 43
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/bltf6e7f1b80423a779
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/bltf6e7f1b80423a779' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:42 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 71f4515c-5966-4d5a-90b2-d386890786a0
-x-response-time: 39
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt9eaf1a97a694ea39
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt9eaf1a97a694ea39' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:43 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 916f6d2c-b7d2-4d8b-9d81-9bf924e6da61
-x-response-time: 44
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/bltfb0b88efec17af85
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/bltfb0b88efec17af85' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:43 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: a3d6815b-bd0e-4f9b-9793-06f3f2b8fb4d
-x-response-time: 33
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/bltd98a67d51cbeae87
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/bltd98a67d51cbeae87' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:43 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 18c29ef5-7230-417c-b632-7e2262222ab5
-x-response-time: 40
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
Passed4.21s
-
✅ Test010_Should_Clone_Release_Async
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 156
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 156' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:00 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 12b5873c-63cd-4326-80df-90d5f8f85aaa
-x-response-time: 44
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 472
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release",
-    "description": "Release created for .NET SDK integration testing",
-    "locked": false,
-    "archived": false,
-    "uid": "bltfaad7783dbb389ce",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:00.147Z",
-    "updated_at": "2026-03-13T02:34:00.147Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases/bltfaad7783dbb389ce/clone
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 152
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release Cloned Async","desctiption":"Release created for .NET SDK integration testing (Cloned Async)"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases/bltfaad7783dbb389ce/clone' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 152' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release Cloned Async","desctiption":"Release created for .NET SDK integration testing (Cloned Async)"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:00 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 194938f6-82cf-4d41-9be8-4df00aaf7a1d
-x-response-time: 45
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 482
-
Response Body -
{
-  "notice": "Release cloned successfully.",
-  "release": {
-    "uid": "blt48c31ecedaf4df73",
-    "name": "DotNet SDK Integration Test Release Cloned Async",
-    "desctiption": "Release created for .NET SDK integration testing (Cloned Async)",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "locked": false,
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:00.477Z",
-    "updated_at": "2026-03-13T02:34:00.477Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt48c31ecedaf4df73
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt48c31ecedaf4df73' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:00 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: bf87aa7b-07a8-41d1-af8f-bb10fa552c02
-x-response-time: 45
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/bltfaad7783dbb389ce
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/bltfaad7783dbb389ce' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:01 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: ac4a0187-b68e-49bd-83bf-45667bef75f4
-x-response-time: 33
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
Passed1.24s
-
✅ Test013_Should_Create_Release_With_ParameterCollection
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/releases?include_count=true
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 186
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release With Params","description":"Release created for .NET SDK integration testing (With Parameters)","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases?include_count=true' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 186' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release With Params","description":"Release created for .NET SDK integration testing (With Parameters)","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:09 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: c7a30a64-873b-456a-811f-be2e5f2295be
-x-response-time: 31
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 502
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release With Params",
-    "description": "Release created for .NET SDK integration testing (With Parameters)",
-    "locked": false,
-    "archived": false,
-    "uid": "blte4ad558e56f9d4b4",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:09.930Z",
-    "updated_at": "2026-03-13T02:34:09.930Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blte4ad558e56f9d4b4
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blte4ad558e56f9d4b4' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:10 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 37b0eea1-0985-4843-af76-1230fd14961d
-x-response-time: 40
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
Passed0.70s
-
✅ Test007_Should_Update_Release
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 156
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 156' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release","description":"Release created for .NET SDK integration testing","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:56 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 7f4d8cb9-3fff-44aa-ad70-b034b27df16a
-x-response-time: 35
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 472
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release",
-    "description": "Release created for .NET SDK integration testing",
-    "locked": false,
-    "archived": false,
-    "uid": "blt7165b60cb8ea3bd2",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:56.888Z",
-    "updated_at": "2026-03-13T02:33:56.888Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
PUThttps://api.contentstack.io/v3/releases/blt7165b60cb8ea3bd2
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 174
-Content-Type: application/json
-
Request Body
{"release": {"name":"DotNet SDK Integration Test Release Updated","description":"Release created for .NET SDK integration testing (Updated)","locked":false,"archived":false}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/releases/blt7165b60cb8ea3bd2' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 174' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"DotNet SDK Integration Test Release Updated","description":"Release created for .NET SDK integration testing (Updated)","locked":false,"archived":false}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:57 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 840919dd-c935-456b-941b-8e6997c12b0f
-x-response-time: 34
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 422
-
Response Body -
{
-  "notice": "Release updated successfully.",
-  "release": {
-    "name": "DotNet SDK Integration Test Release Updated",
-    "description": "Release created for .NET SDK integration testing (Updated)",
-    "locked": false,
-    "uid": "blt7165b60cb8ea3bd2",
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:33:56.888Z",
-    "updated_at": "2026-03-13T02:33:57.210Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/blt7165b60cb8ea3bd2
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/blt7165b60cb8ea3bd2' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:33:57 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 435f9e20-8809-4338-a58f-b4a7475ecc7d
-x-response-time: 37
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 42
-
Response Body -
{
-  "notice": "Release deleted successfully."
-}
-
Passed0.94s
-
-
- -
-
-
- - Contentstack005_ContentTypeTest -
-
- 8 passed · - 0 failed · - 0 skipped · - 8 total -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Test NameStatusDuration
-
✅ Test007_Should_Query_Content_Type
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsNotNull(ContentType)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Tests.Model.ContentTypesModel
-
-
-
-
IsNotNull(ContentType.Modellings)
-
-
Expected:
NotNull
-
Actual:
System.Collections.Generic.List`1[Contentstack.Management.Core.Models.ContentModelling]
-
-
-
-
AreEqual(ModellingsCount)
-
-
Expected:
2
-
Actual:
2
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/content_types
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/content_types' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:22 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-surrogate-key: blt1bca31da998b57a9.content_types
-cache-tag: blt1bca31da998b57a9.content_types
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 21ms
-X-Request-ID: 4106389c-1ffe-47fa-b77a-4f74cfe8a62e
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{"content_types":[{"created_at":"2026-03-13T02:34:20.692Z","updated_at":"2026-03-13T02:34:20.692Z","title":"Single Page","uid":"single_page","_version":1,"inbuilt_class":false,"schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true,"non_localizable":false},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":true,"allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"instruction":"","ref_multiple":false},"multiple":false,"mandatory":true,"unique":false,"non_localizable":false}],"last_activity":{},"maintain_revisions":true,"description":"","DEFAULT_ACL":{"others":{"read":false,"create":false},"users":[{"read":true,"sub_acl":{"read":true},"uid":"blt99daf6332b695c38"}],"management_token":{"read":true}},"SYS_ACL":{"roles":[{"uid":"blt5f456b9cfa69b697","read":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true,"publish":true},"update":true,"delete":true},{"uid":"bltd7ebbaea63551cf9","read":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true,"publish":true}},{"uid":"blt1b7926e68b1b14b2","read":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true,"publish":true},"update":true,"delete":true}],"others":{"read":false,"create":false,"update":false,"delete":false,"sub_acl":{"read":false,"create":false,"update":false,"delete":false,"publish":false}}},"options":{"title":"title","sub_title":[],"singleton":false,"is_page":true,"url_pattern":"/:title","url_prefix":"/"},"abilities":{"get_one_object":true,"get_all_objects":true,"create_object":true,"update_object":true,"delete_object":true,"delete_all_objects":true}},{"created_at":"2026-03-13T02:34:21.019Z","updated_at":"2026-03-13T02:34:22.293Z","title":"Multi page","uid":"multi_page","_version":3,"inbuilt_class":false,"schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true,"non_localizable":false},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":true,"allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":false,"non_localizable":false},{"display_name":"Single line textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false,"non_localizable":false},{"display_name":"Multi line textbox","uid":"multi_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":true,"version":3,"markdown":false,"ref_multipl
-
- Test Context - - - - -
TestScenarioQueryContentType
-
Passed0.30s
-
✅ Test002_Should_Create_Content_Type
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsNotNull(ContentType)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Tests.Model.ContentTypeModel
-
-
-
-
IsNotNull(ContentType.Modelling)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.ContentModelling
-
-
-
-
AreEqual(Title)
-
-
Expected:
Multi page
-
Actual:
Multi page
-
-
-
-
AreEqual(Uid)
-
-
Expected:
multi_page
-
Actual:
multi_page
-
-
-
-
AreEqual(SchemaCount)
-
-
Expected:
2
-
Actual:
2
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/content_types
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 638
-Content-Type: application/json
-
Request Body
{"content_type": {"title":"Multi page","uid":"multi_page","schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}],"options":{"title":"title","sub_title":[],"singleton":false,"is_page":true,"url_pattern":"/:title"}}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/content_types' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 638' \
-  -H 'Content-Type: application/json' \
-  -d '{"content_type": {"title":"Multi page","uid":"multi_page","schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}],"options":{"title":"title","sub_title":[],"singleton":false,"is_page":true,"url_pattern":"/:title"}}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:21 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 67ms
-X-Request-ID: 6b0d35b9-84c6-4f61-8bae-e10804e56f44
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Content Type created successfully.",
-  "content_type": {
-    "created_at": "2026-03-13T02:34:21.019Z",
-    "updated_at": "2026-03-13T02:34:21.019Z",
-    "title": "Multi page",
-    "uid": "multi_page",
-    "_version": 1,
-    "inbuilt_class": false,
-    "schema": [
-      {
-        "display_name": "Title",
-        "uid": "title",
-        "data_type": "text",
-        "field_metadata": {
-          "_default": "True",
-          "allow_rich_text": false,
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": true,
-        "unique": true,
-        "non_localizable": false
-      },
-      {
-        "display_name": "URL",
-        "uid": "url",
-        "data_type": "text",
-        "field_metadata": {
-          "_default": true,
-          "allow_rich_text": false,
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      }
-    ],
-    "last_activity": {},
-    "maintain_revisions": true,
-    "description": "",
-    "DEFAULT_ACL": {
-      "others": {
-        "read": false,
-        "create": false
-      },
-      "users": [
-        {
-          "read": true,
-          "sub_acl": {
-            "read": true
-          },
-          "uid": "blt99daf6332b695c38"
-        }
-      ],
-      "management_token": {
-        "read": true
-      }
-    },
-    "SYS_ACL": {
-      "roles": [],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "options": {
-      "title": "title",
-      "sub_title": [],
-      "singleton": false,
-      "is_page": true,
-      "url_pattern": "/:title",
-      "url_prefix": "/"
-    },
-    "abilities": {
-      "get_one_object": true,
-      "get_all_objects": true,
-      "create_object": true,
-      "update_object": true,
-      "delete_object": true,
-      "delete_all_objects": true
-    }
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioCreateContentType_MultiPage
ContentTypemulti_page
-
Passed0.33s
-
✅ Test005_Should_Update_Content_Type
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsNotNull(ContentType)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Tests.Model.ContentTypeModel
-
-
-
-
IsNotNull(ContentType.Modelling)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.ContentModelling
-
-
-
-
AreEqual(Title)
-
-
Expected:
Multi page
-
Actual:
Multi page
-
-
-
-
AreEqual(Uid)
-
-
Expected:
multi_page
-
Actual:
multi_page
-
-
-
-
AreEqual(SchemaCount)
-
-
Expected:
5
-
Actual:
5
-
-

HTTP Transactions

-
- -
PUThttps://api.contentstack.io/v3/content_types/multi_page
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 1425
-Content-Type: application/json
-
Request Body
{"content_type": {"title":"Multi page","uid":"multi_page","schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":false},{"display_name":"Single line textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"display_name":"Multi line textbox","uid":"multi_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":true,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"display_name":"Markdown","uid":"markdown","data_type":"text","field_metadata":{"allow_rich_text":false,"description":"","multiline":false,"version":0,"markdown":true,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}],"options":{"title":"title","sub_title":[],"singleton":false,"is_page":true,"url_pattern":"/:title"}}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/content_types/multi_page' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 1425' \
-  -H 'Content-Type: application/json' \
-  -d '{"content_type": {"title":"Multi page","uid":"multi_page","schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":false},{"display_name":"Single line textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"display_name":"Multi line textbox","uid":"multi_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":true,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"display_name":"Markdown","uid":"markdown","data_type":"text","field_metadata":{"allow_rich_text":false,"description":"","multiline":false,"version":0,"markdown":true,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}],"options":{"title":"title","sub_title":[],"singleton":false,"is_page":true,"url_pattern":"/:title"}}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:21 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 56ms
-X-Request-ID: 111dd38f-1630-4ed0-aff8-9ab6507d379a
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Content Type updated successfully.",
-  "content_type": {
-    "created_at": "2026-03-13T02:34:21.019Z",
-    "updated_at": "2026-03-13T02:34:21.951Z",
-    "title": "Multi page",
-    "uid": "multi_page",
-    "_version": 2,
-    "inbuilt_class": false,
-    "schema": [
-      {
-        "display_name": "Title",
-        "uid": "title",
-        "data_type": "text",
-        "field_metadata": {
-          "_default": "True",
-          "allow_rich_text": false,
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": true,
-        "unique": true,
-        "non_localizable": false
-      },
-      {
-        "display_name": "URL",
-        "uid": "url",
-        "data_type": "text",
-        "field_metadata": {
-          "_default": true,
-          "allow_rich_text": false,
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": true,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "display_name": "Single line textbox",
-        "uid": "single_line",
-        "data_type": "text",
-        "field_metadata": {
-          "default_value": "",
-          "allow_rich_text": false,
-          "description": "",
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "display_name": "Multi line textbox",
-        "uid": "multi_line",
-        "data_type": "text",
-        "field_metadata": {
-          "default_value": "",
-          "allow_rich_text": false,
-          "description": "",
-          "multiline": true,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "display_name": "Markdown",
-        "uid": "markdown",
-        "data_type": "text",
-        "field_metadata": {
-          "allow_rich_text": false,
-          "description": "",
-          "multiline": false,
-          "version": 3,
-          "markdown": true,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      }
-    ],
-    "last_activity": {},
-    "maintain_revisions": true,
-    "description": "",
-    "DEFAULT_ACL": {
-      "others": {
-        "read": false,
-        "create": false
-      },
-      "users": [
-        {
-          "uid": "blt99daf6332b695c38",
-          "read": true,
-          "sub_acl": {
-            "read": true
-          }
-        }
-      ]
-    },
-    "SYS_ACL": {
-      "roles": [],
-      "others": {
-        "read": false,
-        "create
-
- Test Context - - - - - - - - -
TestScenarioUpdateContentType
ContentTypemulti_page
-
Passed0.34s
-
✅ Test006_Should_Update_Async_Content_Type
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsNotNull(ContentType)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Tests.Model.ContentTypeModel
-
-
-
-
IsNotNull(ContentType.Modelling)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.ContentModelling
-
-
-
-
AreEqual(Uid)
-
-
Expected:
multi_page
-
Actual:
multi_page
-
-
-
-
AreEqual(SchemaCount)
-
-
Expected:
6
-
Actual:
6
-
-

HTTP Transactions

-
- -
PUThttps://api.contentstack.io/v3/content_types/multi_page
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 1726
-Content-Type: application/json
-
Request Body
{"content_type": {"title":"Multi page","uid":"multi_page","schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":false},{"display_name":"Single line textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"display_name":"Multi line textbox","uid":"multi_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":true,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"display_name":"Markdown","uid":"markdown","data_type":"text","field_metadata":{"allow_rich_text":false,"description":"","multiline":false,"version":0,"markdown":true,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"display_name":"New Text Field","uid":"new_text_field","data_type":"text","field_metadata":{"allow_rich_text":false,"description":"A new text field added during async update test","multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}],"options":{"title":"title","sub_title":[],"singleton":false,"is_page":true,"url_pattern":"/:title"}}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/content_types/multi_page' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 1726' \
-  -H 'Content-Type: application/json' \
-  -d '{"content_type": {"title":"Multi page","uid":"multi_page","schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":false},{"display_name":"Single line textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"display_name":"Multi line textbox","uid":"multi_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":true,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"display_name":"Markdown","uid":"markdown","data_type":"text","field_metadata":{"allow_rich_text":false,"description":"","multiline":false,"version":0,"markdown":true,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"display_name":"New Text Field","uid":"new_text_field","data_type":"text","field_metadata":{"allow_rich_text":false,"description":"A new text field added during async update test","multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}],"options":{"title":"title","sub_title":[],"singleton":false,"is_page":true,"url_pattern":"/:title"}}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:22 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 58ms
-X-Request-ID: 04bf1a89-f028-4eac-8fd8-c8bafdce9f25
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Content Type updated successfully.",
-  "content_type": {
-    "created_at": "2026-03-13T02:34:21.019Z",
-    "updated_at": "2026-03-13T02:34:22.293Z",
-    "title": "Multi page",
-    "uid": "multi_page",
-    "_version": 3,
-    "inbuilt_class": false,
-    "schema": [
-      {
-        "display_name": "Title",
-        "uid": "title",
-        "data_type": "text",
-        "field_metadata": {
-          "_default": "True",
-          "allow_rich_text": false,
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": true,
-        "unique": true,
-        "non_localizable": false
-      },
-      {
-        "display_name": "URL",
-        "uid": "url",
-        "data_type": "text",
-        "field_metadata": {
-          "_default": true,
-          "allow_rich_text": false,
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": true,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "display_name": "Single line textbox",
-        "uid": "single_line",
-        "data_type": "text",
-        "field_metadata": {
-          "default_value": "",
-          "allow_rich_text": false,
-          "description": "",
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "display_name": "Multi line textbox",
-        "uid": "multi_line",
-        "data_type": "text",
-        "field_metadata": {
-          "default_value": "",
-          "allow_rich_text": false,
-          "description": "",
-          "multiline": true,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "display_name": "Markdown",
-        "uid": "markdown",
-        "data_type": "text",
-        "field_metadata": {
-          "allow_rich_text": false,
-          "description": "",
-          "multiline": false,
-          "version": 3,
-          "markdown": true,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "display_name": "New Text Field",
-        "uid": "new_text_field",
-        "data_type": "text",
-        "field_metadata": {
-          "allow_rich_text": false,
-          "description": "A new text field added during async update test",
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique"
-
- Test Context - - - - - - - - -
TestScenarioUpdateAsyncContentType
ContentTypemulti_page
-
Passed0.35s
-
✅ Test001_Should_Create_Content_Type
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsNotNull(ContentType)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Tests.Model.ContentTypeModel
-
-
-
-
IsNotNull(ContentType.Modelling)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.ContentModelling
-
-
-
-
AreEqual(Title)
-
-
Expected:
Single Page
-
Actual:
Single Page
-
-
-
-
AreEqual(Uid)
-
-
Expected:
single_page
-
Actual:
single_page
-
-
-
-
AreEqual(SchemaCount)
-
-
Expected:
2
-
Actual:
2
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/content_types
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 632
-Content-Type: application/json
-
Request Body
{"content_type": {"title":"Single Page","uid":"single_page","schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":0,"markdown":false,"instruction":"","ref_multiple":false},"multiple":false,"mandatory":true,"unique":false}],"options":{"title":"title","sub_title":[],"singleton":false,"is_page":true}}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/content_types' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 632' \
-  -H 'Content-Type: application/json' \
-  -d '{"content_type": {"title":"Single Page","uid":"single_page","schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":0,"markdown":false,"instruction":"","ref_multiple":false},"multiple":false,"mandatory":true,"unique":false}],"options":{"title":"title","sub_title":[],"singleton":false,"is_page":true}}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:20 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 53ms
-X-Request-ID: b9084d16-cb50-4f24-b8da-6c893e276470
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Content Type created successfully.",
-  "content_type": {
-    "created_at": "2026-03-13T02:34:20.692Z",
-    "updated_at": "2026-03-13T02:34:20.692Z",
-    "title": "Single Page",
-    "uid": "single_page",
-    "_version": 1,
-    "inbuilt_class": false,
-    "schema": [
-      {
-        "display_name": "Title",
-        "uid": "title",
-        "data_type": "text",
-        "field_metadata": {
-          "_default": "True",
-          "allow_rich_text": false,
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": true,
-        "unique": true,
-        "non_localizable": false
-      },
-      {
-        "display_name": "URL",
-        "uid": "url",
-        "data_type": "text",
-        "field_metadata": {
-          "_default": true,
-          "allow_rich_text": false,
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "instruction": "",
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": true,
-        "unique": false,
-        "non_localizable": false
-      }
-    ],
-    "last_activity": {},
-    "maintain_revisions": true,
-    "description": "",
-    "DEFAULT_ACL": {
-      "others": {
-        "read": false,
-        "create": false
-      },
-      "users": [
-        {
-          "read": true,
-          "sub_acl": {
-            "read": true
-          },
-          "uid": "blt99daf6332b695c38"
-        }
-      ],
-      "management_token": {
-        "read": true
-      }
-    },
-    "SYS_ACL": {
-      "roles": [],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "options": {
-      "title": "title",
-      "sub_title": [],
-      "singleton": false,
-      "is_page": true,
-      "url_pattern": "/:title",
-      "url_prefix": "/"
-    },
-    "abilities": {
-      "get_one_object": true,
-      "get_all_objects": true,
-      "create_object": true,
-      "update_object": true,
-      "delete_object": true,
-      "delete_all_objects": true
-    }
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioCreateContentType_SinglePage
ContentTypesingle_page
-
Passed0.33s
-
✅ Test008_Should_Query_Async_Content_Type
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsNotNull(ContentType)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Tests.Model.ContentTypesModel
-
-
-
-
IsNotNull(ContentType.Modellings)
-
-
Expected:
NotNull
-
Actual:
System.Collections.Generic.List`1[Contentstack.Management.Core.Models.ContentModelling]
-
-
-
-
AreEqual(ModellingsCount)
-
-
Expected:
2
-
Actual:
2
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/content_types
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/content_types' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:22 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-surrogate-key: blt1bca31da998b57a9.content_types
-cache-tag: blt1bca31da998b57a9.content_types
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 22ms
-X-Request-ID: 8e0c9792-f920-4030-a4f2-f179306d65eb
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{"content_types":[{"created_at":"2026-03-13T02:34:20.692Z","updated_at":"2026-03-13T02:34:20.692Z","title":"Single Page","uid":"single_page","_version":1,"inbuilt_class":false,"schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true,"non_localizable":false},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":true,"allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"instruction":"","ref_multiple":false},"multiple":false,"mandatory":true,"unique":false,"non_localizable":false}],"last_activity":{},"maintain_revisions":true,"description":"","DEFAULT_ACL":{"others":{"read":false,"create":false},"users":[{"read":true,"sub_acl":{"read":true},"uid":"blt99daf6332b695c38"}],"management_token":{"read":true}},"SYS_ACL":{"roles":[{"uid":"blt5f456b9cfa69b697","read":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true,"publish":true},"update":true,"delete":true},{"uid":"bltd7ebbaea63551cf9","read":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true,"publish":true}},{"uid":"blt1b7926e68b1b14b2","read":true,"sub_acl":{"create":true,"read":true,"update":true,"delete":true,"publish":true},"update":true,"delete":true}],"others":{"read":false,"create":false,"update":false,"delete":false,"sub_acl":{"read":false,"create":false,"update":false,"delete":false,"publish":false}}},"options":{"title":"title","sub_title":[],"singleton":false,"is_page":true,"url_pattern":"/:title","url_prefix":"/"},"abilities":{"get_one_object":true,"get_all_objects":true,"create_object":true,"update_object":true,"delete_object":true,"delete_all_objects":true}},{"created_at":"2026-03-13T02:34:21.019Z","updated_at":"2026-03-13T02:34:22.293Z","title":"Multi page","uid":"multi_page","_version":3,"inbuilt_class":false,"schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"True","allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true,"non_localizable":false},{"display_name":"URL","uid":"url","data_type":"text","field_metadata":{"_default":true,"allow_rich_text":false,"multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":false,"non_localizable":false},{"display_name":"Single line textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false,"non_localizable":false},{"display_name":"Multi line textbox","uid":"multi_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":true,"version":3,"markdown":false,"ref_multipl
-
- Test Context - - - - -
TestScenarioQueryAsyncContentType
-
Passed0.30s
-
✅ Test004_Should_Fetch_Async_Content_Type
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsNotNull(ContentType)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Tests.Model.ContentTypeModel
-
-
-
-
IsNotNull(ContentType.Modelling)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.ContentModelling
-
-
-
-
AreEqual(Title)
-
-
Expected:
Single Page
-
Actual:
Single Page
-
-
-
-
AreEqual(Uid)
-
-
Expected:
single_page
-
Actual:
single_page
-
-
-
-
AreEqual(SchemaCount)
-
-
Expected:
2
-
Actual:
2
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/content_types/single_page
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/content_types/single_page' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:21 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-surrogate-key: blt1bca31da998b57a9.content_types blt1bca31da998b57a9.content_types.single_page
-cache-tag: blt1bca31da998b57a9.content_types blt1bca31da998b57a9.content_types.single_page
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 27ms
-X-Request-ID: 4078a636-af2b-412e-b58d-32e28d71311e
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "content_type": {
-    "created_at": "2026-03-13T02:34:20.692Z",
-    "updated_at": "2026-03-13T02:34:20.692Z",
-    "title": "Single Page",
-    "uid": "single_page",
-    "_version": 1,
-    "inbuilt_class": false,
-    "schema": [
-      {
-        "display_name": "Title",
-        "uid": "title",
-        "data_type": "text",
-        "field_metadata": {
-          "_default": "True",
-          "allow_rich_text": false,
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": true,
-        "unique": true,
-        "non_localizable": false
-      },
-      {
-        "display_name": "URL",
-        "uid": "url",
-        "data_type": "text",
-        "field_metadata": {
-          "_default": true,
-          "allow_rich_text": false,
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "instruction": "",
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": true,
-        "unique": false,
-        "non_localizable": false
-      }
-    ],
-    "last_activity": {},
-    "maintain_revisions": true,
-    "description": "",
-    "DEFAULT_ACL": {
-      "others": {
-        "read": false,
-        "create": false
-      },
-      "users": [
-        {
-          "read": true,
-          "sub_acl": {
-            "read": true
-          },
-          "uid": "blt99daf6332b695c38"
-        }
-      ],
-      "management_token": {
-        "read": true
-      }
-    },
-    "SYS_ACL": {
-      "roles": [
-        {
-          "uid": "blt5f456b9cfa69b697",
-          "read": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true,
-            "publish": true
-          },
-          "update": true,
-          "delete": true
-        },
-        {
-          "uid": "bltd7ebbaea63551cf9",
-          "read": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true,
-            "publish": true
-          }
-        },
-        {
-          "uid": "blt1b7926e68b1b14b2",
-          "read": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true,
-            "publish": true
-          },
-          "update": true,
-          "delete": true
-        }
-      ],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "options": {
-      "title": "title",
-      "sub_title": [],
-      "singleton": false,
-      "is_page": true,
-      "url_pattern": "/:title",
-      "url_prefix": "/"
-    },
-    "abilities": {
-      "get_one_object": true,
-      "get_all_objects
-
- Test Context - - - - - - - - -
TestScenarioFetchAsyncContentType
ContentTypesingle_page
-
Passed0.30s
-
✅ Test003_Should_Fetch_Content_Type
-

Assertions

-
-
IsNotNull(response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsNotNull(ContentType)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Tests.Model.ContentTypeModel
-
-
-
-
IsNotNull(ContentType.Modelling)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.ContentModelling
-
-
-
-
AreEqual(Title)
-
-
Expected:
Multi page
-
Actual:
Multi page
-
-
-
-
AreEqual(Uid)
-
-
Expected:
multi_page
-
Actual:
multi_page
-
-
-
-
AreEqual(SchemaCount)
-
-
Expected:
2
-
Actual:
2
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/content_types/multi_page
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/content_types/multi_page' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:21 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-surrogate-key: blt1bca31da998b57a9.content_types blt1bca31da998b57a9.content_types.multi_page
-cache-tag: blt1bca31da998b57a9.content_types blt1bca31da998b57a9.content_types.multi_page
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 25ms
-X-Request-ID: 01a92927-a273-4ee9-9228-a5b2e0134dec
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "content_type": {
-    "created_at": "2026-03-13T02:34:21.019Z",
-    "updated_at": "2026-03-13T02:34:21.019Z",
-    "title": "Multi page",
-    "uid": "multi_page",
-    "_version": 1,
-    "inbuilt_class": false,
-    "schema": [
-      {
-        "display_name": "Title",
-        "uid": "title",
-        "data_type": "text",
-        "field_metadata": {
-          "_default": "True",
-          "allow_rich_text": false,
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": true,
-        "unique": true,
-        "non_localizable": false
-      },
-      {
-        "display_name": "URL",
-        "uid": "url",
-        "data_type": "text",
-        "field_metadata": {
-          "_default": true,
-          "allow_rich_text": false,
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      }
-    ],
-    "last_activity": {},
-    "maintain_revisions": true,
-    "description": "",
-    "DEFAULT_ACL": {
-      "others": {
-        "read": false,
-        "create": false
-      },
-      "users": [
-        {
-          "read": true,
-          "sub_acl": {
-            "read": true
-          },
-          "uid": "blt99daf6332b695c38"
-        }
-      ],
-      "management_token": {
-        "read": true
-      }
-    },
-    "SYS_ACL": {
-      "roles": [
-        {
-          "uid": "blt5f456b9cfa69b697",
-          "read": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true,
-            "publish": true
-          },
-          "update": true,
-          "delete": true
-        },
-        {
-          "uid": "bltd7ebbaea63551cf9",
-          "read": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true,
-            "publish": true
-          }
-        },
-        {
-          "uid": "blt1b7926e68b1b14b2",
-          "read": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true,
-            "publish": true
-          },
-          "update": true,
-          "delete": true
-        }
-      ],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "options": {
-      "title": "title",
-      "sub_title": [],
-      "singleton": false,
-      "is_page": true,
-      "url_pattern": "/:title",
-      "url_prefix": "/"
-    },
-    "abilities": {
-      "get_one_object": true,
-      "get_all_objects": true,
-      "create_object"
-
- Test Context - - - - - - - - -
TestScenarioFetchContentType
ContentTypemulti_page
-
Passed0.30s
-
-
- -
-
-
- - Contentstack006_AssetTest -
-
- 26 passed · - 0 failed · - 0 skipped · - 26 total -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Test NameStatusDuration
-
✅ Test005_Should_Create_Asset_Async
-

Assertions

-
-
AreEqual(CreateAssetAsync_StatusCode)
-
-
Expected:
Created
-
Actual:
Created
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/assets
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg
-Content-Type: multipart/form-data; boundary="8650e59b-ece9-41a1-8872-99896096ff8c"
-
Request Body
--8650e59b-ece9-41a1-8872-99896096ff8c
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8''async_asset.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---8650e59b-ece9-41a1-8872-99896096ff8c
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-Async Asset
---8650e59b-ece9-41a1-8872-99896096ff8c
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-async test asset
---8650e59b-ece9-41a1-8872-99896096ff8c
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-async,test
---8650e59b-ece9-41a1-8872-99896096ff8c--
-
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/assets' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg' \
-  -H 'Content-Type: multipart/form-data; boundary="8650e59b-ece9-41a1-8872-99896096ff8c"' \
-  -d '--8650e59b-ece9-41a1-8872-99896096ff8c
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8'\'''\''async_asset.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---8650e59b-ece9-41a1-8872-99896096ff8c
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-Async Asset
---8650e59b-ece9-41a1-8872-99896096ff8c
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-async test asset
---8650e59b-ece9-41a1-8872-99896096ff8c
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-async,test
---8650e59b-ece9-41a1-8872-99896096ff8c--
-'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:27 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 128ms
-X-Request-ID: 4e27366205818fabcccc8f09b6d189b7
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Asset created successfully.",
-  "asset": {
-    "uid": "blt9676221935fa638d",
-    "created_at": "2026-03-13T02:34:27.747Z",
-    "updated_at": "2026-03-13T02:34:27.747Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "async",
-      "test"
-    ],
-    "filename": "async_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt9676221935fa638d/69b377b35a9c0e27a035ff10/async_asset.json",
-    "ACL": {},
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 1,
-    "title": "Async Asset",
-    "description": "async test asset"
-  }
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioCreateAssetAsync
StackAPIKeyblt1bca31da998b57a9
AssetUIDblt9676221935fa638d
-
Passed0.53s
-
✅ Test010_Should_Query_Assets
-

Assertions

-
-
AreEqual(QueryAssets_StatusCode)
-
-
Expected:
OK
-
Actual:
OK
-
-
-
-
IsNotNull(QueryAssets_ResponseContainsAssets)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "uid": "blt2e420180c49b97d1",
-    "created_at": "2026-03-13T02:34:30.71Z",
-    "updated_at": "2026-03-13T02:34:31.14Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "async",
-      "updated",
-      "test"
-    ],
-    "filename": "async_updated_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2e420180c49b97d1/69b377b7b2e2a87a96adc169/async_updated_asset.json",
-    "ACL": {
-      "roles": [],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 2,
-    "title": "Async Updated Asset",
-    "description": "async updated test asset"
-  },
-  {
-    "uid": "bltc01c5126ad87ad39",
-    "created_at": "2026-03-13T02:34:29.829Z",
-    "updated_at": "2026-03-13T02:34:30.289Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "updated",
-      "test"
-    ],
-    "filename": "updated_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/bltc01c5126ad87ad39/69b377b6bf5153293e7b212e/updated_asset.json",
-    "ACL": {
-      "roles": [],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 2,
-    "title": "Updated Asset",
-    "description": "updated test asset"
-  },
-  {
-    "uid": "blt2c699da2d244de83",
-    "created_at": "2026-03-13T02:34:29.113Z",
-    "updated_at": "2026-03-13T02:34:29.113Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "async",
-      "test"
-    ],
-    "filename": "async_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2c699da2d244de83/69b377b5b1f4aa06332600f8/async_asset.json",
-    "ACL": {
-      "roles": [],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 1,
-    "title": "Async Asset",
-    "description": "async test asset"
-  },
-  {
-    "uid": "blt26b93606f6f75c7f",
-    "created_at": "2026-03-13T02:34:28.284Z",
-    "updated_at": "2026-03-13T02:34:28.284Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "async",
-      "test"
-    ],
-    "filename": "async_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt26b93606f6f75c7f/69b377b4e681b9842ab788ee/async_asset.json",
-    "ACL": {
-      "roles": [],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 1,
-    "title": "Async Asset",
-    "description": "async test asset"
-  },
-  {
-    "uid": "blt9676221935fa638d",
-    "created_at": "2026-03-13T02:34:27.747Z",
-    "updated_at": "2026-03-13T02:34:27.747Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "async",
-      "test"
-    ],
-    "filename": "async_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt9676221935fa638d/69b377b35a9c0e27a035ff10/async_asset.json",
-    "ACL": {
-      "roles": [],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 1,
-    "title": "Async Asset",
-    "description": "async test asset"
-  },
-  {
-    "uid": "blt519b0e8d8e93d82a",
-    "created_at": "2026-03-13T02:34:26.178Z",
-    "updated_at": "2026-03-13T02:34:26.178Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "one",
-      "two"
-    ],
-    "filename": "contentTypeSchema.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt519b0e8d8e93d82a/69b377b2b2e2a810aeadc167/contentTypeSchema.json",
-    "ACL": {
-      "roles": [],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 1,
-    "title": "New.json",
-    "description": "new test desc"
-  }
-]
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/assets
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/assets' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:31 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 28ms
-X-Request-ID: 1e21c45984d009769bbb76b2dbb1011d
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{"assets":[{"uid":"blt2e420180c49b97d1","created_at":"2026-03-13T02:34:30.710Z","updated_at":"2026-03-13T02:34:31.140Z","created_by":"blt1930fc55e5669df9","updated_by":"blt1930fc55e5669df9","content_type":"application/json","file_size":"1572","tags":["async","updated","test"],"filename":"async_updated_asset.json","url":"https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2e420180c49b97d1/69b377b7b2e2a87a96adc169/async_updated_asset.json","ACL":{"roles":[],"others":{"read":false,"create":false,"update":false,"delete":false,"sub_acl":{"read":false,"create":false,"update":false,"delete":false,"publish":false}}},"is_dir":false,"parent_uid":null,"_version":2,"title":"Async Updated Asset","description":"async updated test asset"},{"uid":"bltc01c5126ad87ad39","created_at":"2026-03-13T02:34:29.829Z","updated_at":"2026-03-13T02:34:30.289Z","created_by":"blt1930fc55e5669df9","updated_by":"blt1930fc55e5669df9","content_type":"application/json","file_size":"1572","tags":["updated","test"],"filename":"updated_asset.json","url":"https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/bltc01c5126ad87ad39/69b377b6bf5153293e7b212e/updated_asset.json","ACL":{"roles":[],"others":{"read":false,"create":false,"update":false,"delete":false,"sub_acl":{"read":false,"create":false,"update":false,"delete":false,"publish":false}}},"is_dir":false,"parent_uid":null,"_version":2,"title":"Updated Asset","description":"updated test asset"},{"uid":"blt2c699da2d244de83","created_at":"2026-03-13T02:34:29.113Z","updated_at":"2026-03-13T02:34:29.113Z","created_by":"blt1930fc55e5669df9","updated_by":"blt1930fc55e5669df9","content_type":"application/json","file_size":"1572","tags":["async","test"],"filename":"async_asset.json","url":"https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2c699da2d244de83/69b377b5b1f4aa06332600f8/async_asset.json","ACL":{"roles":[],"others":{"read":false,"create":false,"update":false,"delete":false,"sub_acl":{"read":false,"create":false,"update":false,"delete":false,"publish":false}}},"is_dir":false,"parent_uid":null,"_version":1,"title":"Async Asset","description":"async test asset"},{"uid":"blt26b93606f6f75c7f","created_at":"2026-03-13T02:34:28.284Z","updated_at":"2026-03-13T02:34:28.284Z","created_by":"blt1930fc55e5669df9","updated_by":"blt1930fc55e5669df9","content_type":"application/json","file_size":"1572","tags":["async","test"],"filename":"async_asset.json","url":"https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt26b93606f6f75c7f/69b377b4e681b9842ab788ee/async_asset.json","ACL":{"roles":[],"others":{"read":false,"create":false,"update":false,"delete":false,"sub_acl":{"read":false,"create":false,"update":false,"delete":false,"publish":false}}},"is_dir":false,"parent_uid":null,"_version":1,"title":"Async Asset","description":"async test asset"},{"uid":"blt9676221935fa638d","created_at":"2026-03-13T02:34:27.747Z","updated_at":"2026-03-13T02:34:27.747Z","created_by":"blt1930fc55e5669df9","updated_by":"blt1930
-
- Test Context - - - - - - - - -
TestScenarioQueryAssets
StackAPIKeyblt1bca31da998b57a9
-
Passed0.33s
-
✅ Test014_Should_Create_Folder
-

Assertions

-
-
AreEqual(CreateFolder_StatusCode)
-
-
Expected:
Created
-
Actual:
Created
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/assets/folders
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 32
-Content-Type: application/json
-
Request Body
{"asset":{"name":"Test Folder"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/assets/folders' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 32' \
-  -H 'Content-Type: application/json' \
-  -d '{"asset":{"name":"Test Folder"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:34 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 38ms
-X-Request-ID: 1497a2aa266e330060a4d67a1740e31c
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Folder created successfully.",
-  "asset": {
-    "uid": "bltee1a28c57ff1c5cd",
-    "created_at": "2026-03-13T02:34:34.629Z",
-    "updated_at": "2026-03-13T02:34:34.629Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/vnd.contenstack.folder",
-    "tags": [],
-    "name": "Test Folder",
-    "ACL": {},
-    "is_dir": true,
-    "parent_uid": null,
-    "_version": 1
-  }
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioCreateFolder
StackAPIKeyblt1bca31da998b57a9
FolderUIDbltee1a28c57ff1c5cd
-
Passed0.35s
-
✅ Test023_Should_Delete_Folder_Async
-

Assertions

-
-
AreEqual(DeleteFolderAsync_StatusCode)
-
-
Expected:
OK
-
Actual:
OK
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/assets/folders
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 39
-Content-Type: application/json
-
Request Body
{"asset":{"name":"Delete Test Folder"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/assets/folders' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 39' \
-  -H 'Content-Type: application/json' \
-  -d '{"asset":{"name":"Delete Test Folder"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:38 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 35ms
-X-Request-ID: 0a7e34de6ea56b360993ebe37cfa41b6
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Folder created successfully.",
-  "asset": {
-    "uid": "blt3d3439b18705d1ef",
-    "created_at": "2026-03-13T02:34:38.751Z",
-    "updated_at": "2026-03-13T02:34:38.751Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/vnd.contenstack.folder",
-    "tags": [],
-    "name": "Delete Test Folder",
-    "ACL": {},
-    "is_dir": true,
-    "parent_uid": null,
-    "_version": 1
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/assets/folders/blt3d3439b18705d1ef
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/assets/folders/blt3d3439b18705d1ef' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:39 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 38ms
-X-Request-ID: b1f2b79b8293a5407615a662a051f577
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Folder deleted successfully."
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioDeleteFolderAsync
StackAPIKeyblt1bca31da998b57a9
FolderUIDblt3d3439b18705d1ef
-
Passed0.68s
-
✅ Test004_Should_Create_Custom_field
-

Assertions

-
-
AreEqual(CreateCustomField_StatusCode)
-
-
Expected:
Created
-
Actual:
Created
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/extensions
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Type: multipart/form-data; boundary="593e8f12-dc16-4a06-a7fd-dbfb3a262ec5"
-
Request Body
--593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
-Content-Type: text/html
-Content-Disposition: form-data; name="extension[upload]"; filename="Custom field Upload"; filename*=utf-8''Custom%20field%20Upload
-
-<html>
-<head>
-    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
-    <script
-        src="https://unpkg.com/@contentstack/ui-extensions-sdk@2.2.3/dist/ui-extension-sdk.js"
-        integrity="sha512-LMktiFAj7j/AUFctMlgY8qmLrLIQVctwwCsnCXIWnvgF9JlanilvFbZxOCtPNB5eO3vp2Nhw9ED1UsWa+ltSvQ=="
-        crossorigin="anonymous"
-    ></script>
-    <link
-        rel="stylesheet"
-        type="text/css"
-        href="https://unpkg.com/@contentstack/ui-extensions-sdk/dist/ui-extension-sdk.css"
-        integrity="sha512-yPPI/jWiqPr0HIh+1A2QPP5p58sSYqbPoBykxIuBckT1vzGwNbrOmwYM03qGI4ffnxd7q4kkoDys0kdZzxYn9A=="
-        crossorigin="anonymous"
-    />
-</head>
-<body>
-    <input type="color" id="html5colorpicker" onchange="colorChange()">
-    <script>
-      // initialise Field Extension 
-      window.extensionField = {};
-      // find color input element 
-      var colorPickerElement = document.getElementById("html5colorpicker");
-      ContentstackUIExtension.init().then(function(extension) {
-          // make extension object globally available
-          extensionField = extension;
-          // Get current color field value from Contentstack and update the color picker input element
-          colorPickerElement.value = extensionField.field.getData();
-      }).catch(function(error) {
-          console.log(error);
-      });
-        // On color change event, pass new value to Contentstack
-        function colorChange(){
-          extensionField.field.setData(colorPickerElement.value);      
-        }        
-    </script>
-</body>
-</html>
---593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[title]"
-
-Custom field Upload
---593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[data_type]"
-
-text
---593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[tags]"
-
-one,two
---593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[multiple]"
-
-false
---593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[type]"
-
-field
---593e8f12-dc16-4a06-a7fd-dbfb3a262ec5--
-
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/extensions' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Type: multipart/form-data; boundary="593e8f12-dc16-4a06-a7fd-dbfb3a262ec5"' \
-  -d '--593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
-Content-Type: text/html
-Content-Disposition: form-data; name="extension[upload]"; filename="Custom field Upload"; filename*=utf-8'\'''\''Custom%20field%20Upload
-
-<html>
-<head>
-    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
-    <script
-        src="https://unpkg.com/@contentstack/ui-extensions-sdk@2.2.3/dist/ui-extension-sdk.js"
-        integrity="sha512-LMktiFAj7j/AUFctMlgY8qmLrLIQVctwwCsnCXIWnvgF9JlanilvFbZxOCtPNB5eO3vp2Nhw9ED1UsWa+ltSvQ=="
-        crossorigin="anonymous"
-    ></script>
-    <link
-        rel="stylesheet"
-        type="text/css"
-        href="https://unpkg.com/@contentstack/ui-extensions-sdk/dist/ui-extension-sdk.css"
-        integrity="sha512-yPPI/jWiqPr0HIh+1A2QPP5p58sSYqbPoBykxIuBckT1vzGwNbrOmwYM03qGI4ffnxd7q4kkoDys0kdZzxYn9A=="
-        crossorigin="anonymous"
-    />
-</head>
-<body>
-    <input type="color" id="html5colorpicker" onchange="colorChange()">
-    <script>
-      // initialise Field Extension 
-      window.extensionField = {};
-      // find color input element 
-      var colorPickerElement = document.getElementById("html5colorpicker");
-      ContentstackUIExtension.init().then(function(extension) {
-          // make extension object globally available
-          extensionField = extension;
-          // Get current color field value from Contentstack and update the color picker input element
-          colorPickerElement.value = extensionField.field.getData();
-      }).catch(function(error) {
-          console.log(error);
-      });
-        // On color change event, pass new value to Contentstack
-        function colorChange(){
-          extensionField.field.setData(colorPickerElement.value);      
-        }        
-    </script>
-</body>
-</html>
---593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[title]"
-
-Custom field Upload
---593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[data_type]"
-
-text
---593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[tags]"
-
-one,two
---593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[multiple]"
-
-false
---593e8f12-dc16-4a06-a7fd-dbfb3a262ec5
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[type]"
-
-field
---593e8f12-dc16-4a06-a7fd-dbfb3a262ec5--
-'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:27 GMT
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 57ms
-X-Request-ID: 3edf774d-8349-49b7-a6d2-449afdaf96d1
-x-server-name: extensions-microservice
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Server: contentstack
-Content-Type: application/json; charset=utf-8
-Content-Length: 2004
-
Response Body -
{
-  "notice": "Extension created successfully.",
-  "extension": {
-    "uid": "blt8f54df1ed19663c4",
-    "created_at": "2026-03-13T02:34:27.386Z",
-    "updated_at": "2026-03-13T02:34:27.386Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "tags": [
-      "one",
-      "two"
-    ],
-    "_version": 1,
-    "title": "Custom field Upload",
-    "config": {},
-    "type": "field",
-    "data_type": "text",
-    "multiple": false,
-    "srcdoc": "<html>\n<head>\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"/>\n    <script\n        src=\"https://unpkg.com/@contentstack/ui-extensions-sdk@2.2.3/dist/ui-extension-sdk.js\"\n        integrity=\"sha512-LMktiFAj7j/AUFctMlgY8qmLrLIQVctwwCsnCXIWnvgF9JlanilvFbZxOCtPNB5eO3vp2Nhw9ED1UsWa+ltSvQ==\"\n        crossorigin=\"anonymous\"\n    ></script>\n    <link\n        rel=\"stylesheet\"\n        type=\"text/css\"\n        href=\"https://unpkg.com/@contentstack/ui-extensions-sdk/dist/ui-extension-sdk.css\"\n        integrity=\"sha512-yPPI/jWiqPr0HIh+1A2QPP5p58sSYqbPoBykxIuBckT1vzGwNbrOmwYM03qGI4ffnxd7q4kkoDys0kdZzxYn9A==\"\n        crossorigin=\"anonymous\"\n    />\n</head>\n<body>\n    <input type=\"color\" id=\"html5colorpicker\" onchange=\"colorChange()\">\n    <script>\n      // initialise Field Extension \n      window.extensionField = {};\n      // find color input element \n      var colorPickerElement = document.getElementById(\"html5colorpicker\");\n      ContentstackUIExtension.init().then(function(extension) {\n          // make extension object globally available\n          extensionField = extension;\n          // Get current color field value from Contentstack and update the color picker input element\n          colorPickerElement.value = extensionField.field.getData();\n      }).catch(function(error) {\n          console.log(error);\n      });\n        // On color change event, pass new value to Contentstack\n        function colorChange(){\n          extensionField.field.setData(colorPickerElement.value);      \n        }        \n    </script>\n</body>\n</html>"
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioCreateCustomField
StackAPIKeyblt1bca31da998b57a9
-
Passed0.36s
-
✅ Test015_Should_Create_Subfolder
-

Assertions

-
-
AreEqual(CreateFolder_StatusCode)
-
-
Expected:
Created
-
Actual:
Created
-
-
-
-
AreEqual(CreateSubfolder_StatusCode)
-
-
Expected:
Created
-
Actual:
Created
-
-
-
-
IsNotNull(CreateSubfolder_ResponseContainsFolder)
-
-
Expected:
NotNull
-
Actual:
{
-  "uid": "bltabb2b39dd1836f57",
-  "created_at": "2026-03-13T02:34:35.352Z",
-  "updated_at": "2026-03-13T02:34:35.352Z",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "content_type": "application/vnd.contenstack.folder",
-  "tags": [],
-  "name": "Test Subfolder",
-  "ACL": {},
-  "is_dir": true,
-  "parent_uid": "blt5982a5db820bba21",
-  "_version": 1
-}
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/assets/folders
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 32
-Content-Type: application/json
-
Request Body
{"asset":{"name":"Test Folder"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/assets/folders' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 32' \
-  -H 'Content-Type: application/json' \
-  -d '{"asset":{"name":"Test Folder"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:34 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 43ms
-X-Request-ID: 1672bde84b009eef07c2bb4311f470f6
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Folder created successfully.",
-  "asset": {
-    "uid": "blt5982a5db820bba21",
-    "created_at": "2026-03-13T02:34:34.979Z",
-    "updated_at": "2026-03-13T02:34:34.979Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/vnd.contenstack.folder",
-    "tags": [],
-    "name": "Test Folder",
-    "ACL": {},
-    "is_dir": true,
-    "parent_uid": null,
-    "_version": 1
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/assets/folders
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 70
-Content-Type: application/json
-
Request Body
{"asset":{"name":"Test Subfolder","parent_uid":"blt5982a5db820bba21"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/assets/folders' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 70' \
-  -H 'Content-Type: application/json' \
-  -d '{"asset":{"name":"Test Subfolder","parent_uid":"blt5982a5db820bba21"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:35 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 42ms
-X-Request-ID: aaf2f4edeeac50c5d4e2a62a32c6f14c
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Folder created successfully.",
-  "asset": {
-    "uid": "bltabb2b39dd1836f57",
-    "created_at": "2026-03-13T02:34:35.352Z",
-    "updated_at": "2026-03-13T02:34:35.352Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/vnd.contenstack.folder",
-    "tags": [],
-    "name": "Test Subfolder",
-    "ACL": {},
-    "is_dir": true,
-    "parent_uid": "blt5982a5db820bba21",
-    "_version": 1
-  }
-}
-
- Test Context - - - - - - - - - - - - - - - - - - - - -
TestScenarioCreateSubfolder
TestScenarioCreateFolder
StackAPIKeyblt1bca31da998b57a9
FolderUIDblt5982a5db820bba21
FolderUIDblt5982a5db820bba21
-
Passed0.68s
-
✅ Test006_Should_Fetch_Asset
-

Assertions

-
-
AreEqual(CreateAssetAsync_StatusCode)
-
-
Expected:
Created
-
Actual:
Created
-
-
-
-
AreEqual(FetchAsset_StatusCode)
-
-
Expected:
OK
-
Actual:
OK
-
-
-
-
IsNotNull(FetchAsset_ResponseContainsAsset)
-
-
Expected:
NotNull
-
Actual:
{
-  "uid": "blt26b93606f6f75c7f",
-  "created_at": "2026-03-13T02:34:28.284Z",
-  "updated_at": "2026-03-13T02:34:28.284Z",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "content_type": "application/json",
-  "file_size": "1572",
-  "tags": [
-    "async",
-    "test"
-  ],
-  "filename": "async_asset.json",
-  "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt26b93606f6f75c7f/69b377b4e681b9842ab788ee/async_asset.json",
-  "ACL": {
-    "roles": [],
-    "others": {
-      "read": false,
-      "create": false,
-      "update": false,
-      "delete": false,
-      "sub_acl": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "publish": false
-      }
-    }
-  },
-  "is_dir": false,
-  "parent_uid": null,
-  "_version": 1,
-  "title": "Async Asset",
-  "description": "async test asset"
-}
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/assets
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg
-Content-Type: multipart/form-data; boundary="acc46eb5-8afc-4885-8f3c-dbc93fb46e64"
-
Request Body
--acc46eb5-8afc-4885-8f3c-dbc93fb46e64
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8''async_asset.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---acc46eb5-8afc-4885-8f3c-dbc93fb46e64
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-Async Asset
---acc46eb5-8afc-4885-8f3c-dbc93fb46e64
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-async test asset
---acc46eb5-8afc-4885-8f3c-dbc93fb46e64
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-async,test
---acc46eb5-8afc-4885-8f3c-dbc93fb46e64--
-
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/assets' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg' \
-  -H 'Content-Type: multipart/form-data; boundary="acc46eb5-8afc-4885-8f3c-dbc93fb46e64"' \
-  -d '--acc46eb5-8afc-4885-8f3c-dbc93fb46e64
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8'\'''\''async_asset.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---acc46eb5-8afc-4885-8f3c-dbc93fb46e64
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-Async Asset
---acc46eb5-8afc-4885-8f3c-dbc93fb46e64
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-async test asset
---acc46eb5-8afc-4885-8f3c-dbc93fb46e64
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-async,test
---acc46eb5-8afc-4885-8f3c-dbc93fb46e64--
-'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:28 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 115ms
-X-Request-ID: 92f890fbe19fc347dca493ceb39cba51
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Asset created successfully.",
-  "asset": {
-    "uid": "blt26b93606f6f75c7f",
-    "created_at": "2026-03-13T02:34:28.284Z",
-    "updated_at": "2026-03-13T02:34:28.284Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "async",
-      "test"
-    ],
-    "filename": "async_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt26b93606f6f75c7f/69b377b4e681b9842ab788ee/async_asset.json",
-    "ACL": {},
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 1,
-    "title": "Async Asset",
-    "description": "async test asset"
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/assets/blt26b93606f6f75c7f
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/assets/blt26b93606f6f75c7f' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:28 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 26ms
-X-Request-ID: b1c1c3ead1280bd7092fdb1a8cd2a371
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "asset": {
-    "uid": "blt26b93606f6f75c7f",
-    "created_at": "2026-03-13T02:34:28.284Z",
-    "updated_at": "2026-03-13T02:34:28.284Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "async",
-      "test"
-    ],
-    "filename": "async_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt26b93606f6f75c7f/69b377b4e681b9842ab788ee/async_asset.json",
-    "ACL": {
-      "roles": [],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 1,
-    "title": "Async Asset",
-    "description": "async test asset"
-  }
-}
-
- Test Context - - - - - - - - - - - - - - - - - - - - -
TestScenarioFetchAsset
TestScenarioCreateAssetAsync
StackAPIKeyblt1bca31da998b57a9
AssetUIDblt26b93606f6f75c7f
AssetUIDblt26b93606f6f75c7f
-
Passed0.83s
-
✅ Test003_Should_Create_Custom_Widget
-

Assertions

-
-
AreEqual(CreateCustomWidget_StatusCode)
-
-
Expected:
Created
-
Actual:
Created
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/extensions
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Type: multipart/form-data; boundary="da605e99-83ec-4d70-8004-6b868bfc1ad2"
-
Request Body
--da605e99-83ec-4d70-8004-6b868bfc1ad2
-Content-Type: text/html
-Content-Disposition: form-data; name="extension[upload]"; filename="Custom widget Upload"; filename*=utf-8''Custom%20widget%20Upload
-
-<html>
-<head>
-    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
-    <script
-        src="https://unpkg.com/@contentstack/ui-extensions-sdk@2.2.3/dist/ui-extension-sdk.js"
-        integrity="sha512-LMktiFAj7j/AUFctMlgY8qmLrLIQVctwwCsnCXIWnvgF9JlanilvFbZxOCtPNB5eO3vp2Nhw9ED1UsWa+ltSvQ=="
-        crossorigin="anonymous"
-    ></script>
-    <link
-        rel="stylesheet"
-        type="text/css"
-        href="https://unpkg.com/@contentstack/ui-extensions-sdk/dist/ui-extension-sdk.css"
-        integrity="sha512-yPPI/jWiqPr0HIh+1A2QPP5p58sSYqbPoBykxIuBckT1vzGwNbrOmwYM03qGI4ffnxd7q4kkoDys0kdZzxYn9A=="
-        crossorigin="anonymous"
-    />
-</head>
-<body>
-    <input type="color" id="html5colorpicker" onchange="colorChange()">
-    <script>
-      // initialise Field Extension 
-      window.extensionField = {};
-      // find color input element 
-      var colorPickerElement = document.getElementById("html5colorpicker");
-      ContentstackUIExtension.init().then(function(extension) {
-          // make extension object globally available
-          extensionField = extension;
-          // Get current color field value from Contentstack and update the color picker input element
-          colorPickerElement.value = extensionField.field.getData();
-      }).catch(function(error) {
-          console.log(error);
-      });
-        // On color change event, pass new value to Contentstack
-        function colorChange(){
-          extensionField.field.setData(colorPickerElement.value);      
-        }        
-    </script>
-</body>
-</html>
---da605e99-83ec-4d70-8004-6b868bfc1ad2
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[title]"
-
-Custom widget Upload
---da605e99-83ec-4d70-8004-6b868bfc1ad2
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[tags]"
-
-one,two
---da605e99-83ec-4d70-8004-6b868bfc1ad2
-Content-Type: application/json
-Content-Disposition: form-data
-
-{"content_types":["single_page"]}
---da605e99-83ec-4d70-8004-6b868bfc1ad2
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[type]"
-
-widget
---da605e99-83ec-4d70-8004-6b868bfc1ad2--
-
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/extensions' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Type: multipart/form-data; boundary="da605e99-83ec-4d70-8004-6b868bfc1ad2"' \
-  -d '--da605e99-83ec-4d70-8004-6b868bfc1ad2
-Content-Type: text/html
-Content-Disposition: form-data; name="extension[upload]"; filename="Custom widget Upload"; filename*=utf-8'\'''\''Custom%20widget%20Upload
-
-<html>
-<head>
-    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
-    <script
-        src="https://unpkg.com/@contentstack/ui-extensions-sdk@2.2.3/dist/ui-extension-sdk.js"
-        integrity="sha512-LMktiFAj7j/AUFctMlgY8qmLrLIQVctwwCsnCXIWnvgF9JlanilvFbZxOCtPNB5eO3vp2Nhw9ED1UsWa+ltSvQ=="
-        crossorigin="anonymous"
-    ></script>
-    <link
-        rel="stylesheet"
-        type="text/css"
-        href="https://unpkg.com/@contentstack/ui-extensions-sdk/dist/ui-extension-sdk.css"
-        integrity="sha512-yPPI/jWiqPr0HIh+1A2QPP5p58sSYqbPoBykxIuBckT1vzGwNbrOmwYM03qGI4ffnxd7q4kkoDys0kdZzxYn9A=="
-        crossorigin="anonymous"
-    />
-</head>
-<body>
-    <input type="color" id="html5colorpicker" onchange="colorChange()">
-    <script>
-      // initialise Field Extension 
-      window.extensionField = {};
-      // find color input element 
-      var colorPickerElement = document.getElementById("html5colorpicker");
-      ContentstackUIExtension.init().then(function(extension) {
-          // make extension object globally available
-          extensionField = extension;
-          // Get current color field value from Contentstack and update the color picker input element
-          colorPickerElement.value = extensionField.field.getData();
-      }).catch(function(error) {
-          console.log(error);
-      });
-        // On color change event, pass new value to Contentstack
-        function colorChange(){
-          extensionField.field.setData(colorPickerElement.value);      
-        }        
-    </script>
-</body>
-</html>
---da605e99-83ec-4d70-8004-6b868bfc1ad2
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[title]"
-
-Custom widget Upload
---da605e99-83ec-4d70-8004-6b868bfc1ad2
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[tags]"
-
-one,two
---da605e99-83ec-4d70-8004-6b868bfc1ad2
-Content-Type: application/json
-Content-Disposition: form-data
-
-{"content_types":["single_page"]}
---da605e99-83ec-4d70-8004-6b868bfc1ad2
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[type]"
-
-widget
---da605e99-83ec-4d70-8004-6b868bfc1ad2--
-'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:27 GMT
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 49ms
-X-Request-ID: e88ac621-ccf7-482b-9b37-461d25abfbb9
-x-server-name: extensions-microservice
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Server: contentstack
-Content-Type: application/json; charset=utf-8
-Content-Length: 2005
-
Response Body -
{
-  "notice": "Extension created successfully.",
-  "extension": {
-    "uid": "bltc06a7b6a06412597",
-    "created_at": "2026-03-13T02:34:27.053Z",
-    "updated_at": "2026-03-13T02:34:27.053Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "tags": [
-      "one",
-      "two"
-    ],
-    "_version": 1,
-    "title": "Custom widget Upload",
-    "config": {},
-    "type": "widget",
-    "scope": {
-      "content_types": [
-        "$all"
-      ]
-    },
-    "srcdoc": "<html>\n<head>\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"/>\n    <script\n        src=\"https://unpkg.com/@contentstack/ui-extensions-sdk@2.2.3/dist/ui-extension-sdk.js\"\n        integrity=\"sha512-LMktiFAj7j/AUFctMlgY8qmLrLIQVctwwCsnCXIWnvgF9JlanilvFbZxOCtPNB5eO3vp2Nhw9ED1UsWa+ltSvQ==\"\n        crossorigin=\"anonymous\"\n    ></script>\n    <link\n        rel=\"stylesheet\"\n        type=\"text/css\"\n        href=\"https://unpkg.com/@contentstack/ui-extensions-sdk/dist/ui-extension-sdk.css\"\n        integrity=\"sha512-yPPI/jWiqPr0HIh+1A2QPP5p58sSYqbPoBykxIuBckT1vzGwNbrOmwYM03qGI4ffnxd7q4kkoDys0kdZzxYn9A==\"\n        crossorigin=\"anonymous\"\n    />\n</head>\n<body>\n    <input type=\"color\" id=\"html5colorpicker\" onchange=\"colorChange()\">\n    <script>\n      // initialise Field Extension \n      window.extensionField = {};\n      // find color input element \n      var colorPickerElement = document.getElementById(\"html5colorpicker\");\n      ContentstackUIExtension.init().then(function(extension) {\n          // make extension object globally available\n          extensionField = extension;\n          // Get current color field value from Contentstack and update the color picker input element\n          colorPickerElement.value = extensionField.field.getData();\n      }).catch(function(error) {\n          console.log(error);\n      });\n        // On color change event, pass new value to Contentstack\n        function colorChange(){\n          extensionField.field.setData(colorPickerElement.value);      \n        }        \n    </script>\n</body>\n</html>"
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioCreateCustomWidget
StackAPIKeyblt1bca31da998b57a9
-
Passed0.35s
-
✅ Test016_Should_Fetch_Folder
-

Assertions

-
-
AreEqual(CreateFolder_StatusCode)
-
-
Expected:
Created
-
Actual:
Created
-
-
-
-
AreEqual(FetchFolder_StatusCode)
-
-
Expected:
OK
-
Actual:
OK
-
-
-
-
IsNotNull(FetchFolder_ResponseContainsFolder)
-
-
Expected:
NotNull
-
Actual:
{
-  "uid": "blt4ced123bdfbf0299",
-  "created_at": "2026-03-13T02:34:35.674Z",
-  "updated_at": "2026-03-13T02:34:35.674Z",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "content_type": "application/vnd.contenstack.folder",
-  "tags": [],
-  "name": "Test Folder",
-  "ACL": {
-    "roles": [],
-    "others": {
-      "read": false,
-      "create": false,
-      "update": false,
-      "delete": false,
-      "sub_acl": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "publish": false
-      }
-    }
-  },
-  "is_dir": true,
-  "parent_uid": null,
-  "_version": 1
-}
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/assets/folders
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 32
-Content-Type: application/json
-
Request Body
{"asset":{"name":"Test Folder"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/assets/folders' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 32' \
-  -H 'Content-Type: application/json' \
-  -d '{"asset":{"name":"Test Folder"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:35 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 37ms
-X-Request-ID: b4d7e538695210176c66893f0d5b09bd
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Folder created successfully.",
-  "asset": {
-    "uid": "blt4ced123bdfbf0299",
-    "created_at": "2026-03-13T02:34:35.674Z",
-    "updated_at": "2026-03-13T02:34:35.674Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/vnd.contenstack.folder",
-    "tags": [],
-    "name": "Test Folder",
-    "ACL": {},
-    "is_dir": true,
-    "parent_uid": null,
-    "_version": 1
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/assets/folders/blt4ced123bdfbf0299
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/assets/folders/blt4ced123bdfbf0299' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:35 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 20ms
-X-Request-ID: 8b96e00dfb325d21d4f35c47a6269ec2
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "asset": {
-    "uid": "blt4ced123bdfbf0299",
-    "created_at": "2026-03-13T02:34:35.674Z",
-    "updated_at": "2026-03-13T02:34:35.674Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/vnd.contenstack.folder",
-    "tags": [],
-    "name": "Test Folder",
-    "ACL": {
-      "roles": [],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "is_dir": true,
-    "parent_uid": null,
-    "_version": 1
-  }
-}
-
- Test Context - - - - - - - - - - - - - - - - - - - - -
TestScenarioFetchFolder
TestScenarioCreateFolder
StackAPIKeyblt1bca31da998b57a9
FolderUIDblt4ced123bdfbf0299
FolderUIDblt4ced123bdfbf0299
-
Passed0.61s
-
✅ Test011_Should_Query_Assets_With_Parameters
-

Assertions

-
-
AreEqual(QueryAssetsWithParams_StatusCode)
-
-
Expected:
OK
-
Actual:
OK
-
-
-
-
IsNotNull(QueryAssetsWithParams_ResponseContainsAssets)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "uid": "blt2e420180c49b97d1",
-    "created_at": "2026-03-13T02:34:30.71Z",
-    "updated_at": "2026-03-13T02:34:31.14Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "async",
-      "updated",
-      "test"
-    ],
-    "filename": "async_updated_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2e420180c49b97d1/69b377b7b2e2a87a96adc169/async_updated_asset.json",
-    "ACL": {
-      "roles": [],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 2,
-    "title": "Async Updated Asset",
-    "description": "async updated test asset"
-  },
-  {
-    "uid": "bltc01c5126ad87ad39",
-    "created_at": "2026-03-13T02:34:29.829Z",
-    "updated_at": "2026-03-13T02:34:30.289Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "updated",
-      "test"
-    ],
-    "filename": "updated_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/bltc01c5126ad87ad39/69b377b6bf5153293e7b212e/updated_asset.json",
-    "ACL": {
-      "roles": [],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 2,
-    "title": "Updated Asset",
-    "description": "updated test asset"
-  },
-  {
-    "uid": "blt2c699da2d244de83",
-    "created_at": "2026-03-13T02:34:29.113Z",
-    "updated_at": "2026-03-13T02:34:29.113Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "async",
-      "test"
-    ],
-    "filename": "async_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2c699da2d244de83/69b377b5b1f4aa06332600f8/async_asset.json",
-    "ACL": {
-      "roles": [],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 1,
-    "title": "Async Asset",
-    "description": "async test asset"
-  },
-  {
-    "uid": "blt26b93606f6f75c7f",
-    "created_at": "2026-03-13T02:34:28.284Z",
-    "updated_at": "2026-03-13T02:34:28.284Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "async",
-      "test"
-    ],
-    "filename": "async_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt26b93606f6f75c7f/69b377b4e681b9842ab788ee/async_asset.json",
-    "ACL": {
-      "roles": [],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 1,
-    "title": "Async Asset",
-    "description": "async test asset"
-  },
-  {
-    "uid": "blt9676221935fa638d",
-    "created_at": "2026-03-13T02:34:27.747Z",
-    "updated_at": "2026-03-13T02:34:27.747Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "async",
-      "test"
-    ],
-    "filename": "async_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt9676221935fa638d/69b377b35a9c0e27a035ff10/async_asset.json",
-    "ACL": {
-      "roles": [],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 1,
-    "title": "Async Asset",
-    "description": "async test asset"
-  }
-]
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/assets?limit=5&skip=0
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/assets?limit=5&skip=0' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:31 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 25ms
-X-Request-ID: 985792d7f855d752a94fff34fb21acd7
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{"assets":[{"uid":"blt2e420180c49b97d1","created_at":"2026-03-13T02:34:30.710Z","updated_at":"2026-03-13T02:34:31.140Z","created_by":"blt1930fc55e5669df9","updated_by":"blt1930fc55e5669df9","content_type":"application/json","file_size":"1572","tags":["async","updated","test"],"filename":"async_updated_asset.json","url":"https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2e420180c49b97d1/69b377b7b2e2a87a96adc169/async_updated_asset.json","ACL":{"roles":[],"others":{"read":false,"create":false,"update":false,"delete":false,"sub_acl":{"read":false,"create":false,"update":false,"delete":false,"publish":false}}},"is_dir":false,"parent_uid":null,"_version":2,"title":"Async Updated Asset","description":"async updated test asset"},{"uid":"bltc01c5126ad87ad39","created_at":"2026-03-13T02:34:29.829Z","updated_at":"2026-03-13T02:34:30.289Z","created_by":"blt1930fc55e5669df9","updated_by":"blt1930fc55e5669df9","content_type":"application/json","file_size":"1572","tags":["updated","test"],"filename":"updated_asset.json","url":"https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/bltc01c5126ad87ad39/69b377b6bf5153293e7b212e/updated_asset.json","ACL":{"roles":[],"others":{"read":false,"create":false,"update":false,"delete":false,"sub_acl":{"read":false,"create":false,"update":false,"delete":false,"publish":false}}},"is_dir":false,"parent_uid":null,"_version":2,"title":"Updated Asset","description":"updated test asset"},{"uid":"blt2c699da2d244de83","created_at":"2026-03-13T02:34:29.113Z","updated_at":"2026-03-13T02:34:29.113Z","created_by":"blt1930fc55e5669df9","updated_by":"blt1930fc55e5669df9","content_type":"application/json","file_size":"1572","tags":["async","test"],"filename":"async_asset.json","url":"https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2c699da2d244de83/69b377b5b1f4aa06332600f8/async_asset.json","ACL":{"roles":[],"others":{"read":false,"create":false,"update":false,"delete":false,"sub_acl":{"read":false,"create":false,"update":false,"delete":false,"publish":false}}},"is_dir":false,"parent_uid":null,"_version":1,"title":"Async Asset","description":"async test asset"},{"uid":"blt26b93606f6f75c7f","created_at":"2026-03-13T02:34:28.284Z","updated_at":"2026-03-13T02:34:28.284Z","created_by":"blt1930fc55e5669df9","updated_by":"blt1930fc55e5669df9","content_type":"application/json","file_size":"1572","tags":["async","test"],"filename":"async_asset.json","url":"https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt26b93606f6f75c7f/69b377b4e681b9842ab788ee/async_asset.json","ACL":{"roles":[],"others":{"read":false,"create":false,"update":false,"delete":false,"sub_acl":{"read":false,"create":false,"update":false,"delete":false,"publish":false}}},"is_dir":false,"parent_uid":null,"_version":1,"title":"Async Asset","description":"async test asset"},{"uid":"blt9676221935fa638d","created_at":"2026-03-13T02:34:27.747Z","updated_at":"2026-03-13T02:34:27.747Z","created_by":"blt1930fc55e5669df9","updated_by":"blt1930
-
- Test Context - - - - - - - - -
TestScenarioQueryAssetsWithParameters
StackAPIKeyblt1bca31da998b57a9
-
Passed0.37s
-
✅ Test012_Should_Delete_Asset
-

Assertions

-
-
AreEqual(CreateAssetAsync_StatusCode)
-
-
Expected:
Created
-
Actual:
Created
-
-
-
-
AreEqual(DeleteAsset_StatusCode)
-
-
Expected:
OK
-
Actual:
OK
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/assets
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Type: multipart/form-data; boundary="8a106e61-89f8-410f-b173-c007b0536b13"
-
Request Body
--8a106e61-89f8-410f-b173-c007b0536b13
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8''async_asset.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---8a106e61-89f8-410f-b173-c007b0536b13
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-Async Asset
---8a106e61-89f8-410f-b173-c007b0536b13
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-async test asset
---8a106e61-89f8-410f-b173-c007b0536b13
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-async,test
---8a106e61-89f8-410f-b173-c007b0536b13--
-
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/assets' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Type: multipart/form-data; boundary="8a106e61-89f8-410f-b173-c007b0536b13"' \
-  -d '--8a106e61-89f8-410f-b173-c007b0536b13
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8'\'''\''async_asset.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---8a106e61-89f8-410f-b173-c007b0536b13
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-Async Asset
---8a106e61-89f8-410f-b173-c007b0536b13
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-async test asset
---8a106e61-89f8-410f-b173-c007b0536b13
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-async,test
---8a106e61-89f8-410f-b173-c007b0536b13--
-'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:32 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 118ms
-X-Request-ID: 7d790ba0589238dc32cb201c137e5815
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Asset created successfully.",
-  "asset": {
-    "uid": "blt921c1f03ec1e9c52",
-    "created_at": "2026-03-13T02:34:32.249Z",
-    "updated_at": "2026-03-13T02:34:32.249Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "async",
-      "test"
-    ],
-    "filename": "async_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt921c1f03ec1e9c52/69b377b8ad2a75109667a6e5/async_asset.json",
-    "ACL": {},
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 1,
-    "title": "Async Asset",
-    "description": "async test asset"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/assets/blt921c1f03ec1e9c52
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/assets/blt921c1f03ec1e9c52' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:33 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 59ms
-X-Request-ID: ea3855da29f370f300e4c6ae3ac25944
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Asset deleted successfully."
-}
-
- Test Context - - - - - - - - - - - - - - - - - - - - -
TestScenarioDeleteAsset
TestScenarioCreateAssetAsync
StackAPIKeyblt1bca31da998b57a9
AssetUIDblt921c1f03ec1e9c52
AssetUIDblt921c1f03ec1e9c52
-
Passed1.15s
-
✅ Test019_Should_Update_Folder_Async
-

Assertions

-
-
AreEqual(CreateFolder_StatusCode)
-
-
Expected:
Created
-
Actual:
Created
-
-
-
-
AreEqual(UpdateFolderAsync_StatusCode)
-
-
Expected:
Created
-
Actual:
Created
-
-
-
-
IsNotNull(UpdateFolderAsync_ResponseContainsFolder)
-
-
Expected:
NotNull
-
Actual:
{
-  "uid": "blt39c32a858165c368",
-  "created_at": "2026-03-13T02:34:37.802Z",
-  "updated_at": "2026-03-13T02:34:37.802Z",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "content_type": "application/vnd.contenstack.folder",
-  "tags": [],
-  "name": "Async Updated Test Folder",
-  "ACL": {},
-  "is_dir": true,
-  "parent_uid": null,
-  "_version": 1
-}
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/assets/folders
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 32
-Content-Type: application/json
-
Request Body
{"asset":{"name":"Test Folder"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/assets/folders' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 32' \
-  -H 'Content-Type: application/json' \
-  -d '{"asset":{"name":"Test Folder"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:37 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 33ms
-X-Request-ID: f0ee147ee89ddc59d44147b053d3f4d7
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Folder created successfully.",
-  "asset": {
-    "uid": "blt341b893a19bab016",
-    "created_at": "2026-03-13T02:34:37.494Z",
-    "updated_at": "2026-03-13T02:34:37.494Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/vnd.contenstack.folder",
-    "tags": [],
-    "name": "Test Folder",
-    "ACL": {},
-    "is_dir": true,
-    "parent_uid": null,
-    "_version": 1
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/assets/folders
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 46
-Content-Type: application/json
-
Request Body
{"asset":{"name":"Async Updated Test Folder"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/assets/folders' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 46' \
-  -H 'Content-Type: application/json' \
-  -d '{"asset":{"name":"Async Updated Test Folder"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:37 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 33ms
-X-Request-ID: 8a1d2a7d23f3aeeb05f49491eb84cc56
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Folder created successfully.",
-  "asset": {
-    "uid": "blt39c32a858165c368",
-    "created_at": "2026-03-13T02:34:37.802Z",
-    "updated_at": "2026-03-13T02:34:37.802Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/vnd.contenstack.folder",
-    "tags": [],
-    "name": "Async Updated Test Folder",
-    "ACL": {},
-    "is_dir": true,
-    "parent_uid": null,
-    "_version": 1
-  }
-}
-
- Test Context - - - - - - - - - - - - - - - - - - - - -
TestScenarioUpdateFolderAsync
TestScenarioCreateFolder
StackAPIKeyblt1bca31da998b57a9
FolderUIDblt341b893a19bab016
FolderUIDblt341b893a19bab016
-
Passed0.62s
-
✅ Test030_Should_Handle_Empty_Query_Results
-

Assertions

-
-
AreEqual(EmptyQuery_StatusCode)
-
-
Expected:
OK
-
Actual:
OK
-
-
-
-
IsNotNull(EmptyQuery_ResponseContainsAssets)
-
-
Expected:
NotNull
-
Actual:
[]
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/assets?limit=1&skip=999999
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/assets?limit=1&skip=999999' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:41 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 24ms
-X-Request-ID: eee36e8f60362016cd01750b887883bb
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "assets": []
-}
-
- Test Context - - - - - - - - -
TestScenarioHandleEmptyQueryResults
StackAPIKeyblt1bca31da998b57a9
-
Passed0.30s
-
✅ Test001_Should_Create_Asset
-

Assertions

-
-
AreEqual(CreateAsset_StatusCode)
-
-
Expected:
Created
-
Actual:
Created
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/assets
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Type: multipart/form-data; boundary="ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39"
-
Request Body
--ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=contentTypeSchema.json; filename*=utf-8''contentTypeSchema.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-New.json
---ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-new test desc
---ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-one,two
---ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39--
-
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/assets' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Type: multipart/form-data; boundary="ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39"' \
-  -d '--ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=contentTypeSchema.json; filename*=utf-8'\'''\''contentTypeSchema.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-New.json
---ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-new test desc
---ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-one,two
---ea1d8b8a-3c63-4806-b8e0-c1f5299cbf39--
-'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:26 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 235ms
-X-Request-ID: 3996abef01c763f593596fa9ddd2d08a
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Asset created successfully.",
-  "asset": {
-    "uid": "blt519b0e8d8e93d82a",
-    "created_at": "2026-03-13T02:34:26.178Z",
-    "updated_at": "2026-03-13T02:34:26.178Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "one",
-      "two"
-    ],
-    "filename": "contentTypeSchema.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt519b0e8d8e93d82a/69b377b2b2e2a810aeadc167/contentTypeSchema.json",
-    "ACL": {},
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 1,
-    "title": "New.json",
-    "description": "new test desc"
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioCreateAsset
StackAPIKeyblt1bca31da998b57a9
-
Passed0.52s
-
✅ Test022_Should_Delete_Folder
-

Assertions

-
-
AreEqual(CreateFolder_StatusCode)
-
-
Expected:
Created
-
Actual:
Created
-
-
-
-
AreEqual(DeleteFolder_StatusCode)
-
-
Expected:
OK
-
Actual:
OK
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/assets/folders
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 32
-Content-Type: application/json
-
Request Body
{"asset":{"name":"Test Folder"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/assets/folders' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 32' \
-  -H 'Content-Type: application/json' \
-  -d '{"asset":{"name":"Test Folder"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:38 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 31ms
-X-Request-ID: da9d44934febc49fd9885946ee52b89d
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Folder created successfully.",
-  "asset": {
-    "uid": "bltb806354a4dbcafc7",
-    "created_at": "2026-03-13T02:34:38.116Z",
-    "updated_at": "2026-03-13T02:34:38.116Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/vnd.contenstack.folder",
-    "tags": [],
-    "name": "Test Folder",
-    "ACL": {},
-    "is_dir": true,
-    "parent_uid": null,
-    "_version": 1
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/assets/folders/bltb806354a4dbcafc7
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/assets/folders/bltb806354a4dbcafc7' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:38 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 60ms
-X-Request-ID: e572756cf178c0f456b7f48dc2b0294e
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Folder deleted successfully."
-}
-
- Test Context - - - - - - - - - - - - - - - - - - - - -
TestScenarioDeleteFolder
TestScenarioCreateFolder
StackAPIKeyblt1bca31da998b57a9
FolderUIDbltb806354a4dbcafc7
FolderUIDbltb806354a4dbcafc7
-
Passed0.63s
-
✅ Test007_Should_Fetch_Asset_Async
-

Assertions

-
-
AreEqual(CreateAssetAsync_StatusCode)
-
-
Expected:
Created
-
Actual:
Created
-
-
-
-
AreEqual(FetchAssetAsync_StatusCode)
-
-
Expected:
OK
-
Actual:
OK
-
-
-
-
IsNotNull(FetchAssetAsync_ResponseContainsAsset)
-
-
Expected:
NotNull
-
Actual:
{
-  "uid": "blt2c699da2d244de83",
-  "created_at": "2026-03-13T02:34:29.113Z",
-  "updated_at": "2026-03-13T02:34:29.113Z",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "content_type": "application/json",
-  "file_size": "1572",
-  "tags": [
-    "async",
-    "test"
-  ],
-  "filename": "async_asset.json",
-  "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2c699da2d244de83/69b377b5b1f4aa06332600f8/async_asset.json",
-  "ACL": {
-    "roles": [],
-    "others": {
-      "read": false,
-      "create": false,
-      "update": false,
-      "delete": false,
-      "sub_acl": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "publish": false
-      }
-    }
-  },
-  "is_dir": false,
-  "parent_uid": null,
-  "_version": 1,
-  "title": "Async Asset",
-  "description": "async test asset"
-}
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/assets
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg
-Content-Type: multipart/form-data; boundary="474c2ce4-0273-4aae-b27e-60d89aa3e1f2"
-
Request Body
--474c2ce4-0273-4aae-b27e-60d89aa3e1f2
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8''async_asset.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---474c2ce4-0273-4aae-b27e-60d89aa3e1f2
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-Async Asset
---474c2ce4-0273-4aae-b27e-60d89aa3e1f2
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-async test asset
---474c2ce4-0273-4aae-b27e-60d89aa3e1f2
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-async,test
---474c2ce4-0273-4aae-b27e-60d89aa3e1f2--
-
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/assets' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Type: multipart/form-data; boundary="474c2ce4-0273-4aae-b27e-60d89aa3e1f2"' \
-  -d '--474c2ce4-0273-4aae-b27e-60d89aa3e1f2
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8'\'''\''async_asset.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---474c2ce4-0273-4aae-b27e-60d89aa3e1f2
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-Async Asset
---474c2ce4-0273-4aae-b27e-60d89aa3e1f2
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-async test asset
---474c2ce4-0273-4aae-b27e-60d89aa3e1f2
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-async,test
---474c2ce4-0273-4aae-b27e-60d89aa3e1f2--
-'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:29 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 125ms
-X-Request-ID: cfe0394ab3a2fe28e555ced0b2f18ae1
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Asset created successfully.",
-  "asset": {
-    "uid": "blt2c699da2d244de83",
-    "created_at": "2026-03-13T02:34:29.113Z",
-    "updated_at": "2026-03-13T02:34:29.113Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "async",
-      "test"
-    ],
-    "filename": "async_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2c699da2d244de83/69b377b5b1f4aa06332600f8/async_asset.json",
-    "ACL": {},
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 1,
-    "title": "Async Asset",
-    "description": "async test asset"
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/assets/blt2c699da2d244de83
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/assets/blt2c699da2d244de83' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:29 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 28ms
-X-Request-ID: 02147ef4b2f04db55d2f7763a743922e
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "asset": {
-    "uid": "blt2c699da2d244de83",
-    "created_at": "2026-03-13T02:34:29.113Z",
-    "updated_at": "2026-03-13T02:34:29.113Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "async",
-      "test"
-    ],
-    "filename": "async_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2c699da2d244de83/69b377b5b1f4aa06332600f8/async_asset.json",
-    "ACL": {
-      "roles": [],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 1,
-    "title": "Async Asset",
-    "description": "async test asset"
-  }
-}
-
- Test Context - - - - - - - - - - - - - - - - - - - - -
TestScenarioFetchAssetAsync
TestScenarioCreateAssetAsync
StackAPIKeyblt1bca31da998b57a9
AssetUIDblt2c699da2d244de83
AssetUIDblt2c699da2d244de83
-
Passed0.70s
-
✅ Test027_Should_Handle_Asset_Creation_With_Invalid_File
-

Assertions

-
-
IsTrue(InvalidFileAsset_ExceptionMessage)
-
-
Expected:
True
-
Actual:
True
-
-
-
- Test Context - - - - - - - - -
TestScenarioHandleAssetCreationWithInvalidFile
InvalidFilePath/Users/om.pawar/Desktop/SDKs/contentstack-management-dotnet/Contentstack.Management.Core.Tests/bin/Debug/net7.0/non_existent_file.json
-
Passed0.00s
-
✅ Test013_Should_Delete_Asset_Async
-

Assertions

-
-
AreEqual(DeleteAssetAsync_StatusCode)
-
-
Expected:
OK
-
Actual:
OK
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/assets
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Type: multipart/form-data; boundary="f17dd384-ce60-4393-9b15-d22429ff2a83"
-
Request Body
--f17dd384-ce60-4393-9b15-d22429ff2a83
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=delete_asset.json; filename*=utf-8''delete_asset.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---f17dd384-ce60-4393-9b15-d22429ff2a83
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-Delete Asset
---f17dd384-ce60-4393-9b15-d22429ff2a83
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-asset for deletion
---f17dd384-ce60-4393-9b15-d22429ff2a83
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-delete,test
---f17dd384-ce60-4393-9b15-d22429ff2a83--
-
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/assets' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Type: multipart/form-data; boundary="f17dd384-ce60-4393-9b15-d22429ff2a83"' \
-  -d '--f17dd384-ce60-4393-9b15-d22429ff2a83
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=delete_asset.json; filename*=utf-8'\'''\''delete_asset.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---f17dd384-ce60-4393-9b15-d22429ff2a83
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-Delete Asset
---f17dd384-ce60-4393-9b15-d22429ff2a83
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-asset for deletion
---f17dd384-ce60-4393-9b15-d22429ff2a83
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-delete,test
---f17dd384-ce60-4393-9b15-d22429ff2a83--
-'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:33 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 122ms
-X-Request-ID: a37821d44ea233dc6a1b646a7d9b2505
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Asset created successfully.",
-  "asset": {
-    "uid": "blt073200223249ec51",
-    "created_at": "2026-03-13T02:34:33.792Z",
-    "updated_at": "2026-03-13T02:34:33.792Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "delete",
-      "test"
-    ],
-    "filename": "delete_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt073200223249ec51/69b377b9eb0dcfe99915e77d/delete_asset.json",
-    "ACL": {},
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 1,
-    "title": "Delete Asset",
-    "description": "asset for deletion"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/assets/blt073200223249ec51
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/assets/blt073200223249ec51' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:34 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 51ms
-X-Request-ID: 3424f3251478da56d032535e1baf6ca4
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Asset deleted successfully."
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioDeleteAssetAsync
StackAPIKeyblt1bca31da998b57a9
AssetUIDblt073200223249ec51
-
Passed1.23s
-
✅ Test002_Should_Create_Dashboard
-

Assertions

-
-
AreEqual(CreateDashboard_StatusCode)
-
-
Expected:
Created
-
Actual:
Created
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/extensions
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Type: multipart/form-data; boundary="be4f78e6-b073-4a34-aedc-3334f2b34a8b"
-
Request Body
--be4f78e6-b073-4a34-aedc-3334f2b34a8b
-Content-Type: text/html
-Content-Disposition: form-data; name="extension[upload]"; filename=Dashboard; filename*=utf-8''Dashboard
-
-<html>
-<head>
-    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
-    <script
-        src="https://unpkg.com/@contentstack/ui-extensions-sdk@2.2.3/dist/ui-extension-sdk.js"
-        integrity="sha512-LMktiFAj7j/AUFctMlgY8qmLrLIQVctwwCsnCXIWnvgF9JlanilvFbZxOCtPNB5eO3vp2Nhw9ED1UsWa+ltSvQ=="
-        crossorigin="anonymous"
-    ></script>
-    <link
-        rel="stylesheet"
-        type="text/css"
-        href="https://unpkg.com/@contentstack/ui-extensions-sdk/dist/ui-extension-sdk.css"
-        integrity="sha512-yPPI/jWiqPr0HIh+1A2QPP5p58sSYqbPoBykxIuBckT1vzGwNbrOmwYM03qGI4ffnxd7q4kkoDys0kdZzxYn9A=="
-        crossorigin="anonymous"
-    />
-</head>
-<body>
-    <input type="color" id="html5colorpicker" onchange="colorChange()">
-    <script>
-      // initialise Field Extension 
-      window.extensionField = {};
-      // find color input element 
-      var colorPickerElement = document.getElementById("html5colorpicker");
-      ContentstackUIExtension.init().then(function(extension) {
-          // make extension object globally available
-          extensionField = extension;
-          // Get current color field value from Contentstack and update the color picker input element
-          colorPickerElement.value = extensionField.field.getData();
-      }).catch(function(error) {
-          console.log(error);
-      });
-        // On color change event, pass new value to Contentstack
-        function colorChange(){
-          extensionField.field.setData(colorPickerElement.value);      
-        }        
-    </script>
-</body>
-</html>
---be4f78e6-b073-4a34-aedc-3334f2b34a8b
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[title]"
-
-Dashboard
---be4f78e6-b073-4a34-aedc-3334f2b34a8b
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[tags]"
-
-one,two
---be4f78e6-b073-4a34-aedc-3334f2b34a8b
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[default_width]"
-
-half
---be4f78e6-b073-4a34-aedc-3334f2b34a8b
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[enable]"
-
-true
---be4f78e6-b073-4a34-aedc-3334f2b34a8b
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[type]"
-
-dashboard
---be4f78e6-b073-4a34-aedc-3334f2b34a8b--
-
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/extensions' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Type: multipart/form-data; boundary="be4f78e6-b073-4a34-aedc-3334f2b34a8b"' \
-  -d '--be4f78e6-b073-4a34-aedc-3334f2b34a8b
-Content-Type: text/html
-Content-Disposition: form-data; name="extension[upload]"; filename=Dashboard; filename*=utf-8'\'''\''Dashboard
-
-<html>
-<head>
-    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
-    <script
-        src="https://unpkg.com/@contentstack/ui-extensions-sdk@2.2.3/dist/ui-extension-sdk.js"
-        integrity="sha512-LMktiFAj7j/AUFctMlgY8qmLrLIQVctwwCsnCXIWnvgF9JlanilvFbZxOCtPNB5eO3vp2Nhw9ED1UsWa+ltSvQ=="
-        crossorigin="anonymous"
-    ></script>
-    <link
-        rel="stylesheet"
-        type="text/css"
-        href="https://unpkg.com/@contentstack/ui-extensions-sdk/dist/ui-extension-sdk.css"
-        integrity="sha512-yPPI/jWiqPr0HIh+1A2QPP5p58sSYqbPoBykxIuBckT1vzGwNbrOmwYM03qGI4ffnxd7q4kkoDys0kdZzxYn9A=="
-        crossorigin="anonymous"
-    />
-</head>
-<body>
-    <input type="color" id="html5colorpicker" onchange="colorChange()">
-    <script>
-      // initialise Field Extension 
-      window.extensionField = {};
-      // find color input element 
-      var colorPickerElement = document.getElementById("html5colorpicker");
-      ContentstackUIExtension.init().then(function(extension) {
-          // make extension object globally available
-          extensionField = extension;
-          // Get current color field value from Contentstack and update the color picker input element
-          colorPickerElement.value = extensionField.field.getData();
-      }).catch(function(error) {
-          console.log(error);
-      });
-        // On color change event, pass new value to Contentstack
-        function colorChange(){
-          extensionField.field.setData(colorPickerElement.value);      
-        }        
-    </script>
-</body>
-</html>
---be4f78e6-b073-4a34-aedc-3334f2b34a8b
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[title]"
-
-Dashboard
---be4f78e6-b073-4a34-aedc-3334f2b34a8b
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[tags]"
-
-one,two
---be4f78e6-b073-4a34-aedc-3334f2b34a8b
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[default_width]"
-
-half
---be4f78e6-b073-4a34-aedc-3334f2b34a8b
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[enable]"
-
-true
---be4f78e6-b073-4a34-aedc-3334f2b34a8b
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="extension[type]"
-
-dashboard
---be4f78e6-b073-4a34-aedc-3334f2b34a8b--
-'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:26 GMT
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 53ms
-X-Request-ID: 43fcffee-72bc-4507-95b5-06a89c6e3cc0
-x-server-name: extensions-microservice
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Server: contentstack
-Content-Type: application/json; charset=utf-8
-Content-Length: 1999
-
Response Body -
{
-  "notice": "Extension created successfully.",
-  "extension": {
-    "uid": "blt46b330ae484cc40a",
-    "created_at": "2026-03-13T02:34:26.707Z",
-    "updated_at": "2026-03-13T02:34:26.707Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "tags": [
-      "one",
-      "two"
-    ],
-    "_version": 1,
-    "title": "Dashboard",
-    "config": {},
-    "type": "dashboard",
-    "enable": true,
-    "default_width": "half",
-    "srcdoc": "<html>\n<head>\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"/>\n    <script\n        src=\"https://unpkg.com/@contentstack/ui-extensions-sdk@2.2.3/dist/ui-extension-sdk.js\"\n        integrity=\"sha512-LMktiFAj7j/AUFctMlgY8qmLrLIQVctwwCsnCXIWnvgF9JlanilvFbZxOCtPNB5eO3vp2Nhw9ED1UsWa+ltSvQ==\"\n        crossorigin=\"anonymous\"\n    ></script>\n    <link\n        rel=\"stylesheet\"\n        type=\"text/css\"\n        href=\"https://unpkg.com/@contentstack/ui-extensions-sdk/dist/ui-extension-sdk.css\"\n        integrity=\"sha512-yPPI/jWiqPr0HIh+1A2QPP5p58sSYqbPoBykxIuBckT1vzGwNbrOmwYM03qGI4ffnxd7q4kkoDys0kdZzxYn9A==\"\n        crossorigin=\"anonymous\"\n    />\n</head>\n<body>\n    <input type=\"color\" id=\"html5colorpicker\" onchange=\"colorChange()\">\n    <script>\n      // initialise Field Extension \n      window.extensionField = {};\n      // find color input element \n      var colorPickerElement = document.getElementById(\"html5colorpicker\");\n      ContentstackUIExtension.init().then(function(extension) {\n          // make extension object globally available\n          extensionField = extension;\n          // Get current color field value from Contentstack and update the color picker input element\n          colorPickerElement.value = extensionField.field.getData();\n      }).catch(function(error) {\n          console.log(error);\n      });\n        // On color change event, pass new value to Contentstack\n        function colorChange(){\n          extensionField.field.setData(colorPickerElement.value);      \n        }        \n    </script>\n</body>\n</html>"
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioCreateDashboard
StackAPIKeyblt1bca31da998b57a9
-
Passed0.35s
-
✅ Test026_Should_Handle_Invalid_Folder_Operations
-

Assertions

-
-
IsTrue(InvalidFolderFetch_ExceptionThrown)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/assets/folders/invalid_folder_uid_12345
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/assets/folders/invalid_folder_uid_12345' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
404 Not Found
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:40 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 23ms
-X-Request-ID: 17eaa6d5155a0e21a789e834364cb471
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Folder was not found",
-  "error_code": 145,
-  "errors": {
-    "uid": [
-      "is not valid."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/assets/folders
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 35
-Content-Type: application/json
-
Request Body
{"asset":{"name":"Invalid Folder"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/assets/folders' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 35' \
-  -H 'Content-Type: application/json' \
-  -d '{"asset":{"name":"Invalid Folder"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:40 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 39ms
-X-Request-ID: 45b8487448f8a445971422b44fa15fc3
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Folder created successfully.",
-  "asset": {
-    "uid": "blt878f6a7e3ce90604",
-    "created_at": "2026-03-13T02:34:40.670Z",
-    "updated_at": "2026-03-13T02:34:40.670Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/vnd.contenstack.folder",
-    "tags": [],
-    "name": "Invalid Folder",
-    "ACL": {},
-    "is_dir": true,
-    "parent_uid": null,
-    "_version": 1
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/assets/folders/invalid_folder_uid_12345
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/assets/folders/invalid_folder_uid_12345' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
404 Not Found
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:40 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 21ms
-X-Request-ID: 6be5c7b63ab9fdbfb1ef2147d3d12860
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Folder was not found",
-  "error_code": 145,
-  "errors": {
-    "uid": [
-      "is not valid."
-    ]
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioHandleInvalidFolderOperations
InvalidFolderUIDinvalid_folder_uid_12345
-
Passed0.91s
-
✅ Test018_Should_Update_Folder
-

Assertions

-
-
AreEqual(CreateFolder_StatusCode)
-
-
Expected:
Created
-
Actual:
Created
-
-
-
-
AreEqual(UpdateFolder_StatusCode)
-
-
Expected:
Created
-
Actual:
Created
-
-
-
-
IsNotNull(UpdateFolder_ResponseContainsFolder)
-
-
Expected:
NotNull
-
Actual:
{
-  "uid": "blt4c021e5cf2fe04fc",
-  "created_at": "2026-03-13T02:34:37.178Z",
-  "updated_at": "2026-03-13T02:34:37.178Z",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "content_type": "application/vnd.contenstack.folder",
-  "tags": [],
-  "name": "Updated Test Folder",
-  "ACL": {},
-  "is_dir": true,
-  "parent_uid": null,
-  "_version": 1
-}
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/assets/folders
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 32
-Content-Type: application/json
-
Request Body
{"asset":{"name":"Test Folder"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/assets/folders' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 32' \
-  -H 'Content-Type: application/json' \
-  -d '{"asset":{"name":"Test Folder"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:36 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 34ms
-X-Request-ID: 052c60931cbdadaa176a0c5ca73934c7
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Folder created successfully.",
-  "asset": {
-    "uid": "blt779c4ae5d1f1625e",
-    "created_at": "2026-03-13T02:34:36.874Z",
-    "updated_at": "2026-03-13T02:34:36.874Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/vnd.contenstack.folder",
-    "tags": [],
-    "name": "Test Folder",
-    "ACL": {},
-    "is_dir": true,
-    "parent_uid": null,
-    "_version": 1
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/assets/folders
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 40
-Content-Type: application/json
-
Request Body
{"asset":{"name":"Updated Test Folder"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/assets/folders' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 40' \
-  -H 'Content-Type: application/json' \
-  -d '{"asset":{"name":"Updated Test Folder"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:37 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 46ms
-X-Request-ID: 73897713d6dbbfd78cfb06741532ac77
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Folder created successfully.",
-  "asset": {
-    "uid": "blt4c021e5cf2fe04fc",
-    "created_at": "2026-03-13T02:34:37.178Z",
-    "updated_at": "2026-03-13T02:34:37.178Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/vnd.contenstack.folder",
-    "tags": [],
-    "name": "Updated Test Folder",
-    "ACL": {},
-    "is_dir": true,
-    "parent_uid": null,
-    "_version": 1
-  }
-}
-
- Test Context - - - - - - - - - - - - - - - - - - - - -
TestScenarioUpdateFolder
TestScenarioCreateFolder
StackAPIKeyblt1bca31da998b57a9
FolderUIDblt779c4ae5d1f1625e
FolderUIDblt779c4ae5d1f1625e
-
Passed0.62s
-
✅ Test008_Should_Update_Asset
-

Assertions

-
-
AreEqual(CreateAssetAsync_StatusCode)
-
-
Expected:
Created
-
Actual:
Created
-
-
-
-
AreEqual(UpdateAsset_StatusCode)
-
-
Expected:
OK
-
Actual:
OK
-
-
-
-
IsNotNull(UpdateAsset_ResponseContainsAsset)
-
-
Expected:
NotNull
-
Actual:
{
-  "uid": "bltc01c5126ad87ad39",
-  "created_at": "2026-03-13T02:34:29.829Z",
-  "updated_at": "2026-03-13T02:34:30.289Z",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "content_type": "application/json",
-  "file_size": "1572",
-  "tags": [
-    "updated",
-    "test"
-  ],
-  "filename": "updated_asset.json",
-  "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/bltc01c5126ad87ad39/69b377b6bf5153293e7b212e/updated_asset.json",
-  "ACL": {},
-  "is_dir": false,
-  "parent_uid": null,
-  "_version": 2,
-  "title": "Updated Asset",
-  "description": "updated test asset"
-}
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/assets
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Type: multipart/form-data; boundary="556098ff-7227-4c2c-814a-f3f17250d258"
-
Request Body
--556098ff-7227-4c2c-814a-f3f17250d258
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8''async_asset.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---556098ff-7227-4c2c-814a-f3f17250d258
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-Async Asset
---556098ff-7227-4c2c-814a-f3f17250d258
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-async test asset
---556098ff-7227-4c2c-814a-f3f17250d258
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-async,test
---556098ff-7227-4c2c-814a-f3f17250d258--
-
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/assets' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Type: multipart/form-data; boundary="556098ff-7227-4c2c-814a-f3f17250d258"' \
-  -d '--556098ff-7227-4c2c-814a-f3f17250d258
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8'\'''\''async_asset.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---556098ff-7227-4c2c-814a-f3f17250d258
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-Async Asset
---556098ff-7227-4c2c-814a-f3f17250d258
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-async test asset
---556098ff-7227-4c2c-814a-f3f17250d258
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-async,test
---556098ff-7227-4c2c-814a-f3f17250d258--
-'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:29 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 163ms
-X-Request-ID: ed3993467ef70d61d0f7a941c8a38fe5
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Asset created successfully.",
-  "asset": {
-    "uid": "bltc01c5126ad87ad39",
-    "created_at": "2026-03-13T02:34:29.829Z",
-    "updated_at": "2026-03-13T02:34:29.829Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "async",
-      "test"
-    ],
-    "filename": "async_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/bltc01c5126ad87ad39/69b377b519d88a3f00ca1181/async_asset.json",
-    "ACL": {},
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 1,
-    "title": "Async Asset",
-    "description": "async test asset"
-  }
-}
-
- -
PUThttps://api.contentstack.io/v3/assets/bltc01c5126ad87ad39
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Type: multipart/form-data; boundary="1ad0f07a-c1c3-49a3-9425-fdd288cef898"
-
Request Body
--1ad0f07a-c1c3-49a3-9425-fdd288cef898
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=updated_asset.json; filename*=utf-8''updated_asset.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---1ad0f07a-c1c3-49a3-9425-fdd288cef898
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-Updated Asset
---1ad0f07a-c1c3-49a3-9425-fdd288cef898
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-updated test asset
---1ad0f07a-c1c3-49a3-9425-fdd288cef898
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-updated,test
---1ad0f07a-c1c3-49a3-9425-fdd288cef898--
-
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/assets/bltc01c5126ad87ad39' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Type: multipart/form-data; boundary="1ad0f07a-c1c3-49a3-9425-fdd288cef898"' \
-  -d '--1ad0f07a-c1c3-49a3-9425-fdd288cef898
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=updated_asset.json; filename*=utf-8'\'''\''updated_asset.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---1ad0f07a-c1c3-49a3-9425-fdd288cef898
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-Updated Asset
---1ad0f07a-c1c3-49a3-9425-fdd288cef898
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-updated test asset
---1ad0f07a-c1c3-49a3-9425-fdd288cef898
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-updated,test
---1ad0f07a-c1c3-49a3-9425-fdd288cef898--
-'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:30 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 103ms
-X-Request-ID: 895b554247bce8c6a51419e3bb464194
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Asset updated successfully.",
-  "asset": {
-    "uid": "bltc01c5126ad87ad39",
-    "created_at": "2026-03-13T02:34:29.829Z",
-    "updated_at": "2026-03-13T02:34:30.289Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "updated",
-      "test"
-    ],
-    "filename": "updated_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/bltc01c5126ad87ad39/69b377b6bf5153293e7b212e/updated_asset.json",
-    "ACL": {},
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 2,
-    "title": "Updated Asset",
-    "description": "updated test asset"
-  }
-}
-
- Test Context - - - - - - - - - - - - - - - - - - - - -
TestScenarioUpdateAsset
TestScenarioCreateAssetAsync
StackAPIKeyblt1bca31da998b57a9
AssetUIDbltc01c5126ad87ad39
AssetUIDbltc01c5126ad87ad39
-
Passed0.89s
-
✅ Test017_Should_Fetch_Folder_Async
-

Assertions

-
-
AreEqual(CreateFolder_StatusCode)
-
-
Expected:
Created
-
Actual:
Created
-
-
-
-
AreEqual(FetchFolderAsync_StatusCode)
-
-
Expected:
OK
-
Actual:
OK
-
-
-
-
IsNotNull(FetchFolderAsync_ResponseContainsFolder)
-
-
Expected:
NotNull
-
Actual:
{
-  "uid": "blt1e8abff3fca4aa54",
-  "created_at": "2026-03-13T02:34:36.274Z",
-  "updated_at": "2026-03-13T02:34:36.274Z",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "content_type": "application/vnd.contenstack.folder",
-  "tags": [],
-  "name": "Test Folder",
-  "ACL": {
-    "roles": [],
-    "others": {
-      "read": false,
-      "create": false,
-      "update": false,
-      "delete": false,
-      "sub_acl": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "publish": false
-      }
-    }
-  },
-  "is_dir": true,
-  "parent_uid": null,
-  "_version": 1
-}
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/assets/folders
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 32
-Content-Type: application/json
-
Request Body
{"asset":{"name":"Test Folder"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/assets/folders' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 32' \
-  -H 'Content-Type: application/json' \
-  -d '{"asset":{"name":"Test Folder"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:36 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 40ms
-X-Request-ID: 9356a280b3753ed6a98e0c3da3587263
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Folder created successfully.",
-  "asset": {
-    "uid": "blt1e8abff3fca4aa54",
-    "created_at": "2026-03-13T02:34:36.274Z",
-    "updated_at": "2026-03-13T02:34:36.274Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/vnd.contenstack.folder",
-    "tags": [],
-    "name": "Test Folder",
-    "ACL": {},
-    "is_dir": true,
-    "parent_uid": null,
-    "_version": 1
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/assets/folders/blt1e8abff3fca4aa54
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/assets/folders/blt1e8abff3fca4aa54' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:36 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 25ms
-X-Request-ID: 413b68629b5140a3b1fdf902fdc6f0c3
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "asset": {
-    "uid": "blt1e8abff3fca4aa54",
-    "created_at": "2026-03-13T02:34:36.274Z",
-    "updated_at": "2026-03-13T02:34:36.274Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/vnd.contenstack.folder",
-    "tags": [],
-    "name": "Test Folder",
-    "ACL": {
-      "roles": [],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "is_dir": true,
-    "parent_uid": null,
-    "_version": 1
-  }
-}
-
- Test Context - - - - - - - - - - - - - - - - - - - - -
TestScenarioFetchFolderAsync
TestScenarioCreateFolder
StackAPIKeyblt1bca31da998b57a9
FolderUIDblt1e8abff3fca4aa54
FolderUIDblt1e8abff3fca4aa54
-
Passed0.60s
-
✅ Test009_Should_Update_Asset_Async
-

Assertions

-
-
AreEqual(CreateAssetAsync_StatusCode)
-
-
Expected:
Created
-
Actual:
Created
-
-
-
-
AreEqual(UpdateAssetAsync_StatusCode)
-
-
Expected:
OK
-
Actual:
OK
-
-
-
-
IsNotNull(UpdateAssetAsync_ResponseContainsAsset)
-
-
Expected:
NotNull
-
Actual:
{
-  "uid": "blt2e420180c49b97d1",
-  "created_at": "2026-03-13T02:34:30.71Z",
-  "updated_at": "2026-03-13T02:34:31.14Z",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "content_type": "application/json",
-  "file_size": "1572",
-  "tags": [
-    "async",
-    "updated",
-    "test"
-  ],
-  "filename": "async_updated_asset.json",
-  "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2e420180c49b97d1/69b377b7b2e2a87a96adc169/async_updated_asset.json",
-  "ACL": {},
-  "is_dir": false,
-  "parent_uid": null,
-  "_version": 2,
-  "title": "Async Updated Asset",
-  "description": "async updated test asset"
-}
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/assets
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Type: multipart/form-data; boundary="192bbf26-fbdb-4156-97e5-113dc6f59665"
-
Request Body
--192bbf26-fbdb-4156-97e5-113dc6f59665
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8''async_asset.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---192bbf26-fbdb-4156-97e5-113dc6f59665
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-Async Asset
---192bbf26-fbdb-4156-97e5-113dc6f59665
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-async test asset
---192bbf26-fbdb-4156-97e5-113dc6f59665
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-async,test
---192bbf26-fbdb-4156-97e5-113dc6f59665--
-
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/assets' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Type: multipart/form-data; boundary="192bbf26-fbdb-4156-97e5-113dc6f59665"' \
-  -d '--192bbf26-fbdb-4156-97e5-113dc6f59665
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=async_asset.json; filename*=utf-8'\'''\''async_asset.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---192bbf26-fbdb-4156-97e5-113dc6f59665
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-Async Asset
---192bbf26-fbdb-4156-97e5-113dc6f59665
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-async test asset
---192bbf26-fbdb-4156-97e5-113dc6f59665
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-async,test
---192bbf26-fbdb-4156-97e5-113dc6f59665--
-'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:30 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 149ms
-X-Request-ID: 39cfd4d5dec2dcf75c4911cf06c24026
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Asset created successfully.",
-  "asset": {
-    "uid": "blt2e420180c49b97d1",
-    "created_at": "2026-03-13T02:34:30.710Z",
-    "updated_at": "2026-03-13T02:34:30.710Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "async",
-      "test"
-    ],
-    "filename": "async_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2e420180c49b97d1/69b377b6239de549d1eca2a9/async_asset.json",
-    "ACL": {},
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 1,
-    "title": "Async Asset",
-    "description": "async test asset"
-  }
-}
-
- -
PUThttps://api.contentstack.io/v3/assets/blt2e420180c49b97d1
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Type: multipart/form-data; boundary="2d277fed-d6ab-4f78-ba89-36f1cef00014"
-
Request Body
--2d277fed-d6ab-4f78-ba89-36f1cef00014
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=async_updated_asset.json; filename*=utf-8''async_updated_asset.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---2d277fed-d6ab-4f78-ba89-36f1cef00014
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-Async Updated Asset
---2d277fed-d6ab-4f78-ba89-36f1cef00014
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-async updated test asset
---2d277fed-d6ab-4f78-ba89-36f1cef00014
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-async,updated,test
---2d277fed-d6ab-4f78-ba89-36f1cef00014--
-
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/assets/blt2e420180c49b97d1' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Type: multipart/form-data; boundary="2d277fed-d6ab-4f78-ba89-36f1cef00014"' \
-  -d '--2d277fed-d6ab-4f78-ba89-36f1cef00014
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=async_updated_asset.json; filename*=utf-8'\'''\''async_updated_asset.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---2d277fed-d6ab-4f78-ba89-36f1cef00014
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-Async Updated Asset
---2d277fed-d6ab-4f78-ba89-36f1cef00014
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-async updated test asset
---2d277fed-d6ab-4f78-ba89-36f1cef00014
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-async,updated,test
---2d277fed-d6ab-4f78-ba89-36f1cef00014--
-'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:31 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 133ms
-X-Request-ID: 7ceb97b4bf12253326cca2da016f324e
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Asset updated successfully.",
-  "asset": {
-    "uid": "blt2e420180c49b97d1",
-    "created_at": "2026-03-13T02:34:30.710Z",
-    "updated_at": "2026-03-13T02:34:31.140Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "content_type": "application/json",
-    "file_size": "1572",
-    "tags": [
-      "async",
-      "updated",
-      "test"
-    ],
-    "filename": "async_updated_asset.json",
-    "url": "https://assets.contentstack.io/v3/assets/blt1bca31da998b57a9/blt2e420180c49b97d1/69b377b7b2e2a87a96adc169/async_updated_asset.json",
-    "ACL": {},
-    "is_dir": false,
-    "parent_uid": null,
-    "_version": 2,
-    "title": "Async Updated Asset",
-    "description": "async updated test asset"
-  }
-}
-
- Test Context - - - - - - - - - - - - - - - - - - - - -
TestScenarioUpdateAssetAsync
TestScenarioCreateAssetAsync
StackAPIKeyblt1bca31da998b57a9
AssetUIDblt2e420180c49b97d1
AssetUIDblt2e420180c49b97d1
-
Passed0.84s
-
✅ Test029_Should_Handle_Query_With_Invalid_Parameters
-

Assertions

-
-
IsTrue(InvalidQuery_ContentstackErrorException)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/assets?limit=-1&skip=-1
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/assets?limit=-1&skip=-1' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:41 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 24ms
-X-Request-ID: b126b142902f284237a31b0531f855b3
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Failed to fetch assets. Please try again with valid parameters.",
-  "error_code": 141,
-  "errors": {
-    "params": [
-      "has an invalid operation."
-    ]
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioHandleQueryWithInvalidParameters
StackAPIKeyblt1bca31da998b57a9
-
Passed0.29s
-
✅ Test024_Should_Handle_Invalid_Asset_Operations
-

Assertions

-
-
IsTrue(InvalidAssetFetch_ExceptionMessage)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsTrue(InvalidAssetUpdate_ExceptionMessage)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsTrue(InvalidAssetDelete_ExceptionMessage)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/assets/invalid_asset_uid_12345
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/assets/invalid_asset_uid_12345' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
404 Not Found
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:39 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 24ms
-X-Request-ID: 0276fceded0eb14eb3bc280ddebb327b
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Asset was not found.",
-  "error_code": 145,
-  "errors": {
-    "uid": [
-      "is not valid."
-    ]
-  }
-}
-
- -
PUThttps://api.contentstack.io/v3/assets/invalid_asset_uid_12345
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Type: multipart/form-data; boundary="7b232c25-1cf0-40e9-b291-37cdc2afae3c"
-
Request Body
--7b232c25-1cf0-40e9-b291-37cdc2afae3c
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=invalid_asset.json; filename*=utf-8''invalid_asset.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---7b232c25-1cf0-40e9-b291-37cdc2afae3c
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-Invalid Asset
---7b232c25-1cf0-40e9-b291-37cdc2afae3c
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-invalid test asset
---7b232c25-1cf0-40e9-b291-37cdc2afae3c
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-invalid,test
---7b232c25-1cf0-40e9-b291-37cdc2afae3c--
-
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/assets/invalid_asset_uid_12345' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Type: multipart/form-data; boundary="7b232c25-1cf0-40e9-b291-37cdc2afae3c"' \
-  -d '--7b232c25-1cf0-40e9-b291-37cdc2afae3c
-Content-Type: application/json
-Content-Disposition: form-data; name="asset[upload]"; filename=invalid_asset.json; filename*=utf-8'\'''\''invalid_asset.json
-
-[
-  {
-    "display_name": "Title",
-    "uid": "title",
-    "data_type": "text",
-    "mandatory": true,
-    "unique": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "fldUid": "title"
-  },
-  {
-    "display_name": "URL",
-    "uid": "url",
-    "data_type": "text",
-    "mandatory": true,
-    "field_metadata": {
-      "_default": true,
-      "version": 3
-    },
-    "non_localizable": false,
-    "multiple": false,
-    "unique": false,
-    "fldUid": "url"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Single line textbox",
-    "abstract": "Name, title, email address, any short text",
-    "uid": "single_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": ""
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": { "format": "" },
-    "fldUid": "single_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Multi line textbox",
-    "abstract": "Descriptions, paragraphs, long text",
-    "uid": "multi_line",
-    "field_metadata": {
-      "description": "",
-      "default_value": "",
-      "multiline": true
-    },
-    "class": "high-lighter",
-    "format": "",
-    "error_messages": {
-      "format": ""
-    },
-    "fldUid": "multi_line"
-  },
-  {
-    "data_type": "text",
-    "display_name": "Markdown",
-    "abstract": "Input text in markdown language",
-    "uid": "markdown",
-    "field_metadata": {
-      "description": "",
-      "markdown": true
-    },
-    "class": "high-lighter",
-    "fldUid": "markdown"
-  }
-]
---7b232c25-1cf0-40e9-b291-37cdc2afae3c
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[title]"
-
-Invalid Asset
---7b232c25-1cf0-40e9-b291-37cdc2afae3c
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[description]"
-
-invalid test asset
---7b232c25-1cf0-40e9-b291-37cdc2afae3c
-Content-Type: text/plain; charset=utf-8
-Content-Disposition: form-data; name="asset[tags]"
-
-invalid,test
---7b232c25-1cf0-40e9-b291-37cdc2afae3c--
-'
- -
-
-
404 Not Found
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:39 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 29ms
-X-Request-ID: b5fe59619eeb571103fb1c9aba1b7d89
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Asset was not found.",
-  "error_code": 145,
-  "errors": {
-    "uid": [
-      "is not valid."
-    ]
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/assets/invalid_asset_uid_12345
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/assets/invalid_asset_uid_12345' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
404 Not Found
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:40 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 25ms
-X-Request-ID: e3bb40a21c47c9e01ba42775c3ce9b5e
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Asset was not found.",
-  "error_code": 145,
-  "errors": {
-    "uid": [
-      "is not valid."
-    ]
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioHandleInvalidAssetOperations
InvalidAssetUIDinvalid_asset_uid_12345
-
Passed0.93s
-
-
- -
-
-
- - Contentstack007_EntryTest -
-
- 6 passed · - 0 failed · - 0 skipped · - 6 total -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Test NameStatusDuration
-
✅ Test001_Should_Create_Entry
-

Assertions

-
-
IsNotNull(responseObject_entry)
-
-
Expected:
NotNull
-
Actual:
{
-  "title": "My First Single Page Entry",
-  "url": "/my-first-single-page",
-  "locale": "en-us",
-  "uid": "blt6b5b35165c290449",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:34:42.174Z",
-  "updated_at": "2026-03-13T02:34:42.174Z",
-  "ACL": {},
-  "_version": 1,
-  "tags": [],
-  "_in_progress": false
-}
-
-
-
-
IsNotNull(entry_uid)
-
-
Expected:
NotNull
-
Actual:
blt6b5b35165c290449
-
-
-
-
AreEqual(entry_title)
-
-
Expected:
My First Single Page Entry
-
Actual:
My First Single Page Entry
-
-
-
-
AreEqual(entry_url)
-
-
Expected:
/my-first-single-page
-
Actual:
/my-first-single-page
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/content_types/single_page
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/content_types/single_page' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:41 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-surrogate-key: blt1bca31da998b57a9.content_types blt1bca31da998b57a9.content_types.single_page
-cache-tag: blt1bca31da998b57a9.content_types blt1bca31da998b57a9.content_types.single_page
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 27ms
-X-Request-ID: 0c250ea2-99b8-459f-a9f8-4df7c78b9fca
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "content_type": {
-    "created_at": "2026-03-13T02:34:20.692Z",
-    "updated_at": "2026-03-13T02:34:20.692Z",
-    "title": "Single Page",
-    "uid": "single_page",
-    "_version": 1,
-    "inbuilt_class": false,
-    "schema": [
-      {
-        "display_name": "Title",
-        "uid": "title",
-        "data_type": "text",
-        "field_metadata": {
-          "_default": "True",
-          "allow_rich_text": false,
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": true,
-        "unique": true,
-        "non_localizable": false
-      },
-      {
-        "display_name": "URL",
-        "uid": "url",
-        "data_type": "text",
-        "field_metadata": {
-          "_default": true,
-          "allow_rich_text": false,
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "instruction": "",
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": true,
-        "unique": false,
-        "non_localizable": false
-      }
-    ],
-    "last_activity": {},
-    "maintain_revisions": true,
-    "description": "",
-    "DEFAULT_ACL": {
-      "others": {
-        "read": false,
-        "create": false
-      },
-      "users": [
-        {
-          "read": true,
-          "sub_acl": {
-            "read": true
-          },
-          "uid": "blt99daf6332b695c38"
-        }
-      ],
-      "management_token": {
-        "read": true
-      }
-    },
-    "SYS_ACL": {
-      "roles": [
-        {
-          "uid": "blt5f456b9cfa69b697",
-          "read": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true,
-            "publish": true
-          },
-          "update": true,
-          "delete": true
-        },
-        {
-          "uid": "bltd7ebbaea63551cf9",
-          "read": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true,
-            "publish": true
-          }
-        },
-        {
-          "uid": "blt1b7926e68b1b14b2",
-          "read": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true,
-            "publish": true
-          },
-          "update": true,
-          "delete": true
-        }
-      ],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "options": {
-      "title": "title",
-      "sub_title": [],
-      "singleton": false,
-      "is_page": true,
-      "url_pattern": "/:title",
-      "url_prefix": "/"
-    },
-    "abilities": {
-      "get_one_object": true,
-      "get_all_objects
-
- -
POSThttps://api.contentstack.io/v3/content_types/single_page/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 113
-Content-Type: application/json
-
Request Body
{"entry": {"_content_type_uid":"single_page","title":"My First Single Page Entry","url":"/my-first-single-page"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/content_types/single_page/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 113' \
-  -H 'Content-Type: application/json' \
-  -d '{"entry": {"_content_type_uid":"single_page","title":"My First Single Page Entry","url":"/my-first-single-page"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:42 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 247ms
-X-Request-ID: af01c286-b49e-45e5-a7f7-9fa8eacc863a
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Entry created successfully.",
-  "entry": {
-    "title": "My First Single Page Entry",
-    "url": "/my-first-single-page",
-    "locale": "en-us",
-    "uid": "blt6b5b35165c290449",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:34:42.174Z",
-    "updated_at": "2026-03-13T02:34:42.174Z",
-    "ACL": {},
-    "_version": 1,
-    "tags": [],
-    "_in_progress": false
-  }
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioCreateSinglePageEntry
ContentTypesingle_page
Entryblt6b5b35165c290449
-
Passed0.81s
-
✅ Test005_Should_Query_Entries
-

Assertions

-
-
IsNotNull(responseObject_entries)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "title": "Updated Entry Title",
-    "url": "/updated-entry-url",
-    "locale": "en-us",
-    "uid": "bltc2bf0a8e4679bcc0",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:34:44.185Z",
-    "updated_at": "2026-03-13T02:34:44.6Z",
-    "ACL": {},
-    "_version": 2,
-    "tags": [],
-    "_in_progress": false
-  },
-  {
-    "title": "Test Entry for Fetch",
-    "url": "/test-entry-for-fetch",
-    "locale": "en-us",
-    "uid": "bltf8e896c77c553263",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:34:43.469Z",
-    "updated_at": "2026-03-13T02:34:43.469Z",
-    "ACL": {},
-    "_version": 1,
-    "tags": [],
-    "_in_progress": false
-  },
-  {
-    "title": "My First Single Page Entry",
-    "url": "/my-first-single-page",
-    "locale": "en-us",
-    "uid": "blt6b5b35165c290449",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:34:42.174Z",
-    "updated_at": "2026-03-13T02:34:42.174Z",
-    "ACL": {},
-    "_version": 1,
-    "tags": [],
-    "_in_progress": false
-  }
-]
-
-
-
-
IsNotNull(entries_array)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "title": "Updated Entry Title",
-    "url": "/updated-entry-url",
-    "locale": "en-us",
-    "uid": "bltc2bf0a8e4679bcc0",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:34:44.185Z",
-    "updated_at": "2026-03-13T02:34:44.6Z",
-    "ACL": {},
-    "_version": 2,
-    "tags": [],
-    "_in_progress": false
-  },
-  {
-    "title": "Test Entry for Fetch",
-    "url": "/test-entry-for-fetch",
-    "locale": "en-us",
-    "uid": "bltf8e896c77c553263",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:34:43.469Z",
-    "updated_at": "2026-03-13T02:34:43.469Z",
-    "ACL": {},
-    "_version": 1,
-    "tags": [],
-    "_in_progress": false
-  },
-  {
-    "title": "My First Single Page Entry",
-    "url": "/my-first-single-page",
-    "locale": "en-us",
-    "uid": "blt6b5b35165c290449",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:34:42.174Z",
-    "updated_at": "2026-03-13T02:34:42.174Z",
-    "ACL": {},
-    "_version": 1,
-    "tags": [],
-    "_in_progress": false
-  }
-]
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/content_types/single_page/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/content_types/single_page/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:44 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 39ms
-X-Request-ID: 9714e67a-7182-4360-95fa-7e8acc4515f2
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "entries": [
-    {
-      "title": "Updated Entry Title",
-      "url": "/updated-entry-url",
-      "locale": "en-us",
-      "uid": "bltc2bf0a8e4679bcc0",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:44.185Z",
-      "updated_at": "2026-03-13T02:34:44.600Z",
-      "ACL": {},
-      "_version": 2,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Test Entry for Fetch",
-      "url": "/test-entry-for-fetch",
-      "locale": "en-us",
-      "uid": "bltf8e896c77c553263",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:43.469Z",
-      "updated_at": "2026-03-13T02:34:43.469Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "My First Single Page Entry",
-      "url": "/my-first-single-page",
-      "locale": "en-us",
-      "uid": "blt6b5b35165c290449",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:42.174Z",
-      "updated_at": "2026-03-13T02:34:42.174Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    }
-  ]
-}
-
- Test Context - - - - - - - - -
TestScenarioQueryEntries
ContentTypesingle_page
-
Passed0.34s
-
✅ Test004_Should_Update_Entry
-

Assertions

-
-
IsNotNull(created_entry_uid)
-
-
Expected:
NotNull
-
Actual:
bltc2bf0a8e4679bcc0
-
-
-
-
IsNotNull(updateObject_entry)
-
-
Expected:
NotNull
-
Actual:
{
-  "title": "Updated Entry Title",
-  "url": "/updated-entry-url",
-  "locale": "en-us",
-  "uid": "bltc2bf0a8e4679bcc0",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:34:44.185Z",
-  "updated_at": "2026-03-13T02:34:44.6Z",
-  "ACL": {},
-  "_version": 2,
-  "tags": [],
-  "_in_progress": false
-}
-
-
-
-
AreEqual(updated_entry_uid)
-
-
Expected:
bltc2bf0a8e4679bcc0
-
Actual:
bltc2bf0a8e4679bcc0
-
-
-
-
AreEqual(updated_entry_title)
-
-
Expected:
Updated Entry Title
-
Actual:
Updated Entry Title
-
-
-
-
AreEqual(updated_entry_url)
-
-
Expected:
/updated-entry-url
-
Actual:
/updated-entry-url
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/content_types/single_page/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 105
-Content-Type: application/json
-
Request Body
{"entry": {"_content_type_uid":"single_page","title":"Original Entry Title","url":"/original-entry-url"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/content_types/single_page/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 105' \
-  -H 'Content-Type: application/json' \
-  -d '{"entry": {"_content_type_uid":"single_page","title":"Original Entry Title","url":"/original-entry-url"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:44 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 74ms
-X-Request-ID: 8ae1afa6-130a-4f88-874e-4d834fe2b935
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Entry created successfully.",
-  "entry": {
-    "title": "Original Entry Title",
-    "url": "/original-entry-url",
-    "locale": "en-us",
-    "uid": "bltc2bf0a8e4679bcc0",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:34:44.185Z",
-    "updated_at": "2026-03-13T02:34:44.185Z",
-    "ACL": {},
-    "_version": 1,
-    "tags": [],
-    "_in_progress": false
-  }
-}
-
- -
PUThttps://api.contentstack.io/v3/content_types/single_page/entries/bltc2bf0a8e4679bcc0
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 103
-Content-Type: application/json
-
Request Body
{"entry": {"_content_type_uid":"single_page","title":"Updated Entry Title","url":"/updated-entry-url"}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/content_types/single_page/entries/bltc2bf0a8e4679bcc0' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 103' \
-  -H 'Content-Type: application/json' \
-  -d '{"entry": {"_content_type_uid":"single_page","title":"Updated Entry Title","url":"/updated-entry-url"}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:44 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 90ms
-X-Request-ID: 2b6b319c-b049-4fdb-b088-d5cf04e9d16f
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Entry updated successfully.",
-  "entry": {
-    "title": "Updated Entry Title",
-    "url": "/updated-entry-url",
-    "locale": "en-us",
-    "uid": "bltc2bf0a8e4679bcc0",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:34:44.185Z",
-    "updated_at": "2026-03-13T02:34:44.600Z",
-    "ACL": {},
-    "_version": 2,
-    "tags": [],
-    "_in_progress": false
-  }
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioUpdateEntry
ContentTypesingle_page
Entrybltc2bf0a8e4679bcc0
-
Passed0.77s
-
✅ Test006_Should_Delete_Entry
-

Assertions

-
-
IsNotNull(created_entry_uid)
-
-
Expected:
NotNull
-
Actual:
bltb0fc061b5a738331
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/content_types/single_page/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 97
-Content-Type: application/json
-
Request Body
{"entry": {"_content_type_uid":"single_page","title":"Entry to Delete","url":"/entry-to-delete"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/content_types/single_page/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 97' \
-  -H 'Content-Type: application/json' \
-  -d '{"entry": {"_content_type_uid":"single_page","title":"Entry to Delete","url":"/entry-to-delete"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:45 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 72ms
-X-Request-ID: c6db5266-40ae-469e-a95c-7fb4d46d7799
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Entry created successfully.",
-  "entry": {
-    "title": "Entry to Delete",
-    "url": "/entry-to-delete",
-    "locale": "en-us",
-    "uid": "bltb0fc061b5a738331",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:34:45.279Z",
-    "updated_at": "2026-03-13T02:34:45.279Z",
-    "ACL": {},
-    "_version": 1,
-    "tags": [],
-    "_in_progress": false
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/content_types/single_page/entries/bltb0fc061b5a738331
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/content_types/single_page/entries/bltb0fc061b5a738331' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:45 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 119ms
-X-Request-ID: 9ac74b27-f223-4707-9365-61ac89b2b8ba
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Entry deleted successfully."
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioDeleteEntry
ContentTypesingle_page
Entrybltb0fc061b5a738331
-
Passed0.74s
-
✅ Test002_Should_Create_MultiPage_Entry
-

Assertions

-
-
IsNotNull(responseObject_entry)
-
-
Expected:
NotNull
-
Actual:
{
-  "title": "My First Multi Page Entry",
-  "url": "/my-first-multi-page",
-  "locale": "en-us",
-  "uid": "blt64200a53199d2f83",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:34:43.112Z",
-  "updated_at": "2026-03-13T02:34:43.112Z",
-  "ACL": {},
-  "_version": 1,
-  "tags": [],
-  "_in_progress": false
-}
-
-
-
-
IsNotNull(entry_uid)
-
-
Expected:
NotNull
-
Actual:
blt64200a53199d2f83
-
-
-
-
AreEqual(entry_title)
-
-
Expected:
My First Multi Page Entry
-
Actual:
My First Multi Page Entry
-
-
-
-
AreEqual(entry_url)
-
-
Expected:
/my-first-multi-page
-
Actual:
/my-first-multi-page
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/content_types/multi_page
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/content_types/multi_page' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:42 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-surrogate-key: blt1bca31da998b57a9.content_types blt1bca31da998b57a9.content_types.multi_page
-cache-tag: blt1bca31da998b57a9.content_types blt1bca31da998b57a9.content_types.multi_page
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 28ms
-X-Request-ID: a588838f-5e9e-4b38-b7d6-d4bb5bd05c05
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "content_type": {
-    "created_at": "2026-03-13T02:34:21.019Z",
-    "updated_at": "2026-03-13T02:34:22.293Z",
-    "title": "Multi page",
-    "uid": "multi_page",
-    "_version": 3,
-    "inbuilt_class": false,
-    "schema": [
-      {
-        "display_name": "Title",
-        "uid": "title",
-        "data_type": "text",
-        "field_metadata": {
-          "_default": "True",
-          "allow_rich_text": false,
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": true,
-        "unique": true,
-        "non_localizable": false
-      },
-      {
-        "display_name": "URL",
-        "uid": "url",
-        "data_type": "text",
-        "field_metadata": {
-          "_default": true,
-          "allow_rich_text": false,
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": true,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "display_name": "Single line textbox",
-        "uid": "single_line",
-        "data_type": "text",
-        "field_metadata": {
-          "default_value": "",
-          "allow_rich_text": false,
-          "description": "",
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "display_name": "Multi line textbox",
-        "uid": "multi_line",
-        "data_type": "text",
-        "field_metadata": {
-          "default_value": "",
-          "allow_rich_text": false,
-          "description": "",
-          "multiline": true,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "display_name": "Markdown",
-        "uid": "markdown",
-        "data_type": "text",
-        "field_metadata": {
-          "allow_rich_text": false,
-          "description": "",
-          "multiline": false,
-          "version": 3,
-          "markdown": true,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "display_name": "New Text Field",
-        "uid": "new_text_field",
-        "data_type": "text",
-        "field_metadata": {
-          "allow_rich_text": false,
-          "description": "A new text field added during async update test",
-          "multiline": false,
-          "version": 3,
-          "markdown": false,
-          "ref_multiple": false
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      }
-
-
- -
POSThttps://api.contentstack.io/v3/content_types/multi_page/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 110
-Content-Type: application/json
-
Request Body
{"entry": {"_content_type_uid":"multi_page","title":"My First Multi Page Entry","url":"/my-first-multi-page"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/content_types/multi_page/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 110' \
-  -H 'Content-Type: application/json' \
-  -d '{"entry": {"_content_type_uid":"multi_page","title":"My First Multi Page Entry","url":"/my-first-multi-page"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:43 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 64ms
-X-Request-ID: d35009e3-ae53-4345-9ef5-71773fc85fb7
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Entry created successfully.",
-  "entry": {
-    "title": "My First Multi Page Entry",
-    "url": "/my-first-multi-page",
-    "locale": "en-us",
-    "uid": "blt64200a53199d2f83",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:34:43.112Z",
-    "updated_at": "2026-03-13T02:34:43.112Z",
-    "ACL": {},
-    "_version": 1,
-    "tags": [],
-    "_in_progress": false
-  }
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioCreateMultiPageEntry
ContentTypemulti_page
Entryblt64200a53199d2f83
-
Passed0.77s
-
✅ Test003_Should_Fetch_Entry
-

Assertions

-
-
IsNotNull(created_entry_uid)
-
-
Expected:
NotNull
-
Actual:
bltf8e896c77c553263
-
-
-
-
IsNotNull(fetchObject_entry)
-
-
Expected:
NotNull
-
Actual:
{
-  "title": "Test Entry for Fetch",
-  "url": "/test-entry-for-fetch",
-  "locale": "en-us",
-  "uid": "bltf8e896c77c553263",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:34:43.469Z",
-  "updated_at": "2026-03-13T02:34:43.469Z",
-  "ACL": {},
-  "_version": 1,
-  "tags": [],
-  "_in_progress": false
-}
-
-
-
-
AreEqual(fetched_entry_uid)
-
-
Expected:
bltf8e896c77c553263
-
Actual:
bltf8e896c77c553263
-
-
-
-
AreEqual(fetched_entry_title)
-
-
Expected:
Test Entry for Fetch
-
Actual:
Test Entry for Fetch
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/content_types/single_page/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 107
-Content-Type: application/json
-
Request Body
{"entry": {"_content_type_uid":"single_page","title":"Test Entry for Fetch","url":"/test-entry-for-fetch"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/content_types/single_page/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 107' \
-  -H 'Content-Type: application/json' \
-  -d '{"entry": {"_content_type_uid":"single_page","title":"Test Entry for Fetch","url":"/test-entry-for-fetch"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:43 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 84ms
-X-Request-ID: 1c65238a-6ef7-4a72-ad7b-b09f379e6c55
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Entry created successfully.",
-  "entry": {
-    "title": "Test Entry for Fetch",
-    "url": "/test-entry-for-fetch",
-    "locale": "en-us",
-    "uid": "bltf8e896c77c553263",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:34:43.469Z",
-    "updated_at": "2026-03-13T02:34:43.469Z",
-    "ACL": {},
-    "_version": 1,
-    "tags": [],
-    "_in_progress": false
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/content_types/single_page/entries/bltf8e896c77c553263
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/content_types/single_page/entries/bltf8e896c77c553263' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:43 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 45ms
-X-Request-ID: fcec31f5-5b56-4003-a14b-2f7a7aba78a6
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "entry": {
-    "title": "Test Entry for Fetch",
-    "url": "/test-entry-for-fetch",
-    "locale": "en-us",
-    "uid": "bltf8e896c77c553263",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:34:43.469Z",
-    "updated_at": "2026-03-13T02:34:43.469Z",
-    "ACL": {},
-    "_version": 1,
-    "tags": [],
-    "_in_progress": false
-  }
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioFetchEntry
ContentTypesingle_page
Entrybltf8e896c77c553263
-
Passed0.71s
-
-
- -
-
-
- - Contentstack008_NestedGlobalFieldTest -
-
- 9 passed · - 0 failed · - 0 skipped · - 9 total -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Test NameStatusDuration
-
✅ Test004_Should_Fetch_Async_Nested_Global_Field
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/global_fields/nested_global_field_test
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/global_fields/nested_global_field_test' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:24 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-surrogate-key: blt1bca31da998b57a9.global_fields blt1bca31da998b57a9.global_fields.nested_global_field_test
-api_version: 3.2
-x-contentstack-organization: blt8d282118e2094bb8
-X-Request-ID: 0a62fe2c-03a3-4c93-8890-e3279064d100
-x-runtime: 17
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 832
-
Response Body -
{
-  "global_field": {
-    "title": "Nested Global Field Test",
-    "uid": "nested_global_field_test",
-    "description": "Test nested global field for .NET SDK",
-    "schema": [
-      {
-        "display_name": "Single Line Textbox",
-        "uid": "single_line",
-        "data_type": "text",
-        "field_metadata": {
-          "default_value": "",
-          "description": "",
-          "multiline": false,
-          "version": 3
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "reference_to": "referenced_global_field",
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false,
-        "display_name": "Global Field Reference",
-        "uid": "global_field_reference",
-        "data_type": "global_field",
-        "field_metadata": {
-          "description": "Reference to another global field"
-        }
-      }
-    ],
-    "created_at": "2026-03-13T02:34:23.554Z",
-    "updated_at": "2026-03-13T02:34:23.554Z",
-    "_version": 1,
-    "inbuilt_class": false,
-    "last_activity": {},
-    "maintain_revisions": true
-  }
-}
-
Passed0.32s
-
✅ Test006_Should_Update_Async_Nested_Global_Field
-

HTTP Transactions

-
- -
PUThttps://api.contentstack.io/v3/global_fields/nested_global_field_test
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 937
-Content-Type: application/json
-
Request Body
{"global_field": {"title":"Updated Async Nested Global Field","uid":"nested_global_field_test","description":"Updated async description for nested global field","schema":[{"display_name":"Single Line Textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"reference_to":"referenced_global_field","multiple":false,"mandatory":false,"unique":false,"non_localizable":false,"display_name":"Global Field Reference","uid":"global_field_reference","data_type":"global_field","field_metadata":{"allow_rich_text":false,"description":"Reference to another global field","multiline":false,"version":0,"markdown":false,"ref_multiple":false}}],"global_field_refs":[{"uid":"referenced_global_field","occurrence_count":1,"isChild":true,"paths":["schema.1"]}]}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/global_fields/nested_global_field_test' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 937' \
-  -H 'Content-Type: application/json' \
-  -d '{"global_field": {"title":"Updated Async Nested Global Field","uid":"nested_global_field_test","description":"Updated async description for nested global field","schema":[{"display_name":"Single Line Textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"reference_to":"referenced_global_field","multiple":false,"mandatory":false,"unique":false,"non_localizable":false,"display_name":"Global Field Reference","uid":"global_field_reference","data_type":"global_field","field_metadata":{"allow_rich_text":false,"description":"Reference to another global field","multiline":false,"version":0,"markdown":false,"ref_multiple":false}}],"global_field_refs":[{"uid":"referenced_global_field","occurrence_count":1,"isChild":true,"paths":["schema.1"]}]}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:24 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-api_version: 3.2
-x-contentstack-organization: blt8d282118e2094bb8
-X-Request-ID: 5d342c9f-2ede-45ce-ba88-993c9fc913fc
-x-runtime: 39
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 899
-
Response Body -
{
-  "notice": "Global Field updated successfully.",
-  "global_field": {
-    "title": "Updated Async Nested Global Field",
-    "uid": "nested_global_field_test",
-    "description": "Updated async description for nested global field",
-    "schema": [
-      {
-        "display_name": "Single Line Textbox",
-        "uid": "single_line",
-        "data_type": "text",
-        "field_metadata": {
-          "default_value": "",
-          "description": "",
-          "multiline": false,
-          "version": 3
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "reference_to": "referenced_global_field",
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false,
-        "display_name": "Global Field Reference",
-        "uid": "global_field_reference",
-        "data_type": "global_field",
-        "field_metadata": {
-          "description": "Reference to another global field"
-        }
-      }
-    ],
-    "created_at": "2026-03-13T02:34:23.554Z",
-    "updated_at": "2026-03-13T02:34:24.850Z",
-    "_version": 3,
-    "inbuilt_class": false,
-    "last_activity": {},
-    "maintain_revisions": true
-  }
-}
-
Passed0.32s
-
✅ Test003_Should_Fetch_Nested_Global_Field
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/global_fields/nested_global_field_test
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/global_fields/nested_global_field_test' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:23 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-surrogate-key: blt1bca31da998b57a9.global_fields blt1bca31da998b57a9.global_fields.nested_global_field_test
-api_version: 3.2
-x-contentstack-organization: blt8d282118e2094bb8
-X-Request-ID: 2649c1f5-0cae-4528-9340-0ea89ccf5563
-x-runtime: 17
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 832
-
Response Body -
{
-  "global_field": {
-    "title": "Nested Global Field Test",
-    "uid": "nested_global_field_test",
-    "description": "Test nested global field for .NET SDK",
-    "schema": [
-      {
-        "display_name": "Single Line Textbox",
-        "uid": "single_line",
-        "data_type": "text",
-        "field_metadata": {
-          "default_value": "",
-          "description": "",
-          "multiline": false,
-          "version": 3
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "reference_to": "referenced_global_field",
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false,
-        "display_name": "Global Field Reference",
-        "uid": "global_field_reference",
-        "data_type": "global_field",
-        "field_metadata": {
-          "description": "Reference to another global field"
-        }
-      }
-    ],
-    "created_at": "2026-03-13T02:34:23.554Z",
-    "updated_at": "2026-03-13T02:34:23.554Z",
-    "_version": 1,
-    "inbuilt_class": false,
-    "last_activity": {},
-    "maintain_revisions": true
-  }
-}
-
Passed0.29s
-
✅ Test009_Should_Delete_Referenced_Global_Field
-

HTTP Transactions

-
- -
DELETEhttps://api.contentstack.io/v3/global_fields/referenced_global_field?force=true
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/global_fields/referenced_global_field?force=true' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:25 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-api_version: 3.2
-x-contentstack-organization: blt8d282118e2094bb8
-X-Request-ID: 633a5ae7-2134-417e-93ab-761bda1316be
-x-runtime: 31
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 47
-
Response Body -
{
-  "notice": "Global Field deleted successfully."
-}
-
Passed0.32s
-
✅ Test007_Should_Query_Nested_Global_Fields
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/global_fields
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/global_fields' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:25 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-surrogate-key: blt1bca31da998b57a9.global_fields
-api_version: 3.2
-x-contentstack-organization: blt8d282118e2094bb8
-X-Request-ID: d11c13ad-56d4-43dd-be18-d57d5242c614
-x-runtime: 19
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 2215
-
Response Body -
{
-  "global_fields": [
-    {
-      "title": "Updated Async Nested Global Field",
-      "uid": "nested_global_field_test",
-      "description": "Updated async description for nested global field",
-      "schema": [
-        {
-          "display_name": "Single Line Textbox",
-          "uid": "single_line",
-          "data_type": "text",
-          "field_metadata": {
-            "default_value": "",
-            "description": "",
-            "multiline": false,
-            "version": 3
-          },
-          "multiple": false,
-          "mandatory": false,
-          "unique": false,
-          "non_localizable": false
-        },
-        {
-          "reference_to": "referenced_global_field",
-          "multiple": false,
-          "mandatory": false,
-          "unique": false,
-          "non_localizable": false,
-          "display_name": "Global Field Reference",
-          "uid": "global_field_reference",
-          "data_type": "global_field",
-          "field_metadata": {
-            "description": "Reference to another global field"
-          }
-        }
-      ],
-      "created_at": "2026-03-13T02:34:23.554Z",
-      "updated_at": "2026-03-13T02:34:24.850Z",
-      "_version": 3,
-      "inbuilt_class": false,
-      "last_activity": {},
-      "maintain_revisions": true
-    },
-    {
-      "title": "Referenced Global Field",
-      "uid": "referenced_global_field",
-      "description": "A global field that will be referenced by another global field",
-      "schema": [
-        {
-          "display_name": "Title",
-          "uid": "title",
-          "data_type": "text",
-          "field_metadata": {
-            "_default": true,
-            "version": 0
-          },
-          "multiple": false,
-          "mandatory": true,
-          "unique": true,
-          "non_localizable": false
-        },
-        {
-          "display_name": "Description",
-          "uid": "description",
-          "data_type": "text",
-          "field_metadata": {
-            "description": "A description field",
-            "multiline": false,
-            "version": 0
-          },
-          "multiple": false,
-          "mandatory": false,
-          "unique": false,
-          "non_localizable": false
-        }
-      ],
-      "created_at": "2026-03-13T02:34:23.232Z",
-      "updated_at": "2026-03-13T02:34:23.232Z",
-      "_version": 1,
-      "inbuilt_class": false,
-      "last_activity": {},
-      "maintain_revisions": true
-    },
-    {
-      "title": "First Async",
-      "uid": "first",
-      "description": "",
-      "schema": [
-        {
-          "display_name": "Name",
-          "uid": "name",
-          "data_type": "text",
-          "multiple": false,
-          "mandatory": false,
-          "unique": false,
-          "non_localizable": false
-        },
-        {
-          "display_name": "Rich text editor",
-          "uid": "description",
-          "data_type": "text",
-          "field_metadata": {
-            "allow_rich_text": true,
-            "description": "",
-            "multili
-
Passed0.29s
-
✅ Test001_Should_Create_Referenced_Global_Field
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/global_fields
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 677
-Content-Type: application/json
-
Request Body
{"global_field": {"title":"Referenced Global Field","uid":"referenced_global_field","description":"A global field that will be referenced by another global field","schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"true","allow_rich_text":false,"multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true},{"display_name":"Description","uid":"description","data_type":"text","field_metadata":{"allow_rich_text":false,"description":"A description field","multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/global_fields' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 677' \
-  -H 'Content-Type: application/json' \
-  -d '{"global_field": {"title":"Referenced Global Field","uid":"referenced_global_field","description":"A global field that will be referenced by another global field","schema":[{"display_name":"Title","uid":"title","data_type":"text","field_metadata":{"_default":"true","allow_rich_text":false,"multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":true,"unique":true},{"display_name":"Description","uid":"description","data_type":"text","field_metadata":{"allow_rich_text":false,"description":"A description field","multiline":false,"version":0,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false}]}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:23 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-api_version: 3.2
-x-contentstack-organization: blt8d282118e2094bb8
-X-Request-ID: 35d77aef-1d73-473f-8eb9-9c14647ce3bd
-x-runtime: 33
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 786
-
Response Body -
{
-  "notice": "Global Field created successfully.",
-  "global_field": {
-    "title": "Referenced Global Field",
-    "uid": "referenced_global_field",
-    "description": "A global field that will be referenced by another global field",
-    "schema": [
-      {
-        "display_name": "Title",
-        "uid": "title",
-        "data_type": "text",
-        "field_metadata": {
-          "_default": true,
-          "version": 0
-        },
-        "multiple": false,
-        "mandatory": true,
-        "unique": true,
-        "non_localizable": false
-      },
-      {
-        "display_name": "Description",
-        "uid": "description",
-        "data_type": "text",
-        "field_metadata": {
-          "description": "A description field",
-          "multiline": false,
-          "version": 0
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      }
-    ],
-    "created_at": "2026-03-13T02:34:23.232Z",
-    "updated_at": "2026-03-13T02:34:23.232Z",
-    "_version": 1,
-    "inbuilt_class": false,
-    "last_activity": {},
-    "maintain_revisions": true
-  }
-}
-
Passed0.31s
-
✅ Test005_Should_Update_Nested_Global_Field
-

HTTP Transactions

-
- -
PUThttps://api.contentstack.io/v3/global_fields/nested_global_field_test
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 925
-Content-Type: application/json
-
Request Body
{"global_field": {"title":"Updated Nested Global Field","uid":"nested_global_field_test","description":"Updated description for nested global field","schema":[{"display_name":"Single Line Textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"reference_to":"referenced_global_field","multiple":false,"mandatory":false,"unique":false,"non_localizable":false,"display_name":"Global Field Reference","uid":"global_field_reference","data_type":"global_field","field_metadata":{"allow_rich_text":false,"description":"Reference to another global field","multiline":false,"version":0,"markdown":false,"ref_multiple":false}}],"global_field_refs":[{"uid":"referenced_global_field","occurrence_count":1,"isChild":true,"paths":["schema.1"]}]}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/global_fields/nested_global_field_test' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 925' \
-  -H 'Content-Type: application/json' \
-  -d '{"global_field": {"title":"Updated Nested Global Field","uid":"nested_global_field_test","description":"Updated description for nested global field","schema":[{"display_name":"Single Line Textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"reference_to":"referenced_global_field","multiple":false,"mandatory":false,"unique":false,"non_localizable":false,"display_name":"Global Field Reference","uid":"global_field_reference","data_type":"global_field","field_metadata":{"allow_rich_text":false,"description":"Reference to another global field","multiline":false,"version":0,"markdown":false,"ref_multiple":false}}],"global_field_refs":[{"uid":"referenced_global_field","occurrence_count":1,"isChild":true,"paths":["schema.1"]}]}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:24 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-api_version: 3.2
-x-contentstack-organization: blt8d282118e2094bb8
-X-Request-ID: ea361dff-7dbe-4395-a60b-9e9a7b1a97a4
-x-runtime: 41
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 887
-
Response Body -
{
-  "notice": "Global Field updated successfully.",
-  "global_field": {
-    "title": "Updated Nested Global Field",
-    "uid": "nested_global_field_test",
-    "description": "Updated description for nested global field",
-    "schema": [
-      {
-        "display_name": "Single Line Textbox",
-        "uid": "single_line",
-        "data_type": "text",
-        "field_metadata": {
-          "default_value": "",
-          "description": "",
-          "multiline": false,
-          "version": 3
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "reference_to": "referenced_global_field",
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false,
-        "display_name": "Global Field Reference",
-        "uid": "global_field_reference",
-        "data_type": "global_field",
-        "field_metadata": {
-          "description": "Reference to another global field"
-        }
-      }
-    ],
-    "created_at": "2026-03-13T02:34:23.554Z",
-    "updated_at": "2026-03-13T02:34:24.517Z",
-    "_version": 2,
-    "inbuilt_class": false,
-    "last_activity": {},
-    "maintain_revisions": true
-  }
-}
-
Passed0.32s
-
✅ Test008_Should_Delete_Nested_Global_Field
-

HTTP Transactions

-
- -
DELETEhttps://api.contentstack.io/v3/global_fields/nested_global_field_test
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/global_fields/nested_global_field_test' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:25 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-api_version: 3.2
-x-contentstack-organization: blt8d282118e2094bb8
-X-Request-ID: 154638d4-7a59-462f-b886-b17080443734
-x-runtime: 35
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 47
-
Response Body -
{
-  "notice": "Global Field deleted successfully."
-}
-
Passed0.40s
-
✅ Test002_Should_Create_Nested_Global_Field
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/global_fields
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Content-Length: 916
-Content-Type: application/json
-
Request Body
{"global_field": {"title":"Nested Global Field Test","uid":"nested_global_field_test","description":"Test nested global field for .NET SDK","schema":[{"display_name":"Single Line Textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"reference_to":"referenced_global_field","multiple":false,"mandatory":false,"unique":false,"non_localizable":false,"display_name":"Global Field Reference","uid":"global_field_reference","data_type":"global_field","field_metadata":{"allow_rich_text":false,"description":"Reference to another global field","multiline":false,"version":0,"markdown":false,"ref_multiple":false}}],"global_field_refs":[{"uid":"referenced_global_field","occurrence_count":1,"isChild":true,"paths":["schema.1"]}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/global_fields' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Content-Length: 916' \
-  -H 'Content-Type: application/json' \
-  -d '{"global_field": {"title":"Nested Global Field Test","uid":"nested_global_field_test","description":"Test nested global field for .NET SDK","schema":[{"display_name":"Single Line Textbox","uid":"single_line","data_type":"text","field_metadata":{"default_value":"","allow_rich_text":false,"description":"","multiline":false,"version":3,"markdown":false,"ref_multiple":false},"multiple":false,"mandatory":false,"unique":false},{"reference_to":"referenced_global_field","multiple":false,"mandatory":false,"unique":false,"non_localizable":false,"display_name":"Global Field Reference","uid":"global_field_reference","data_type":"global_field","field_metadata":{"allow_rich_text":false,"description":"Reference to another global field","multiline":false,"version":0,"markdown":false,"ref_multiple":false}}],"global_field_refs":[{"uid":"referenced_global_field","occurrence_count":1,"isChild":true,"paths":["schema.1"]}]}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:23 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-api_version: 3.2
-x-contentstack-organization: blt8d282118e2094bb8
-X-Request-ID: 8051c9be-c8e4-458e-86c6-94fb7fd99c2c
-x-runtime: 38
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 878
-
Response Body -
{
-  "notice": "Global Field created successfully.",
-  "global_field": {
-    "title": "Nested Global Field Test",
-    "uid": "nested_global_field_test",
-    "description": "Test nested global field for .NET SDK",
-    "schema": [
-      {
-        "display_name": "Single Line Textbox",
-        "uid": "single_line",
-        "data_type": "text",
-        "field_metadata": {
-          "default_value": "",
-          "description": "",
-          "multiline": false,
-          "version": 3
-        },
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false
-      },
-      {
-        "reference_to": "referenced_global_field",
-        "multiple": false,
-        "mandatory": false,
-        "unique": false,
-        "non_localizable": false,
-        "display_name": "Global Field Reference",
-        "uid": "global_field_reference",
-        "data_type": "global_field",
-        "field_metadata": {
-          "description": "Reference to another global field"
-        }
-      }
-    ],
-    "created_at": "2026-03-13T02:34:23.554Z",
-    "updated_at": "2026-03-13T02:34:23.554Z",
-    "_version": 1,
-    "inbuilt_class": false,
-    "last_activity": {},
-    "maintain_revisions": true
-  }
-}
-
Passed0.35s
-
-
- -
-
-
- - Contentstack015_BulkOperationTest -
-
- 15 passed · - 0 failed · - 0 skipped · - 15 total -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Test NameStatusDuration
-
✅ Test006_Should_Update_Items_In_Release
-

Assertions

-
-
IsTrue(availableEntriesCount)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsFalse(availableReleaseUid)
-
-
Expected:
False
-
Actual:
False
-
-
-
-
IsNotNull(bulkUpdateResponse)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsTrue(bulkUpdateSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(jobStatusResponse)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsTrue(jobStatusSuccess)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 141
-Content-Type: application/json
-
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 141' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:17 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 38ms
-X-Request-ID: a90839f9-97cd-4655-a5a1-5103860f9f1b
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 125
-Content-Type: application/json
-
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 125' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:18 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 1da81029-1983-4627-bb6b-5c9fbccf129b
-x-response-time: 20
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 99
-
Response Body -
{
-  "error_message": "Failed to create release.",
-  "error_code": 141,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:18 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 29ms
-X-Request-ID: aa00198a-07a5-441c-bbd2-3010d422b784
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "entries": [
-    {
-      "title": "Fifth Entry",
-      "locale": "en-us",
-      "uid": "bltea8de9954232a811",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:54.424Z",
-      "updated_at": "2026-03-13T02:34:54.424Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Fourth Entry",
-      "locale": "en-us",
-      "uid": "bltcf848f8307e5274e",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:53.904Z",
-      "updated_at": "2026-03-13T02:34:53.904Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Third Entry",
-      "locale": "en-us",
-      "uid": "bltde2ee96ab086afd4",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.969Z",
-      "updated_at": "2026-03-13T02:34:52.969Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Second Entry",
-      "locale": "en-us",
-      "uid": "blt54d8f022b0365903",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.555Z",
-      "updated_at": "2026-03-13T02:34:52.555Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "First Entry",
-      "locale": "en-us",
-      "uid": "blt6bbe453e9c7393a7",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.181Z",
-      "updated_at": "2026-03-13T02:34:52.181Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    }
-  ]
-}
-
- -
GEThttps://api.contentstack.io/v3/releases/bulk_test_release
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/releases/bulk_test_release' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:18 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 4c00530f-9869-4af8-ac0b-a8378b2e39e6
-x-response-time: 17
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 95
-
Response Body -
{
-  "error_message": "Release does not exist.",
-  "error_code": 141,
-  "errors": {
-    "uid": [
-      "is not valid."
-    ]
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:19 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 22a870e2-b062-4740-b74b-9f7ab7a8c620
-x-response-time: 20
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 351
-
Response Body -
{
-  "releases": [
-    {
-      "name": "bulk_test_release",
-      "description": "Release for testing bulk operations",
-      "locked": false,
-      "uid": "blt96bf5c25ce2bbcf4",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:34:48.078Z",
-      "updated_at": "2026-03-13T02:34:48.078Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 4
-    }
-  ]
-}
-
- -
PUThttps://api.contentstack.io/v3/bulk/release/update_items
-
Request Headers
api_key: blt1bca31da998b57a9
-bulk_version: 2.0
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 264
-Content-Type: application/json
-
Request Body
{"items":[{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","content_type_uid":"bulk_test_content_type","version":1,"locale":"en-us","title":"First Entry"}],"release":"blt96bf5c25ce2bbcf4","action":"publish","locale":["en-us"],"reference":false}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/bulk/release/update_items' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'bulk_version: 2.0' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 264' \
-  -H 'Content-Type: application/json' \
-  -d '{"items":[{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","content_type_uid":"bulk_test_content_type","version":1,"locale":"en-us","title":"First Entry"}],"release":"blt96bf5c25ce2bbcf4","action":"publish","locale":["en-us"],"reference":false}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:19 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 3ad8bcb2-5f07-4167-9dac-87d1ffc9f8cb
-x-response-time: 37
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 131
-
Response Body -
{
-  "job_id": "cs-40623d8f-ccf9-48b0-86f0-f611aa6251fd",
-  "notice": "Your update release items to latest version request is in progress."
-}
-
- -
GEThttps://api.contentstack.io/v3/bulk/jobs/cs-40623d8f-ccf9-48b0-86f0-f611aa6251fd
-
Request Headers
api_key: blt1bca31da998b57a9
-bulk_version: 2.0
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/bulk/jobs/cs-40623d8f-ccf9-48b0-86f0-f611aa6251fd' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'bulk_version: 2.0' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:21 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 59a86c20-36e0-489a-947c-84830d6b92c7
-x-response-time: 13
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 858
-
Response Body -
{
-  "job": {
-    "batch_metadata": {
-      "batch_size": 100,
-      "batch_count": 1,
-      "completed_batches": [],
-      "failed_batches": [
-        1
-      ]
-    },
-    "summary": {
-      "top_level_items": 1,
-      "failed": 0,
-      "skipped": 0,
-      "success": 0,
-      "total_processed": 0
-    },
-    "_id": "cs-40623d8f-ccf9-48b0-86f0-f611aa6251fd",
-    "action": "update_release_items",
-    "status": 4,
-    "api_key": "blt1bca31da998b57a9",
-    "org_uid": "blt8d282118e2094bb8",
-    "body": {
-      "items": [
-        {
-          "uid": "blt6bbe453e9c7393a7",
-          "content_type": "bulk_test_content_type",
-          "content_type_uid": "bulk_test_content_type",
-          "version": 1,
-          "locale": "en-us",
-          "title": "First Entry"
-        }
-      ],
-      "release": "blt96bf5c25ce2bbcf4",
-      "action": "publish",
-      "locale": [
-        "en-us"
-      ],
-      "reference": false,
-      "branch": "main",
-      "master_locale": "en-us",
-      "isAMV2AccessEnabled": false
-    },
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:19.366Z",
-    "updated_at": "2026-03-13T02:35:19.485Z",
-    "__v": 0,
-    "error": null
-  }
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioUpdateItemsInRelease
ContentTypebulk_test_content_type
ReleaseUidblt96bf5c25ce2bbcf4
-
Passed4.20s
-
✅ Test000b_Should_Create_Publishing_Rule_For_Workflow_Stage2
-

Assertions

-
-
IsFalse(WorkflowUid)
-
-
Expected:
False
-
Actual:
False
-
-
-
-
IsFalse(WorkflowStage2Uid)
-
-
Expected:
False
-
Actual:
False
-
-
-
-
IsFalse(EnvironmentUid)
-
-
Expected:
False
-
Actual:
False
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 141
-Content-Type: application/json
-
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 141' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:48 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 26ms
-X-Request-ID: b0c0babd-de31-4824-92c7-92c00d18a337
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 125
-Content-Type: application/json
-
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 125' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:49 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: bf63b28b-eb24-47e7-813b-d83e7d26dcc1
-x-response-time: 21
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 99
-
Response Body -
{
-  "error_message": "Failed to create release.",
-  "error_code": 141,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/workflows/publishing_rules
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/workflows/publishing_rules' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:49 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 17ms
-X-Request-ID: bd1f9880-4ef0-4aa7-9492-a8094772a55b
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "publishing_rules": [
-    {
-      "_id": "69b377c7b1f4aa932f26010d",
-      "uid": "bltf9fdca958702c9ea",
-      "api_key": "blt1bca31da998b57a9",
-      "workflow": "blt65a03f0bf9cc4344",
-      "workflow_stage": "blt1f5e68c65d8abfe6",
-      "actions": [],
-      "environment": "blte3eca71ae4290097",
-      "branches": [
-        "main"
-      ],
-      "content_types": [
-        "$all"
-      ],
-      "locales": [
-        "en-us"
-      ],
-      "approvers": {
-        "users": [],
-        "roles": []
-      },
-      "status": true,
-      "disable_approver_publishing": false,
-      "created_at": "2026-03-13T02:34:47.482Z",
-      "created_by": "blt1930fc55e5669df9"
-    }
-  ]
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioCreatePublishingRuleForWorkflowStage2
WorkflowUidblt65a03f0bf9cc4344
EnvironmentUidblte3eca71ae4290097
-
Passed0.86s
-
✅ Test004b_Should_Perform_Bulk_UnPublish_With_ApiVersion_3_2_With_SkipWorkflowStage_And_Approvals
-

Assertions

-
-
IsFalse(EnvironmentUid)
-
-
Expected:
False
-
Actual:
False
-
-
-
-
IsTrue(availableEntriesCount)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(bulkUnpublishResponse)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsTrue(bulkUnpublishSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
AreEqual(statusCode)
-
-
Expected:
OK
-
Actual:
OK
-
-
-
-
IsNotNull(responseJson)
-
-
Expected:
NotNull
-
Actual:
{
-  "notice": "Your bulk unpublish request is in progress. Please check publish queue for more details.",
-  "job_id": "beeb9e4d-f1ad-4a41-8920-4e5ab4b822bd"
-}
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 141
-Content-Type: application/json
-
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 141' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:12 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 28ms
-X-Request-ID: 412dba74-f79c-4fd9-b3a0-6d41d8836f46
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 125
-Content-Type: application/json
-
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 125' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:12 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: b50ab83e-5546-4153-8341-06dac5cb711b
-x-response-time: 18
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 99
-
Response Body -
{
-  "error_message": "Failed to create release.",
-  "error_code": 141,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:12 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 35ms
-X-Request-ID: 44f66a63-9072-4815-8e62-eedc9a6a8e89
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "entries": [
-    {
-      "title": "Fifth Entry",
-      "locale": "en-us",
-      "uid": "bltea8de9954232a811",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:54.424Z",
-      "updated_at": "2026-03-13T02:34:54.424Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Fourth Entry",
-      "locale": "en-us",
-      "uid": "bltcf848f8307e5274e",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:53.904Z",
-      "updated_at": "2026-03-13T02:34:53.904Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Third Entry",
-      "locale": "en-us",
-      "uid": "bltde2ee96ab086afd4",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.969Z",
-      "updated_at": "2026-03-13T02:34:52.969Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Second Entry",
-      "locale": "en-us",
-      "uid": "blt54d8f022b0365903",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.555Z",
-      "updated_at": "2026-03-13T02:34:52.555Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "First Entry",
-      "locale": "en-us",
-      "uid": "blt6bbe453e9c7393a7",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.181Z",
-      "updated_at": "2026-03-13T02:34:52.181Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    }
-  ]
-}
-
- -
POSThttps://api.contentstack.io/v3/bulk/unpublish?skip_workflow_stage_check=true&approvals=true
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-api_version: 3.2
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 630
-Content-Type: application/json
-
Request Body
{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":true}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/bulk/unpublish?skip_workflow_stage_check=true&approvals=true' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'api_version: 3.2' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 630' \
-  -H 'Content-Type: application/json' \
-  -d '{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":true}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:13 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-x-runtime: 133
-x-contentstack-organization: blt8d282118e2094bb8
-x-cluster: 
-x-ratelimit-limit: 200, 200
-x-ratelimit-remaining: 198, 198
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-Content-Type: application/json; charset=utf-8
-Content-Length: 149
-
Response Body -
{
-  "notice": "Your bulk unpublish request is in progress. Please check publish queue for more details.",
-  "job_id": "beeb9e4d-f1ad-4a41-8920-4e5ab4b822bd"
-}
-
- Test Context - - - - - - - - -
TestScenarioBulkUnpublishApiVersion32WithSkipWorkflowStageAndApprovals
ContentTypebulk_test_content_type
-
Passed1.30s
-
✅ Test005_Should_Perform_Bulk_Release_Operations
-

Assertions

-
-
IsTrue(availableEntriesCount)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsFalse(availableReleaseUid)
-
-
Expected:
False
-
Actual:
False
-
-
-
-
IsNotNull(releaseResponse)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsTrue(releaseAddItemsSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(job_id)
-
-
Expected:
NotNull
-
Actual:
cs-46c70266-6ea9-4b24-9257-0ddc4e4c9ada
-
-
-
-
IsNotNull(jobStatusResponse)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsTrue(jobStatusSuccess)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 141
-Content-Type: application/json
-
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 141' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:13 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 24ms
-X-Request-ID: 85d8c063-ef53-4688-876f-8693cb449d7a
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 125
-Content-Type: application/json
-
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 125' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:13 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 16042aeb-4a65-46e5-9081-110946a9cd03
-x-response-time: 197
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 99
-
Response Body -
{
-  "error_message": "Failed to create release.",
-  "error_code": 141,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:14 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 34ms
-X-Request-ID: 1d31d2eb-ad9d-43b0-acd1-e0fe028ae923
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "entries": [
-    {
-      "title": "Fifth Entry",
-      "locale": "en-us",
-      "uid": "bltea8de9954232a811",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:54.424Z",
-      "updated_at": "2026-03-13T02:34:54.424Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Fourth Entry",
-      "locale": "en-us",
-      "uid": "bltcf848f8307e5274e",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:53.904Z",
-      "updated_at": "2026-03-13T02:34:53.904Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Third Entry",
-      "locale": "en-us",
-      "uid": "bltde2ee96ab086afd4",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.969Z",
-      "updated_at": "2026-03-13T02:34:52.969Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Second Entry",
-      "locale": "en-us",
-      "uid": "blt54d8f022b0365903",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.555Z",
-      "updated_at": "2026-03-13T02:34:52.555Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "First Entry",
-      "locale": "en-us",
-      "uid": "blt6bbe453e9c7393a7",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.181Z",
-      "updated_at": "2026-03-13T02:34:52.181Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    }
-  ]
-}
-
- -
GEThttps://api.contentstack.io/v3/releases/bulk_test_release
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/releases/bulk_test_release' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:14 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: ecacc4c4-6f19-4eab-a894-460174601b50
-x-response-time: 24
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 95
-
Response Body -
{
-  "error_message": "Release does not exist.",
-  "error_code": 141,
-  "errors": {
-    "uid": [
-      "is not valid."
-    ]
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:14 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 6e0e6e14-c38c-4a58-af92-af992346feb5
-x-response-time: 29
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 351
-
Response Body -
{
-  "releases": [
-    {
-      "name": "bulk_test_release",
-      "description": "Release for testing bulk operations",
-      "locked": false,
-      "uid": "blt96bf5c25ce2bbcf4",
-      "sys_locked": false,
-      "sys_version": 2,
-      "status": [],
-      "created_at": "2026-03-13T02:34:48.078Z",
-      "updated_at": "2026-03-13T02:34:48.078Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "items_count": 0
-    }
-  ]
-}
-
- -
POSThttps://api.contentstack.io/v3/bulk/release/items
-
Request Headers
api_key: blt1bca31da998b57a9
-bulk_version: 2.0
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 761
-Content-Type: application/json
-
Request Body
{"items":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","content_type_uid":"bulk_test_content_type","version":1,"locale":"en-us","title":"Fifth Entry"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","content_type_uid":"bulk_test_content_type","version":1,"locale":"en-us","title":"Fourth Entry"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","content_type_uid":"bulk_test_content_type","version":1,"locale":"en-us","title":"Third Entry"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","content_type_uid":"bulk_test_content_type","version":1,"locale":"en-us","title":"Second Entry"}],"release":"blt96bf5c25ce2bbcf4","action":"publish","locale":["en-us"],"reference":false}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/bulk/release/items' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'bulk_version: 2.0' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 761' \
-  -H 'Content-Type: application/json' \
-  -d '{"items":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","content_type_uid":"bulk_test_content_type","version":1,"locale":"en-us","title":"Fifth Entry"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","content_type_uid":"bulk_test_content_type","version":1,"locale":"en-us","title":"Fourth Entry"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","content_type_uid":"bulk_test_content_type","version":1,"locale":"en-us","title":"Third Entry"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","content_type_uid":"bulk_test_content_type","version":1,"locale":"en-us","title":"Second Entry"}],"release":"blt96bf5c25ce2bbcf4","action":"publish","locale":["en-us"],"reference":false}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:15 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 4cbbc5f9-7275-4f6e-baba-eb089d43cb93
-x-response-time: 40
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 107
-
Response Body -
{
-  "job_id": "cs-46c70266-6ea9-4b24-9257-0ddc4e4c9ada",
-  "notice": "Your add to release request is in progress."
-}
-
- -
GEThttps://api.contentstack.io/v3/bulk/jobs/cs-46c70266-6ea9-4b24-9257-0ddc4e4c9ada
-
Request Headers
api_key: blt1bca31da998b57a9
-bulk_version: 2.0
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/bulk/jobs/cs-46c70266-6ea9-4b24-9257-0ddc4e4c9ada' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'bulk_version: 2.0' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:17 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 149f0439-b1ea-4776-a670-f9268f75b110
-x-response-time: 13
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 1371
-
Response Body -
{
-  "job": {
-    "batch_metadata": {
-      "batch_size": 500,
-      "batch_count": 1,
-      "completed_batches": [
-        1
-      ],
-      "failed_batches": []
-    },
-    "summary": {
-      "top_level_items": 4,
-      "failed": 0,
-      "skipped": 0,
-      "success": 4,
-      "total_processed": 4
-    },
-    "_id": "cs-46c70266-6ea9-4b24-9257-0ddc4e4c9ada",
-    "action": "bulk_add_to_release",
-    "status": 4,
-    "api_key": "blt1bca31da998b57a9",
-    "org_uid": "blt8d282118e2094bb8",
-    "body": {
-      "items": [
-        {
-          "uid": "bltea8de9954232a811",
-          "content_type": "bulk_test_content_type",
-          "content_type_uid": "bulk_test_content_type",
-          "version": 1,
-          "locale": "en-us",
-          "title": "Fifth Entry"
-        },
-        {
-          "uid": "bltcf848f8307e5274e",
-          "content_type": "bulk_test_content_type",
-          "content_type_uid": "bulk_test_content_type",
-          "version": 1,
-          "locale": "en-us",
-          "title": "Fourth Entry"
-        },
-        {
-          "uid": "bltde2ee96ab086afd4",
-          "content_type": "bulk_test_content_type",
-          "content_type_uid": "bulk_test_content_type",
-          "version": 1,
-          "locale": "en-us",
-          "title": "Third Entry"
-        },
-        {
-          "uid": "blt54d8f022b0365903",
-          "content_type": "bulk_test_content_type",
-          "content_type_uid": "bulk_test_content_type",
-          "version": 1,
-          "locale": "en-us",
-          "title": "Second Entry"
-        }
-      ],
-      "release": "blt96bf5c25ce2bbcf4",
-      "action": "publish",
-      "locale": [
-        "en-us"
-      ],
-      "reference": false,
-      "branch": "main",
-      "master_locale": "en-us",
-      "maxNRPDepth": 10,
-      "isAMV2AccessEnabled": false
-    },
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:15.165Z",
-    "updated_at": "2026-03-13T02:35:15.416Z",
-    "__v": 0,
-    "error": null
-  }
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioBulkReleaseOperations
ContentTypebulk_test_content_type
ReleaseUidblt96bf5c25ce2bbcf4
-
Passed4.28s
-
✅ Test000a_Should_Create_Workflow_With_Two_Stages
-

Assertions

-
-
IsNotNull(Stage1Uid)
-
-
Expected:
NotNull
-
Actual:
bltebf2a5cf47670f4e
-
-
-
-
IsNotNull(Stage2Uid)
-
-
Expected:
NotNull
-
Actual:
blt1f5e68c65d8abfe6
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:46 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 22ms
-X-Request-ID: 68f71e8b-62bf-4675-8711-2f2813966b17
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "environments": []
-}
-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 141
-Content-Type: application/json
-
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 141' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:46 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 32ms
-X-Request-ID: 72508e8a-83c2-4fa9-9593-d9250bca89b3
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Environment created successfully.",
-  "environment": {
-    "name": "bulk_test_env",
-    "urls": [
-      {
-        "url": "https://bulk-test-environment.example.com",
-        "locale": "en-us"
-      }
-    ],
-    "uid": "blte3eca71ae4290097",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:34:46.311Z",
-    "updated_at": "2026-03-13T02:34:46.311Z",
-    "ACL": {},
-    "_version": 1
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/workflows
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/workflows' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:46 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 17ms
-X-Request-ID: 0b0a44c9-edb6-4633-82b2-c1fecc269250
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "workflows": []
-}
-
- -
POSThttps://api.contentstack.io/v3/workflows
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 631
-Content-Type: application/json
-
Request Body
{"workflow": {"name":"workflow_test","enabled":true,"branches":["main"],"content_types":["$all"],"admin_users":{"users":[]},"workflow_stages":[{"color":"#fe5cfb","SYS_ACL":{"roles":{"uids":[]},"users":{"uids":["$all"]},"others":{}},"next_available_stages":["$all"],"allStages":true,"allUsers":true,"specificStages":false,"specificUsers":false,"entry_lock":"$none","name":"New stage 1"},{"color":"#3688bf","SYS_ACL":{"roles":{"uids":[]},"users":{"uids":["$all"]},"others":{}},"next_available_stages":["$all"],"allStages":true,"allUsers":true,"specificStages":false,"specificUsers":false,"entry_lock":"$none","name":"New stage 2"}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/workflows' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 631' \
-  -H 'Content-Type: application/json' \
-  -d '{"workflow": {"name":"workflow_test","enabled":true,"branches":["main"],"content_types":["$all"],"admin_users":{"users":[]},"workflow_stages":[{"color":"#fe5cfb","SYS_ACL":{"roles":{"uids":[]},"users":{"uids":["$all"]},"others":{}},"next_available_stages":["$all"],"allStages":true,"allUsers":true,"specificStages":false,"specificUsers":false,"entry_lock":"$none","name":"New stage 1"},{"color":"#3688bf","SYS_ACL":{"roles":{"uids":[]},"users":{"uids":["$all"]},"others":{}},"next_available_stages":["$all"],"allStages":true,"allUsers":true,"specificStages":false,"specificUsers":false,"entry_lock":"$none","name":"New stage 2"}]}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:46 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 27ms
-X-Request-ID: 91e84ae1-abc9-47bc-b7e7-20d9d25bb307
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Workflow created successfully.",
-  "workflow": {
-    "name": "workflow_test",
-    "enabled": true,
-    "branches": [
-      "main"
-    ],
-    "content_types": [
-      "$all"
-    ],
-    "admin_users": {
-      "users": [],
-      "roles": [
-        "blt1b7926e68b1b14b2"
-      ]
-    },
-    "workflow_stages": [
-      {
-        "color": "#fe5cfb",
-        "SYS_ACL": {
-          "others": {
-            "read": true,
-            "write": true,
-            "transit": false
-          },
-          "users": {
-            "uids": [
-              "$all"
-            ],
-            "read": true,
-            "write": true,
-            "transit": true
-          },
-          "roles": {
-            "uids": [],
-            "read": true,
-            "write": true,
-            "transit": true
-          }
-        },
-        "next_available_stages": [
-          "$all"
-        ],
-        "allStages": true,
-        "allUsers": true,
-        "specificStages": false,
-        "specificUsers": false,
-        "name": "New stage 1",
-        "uid": "bltebf2a5cf47670f4e"
-      },
-      {
-        "color": "#3688bf",
-        "SYS_ACL": {
-          "others": {
-            "read": true,
-            "write": true,
-            "transit": false
-          },
-          "users": {
-            "uids": [
-              "$all"
-            ],
-            "read": true,
-            "write": true,
-            "transit": true
-          },
-          "roles": {
-            "uids": [],
-            "read": true,
-            "write": true,
-            "transit": true
-          }
-        },
-        "next_available_stages": [
-          "$all"
-        ],
-        "allStages": true,
-        "allUsers": true,
-        "specificStages": false,
-        "specificUsers": false,
-        "name": "New stage 2",
-        "uid": "blt1f5e68c65d8abfe6"
-      }
-    ],
-    "createWorkflow": true,
-    "uid": "blt65a03f0bf9cc4344",
-    "api_key": "blt1bca31da998b57a9",
-    "org_uid": "blt8d282118e2094bb8",
-    "created_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:34:46.881Z",
-    "deleted_at": false
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/workflows/publishing_rules
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/workflows/publishing_rules' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:47 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 14ms
-X-Request-ID: 939c76c5-fa7a-4a2f-8b3d-e771e88f8f43
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "publishing_rules": []
-}
-
- -
POSThttps://api.contentstack.io/v3/workflows/publishing_rules
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 280
-Content-Type: application/json
-
Request Body
{"publishing_rule": {"workflow":"blt65a03f0bf9cc4344","actions":[],"branches":["main"],"content_types":["$all"],"locales":["en-us"],"environment":"blte3eca71ae4290097","approvers":{"users":[],"roles":[]},"workflow_stage":"blt1f5e68c65d8abfe6","disable_approver_publishing":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/workflows/publishing_rules' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 280' \
-  -H 'Content-Type: application/json' \
-  -d '{"publishing_rule": {"workflow":"blt65a03f0bf9cc4344","actions":[],"branches":["main"],"content_types":["$all"],"locales":["en-us"],"environment":"blte3eca71ae4290097","approvers":{"users":[],"roles":[]},"workflow_stage":"blt1f5e68c65d8abfe6","disable_approver_publishing":false}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:47 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 52ms
-X-Request-ID: 14edef34-3c86-4751-95c9-55ff160ba533
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Publish rule created successfully.",
-  "publishing_rule": {
-    "uid": "bltf9fdca958702c9ea",
-    "api_key": "blt1bca31da998b57a9",
-    "workflow": "blt65a03f0bf9cc4344",
-    "workflow_stage": "blt1f5e68c65d8abfe6",
-    "actions": [],
-    "environment": "blte3eca71ae4290097",
-    "branches": [
-      "main"
-    ],
-    "content_types": [
-      "$all"
-    ],
-    "locales": [
-      "en-us"
-    ],
-    "approvers": {
-      "users": [],
-      "roles": []
-    },
-    "status": true,
-    "disable_approver_publishing": false,
-    "created_at": "2026-03-13T02:34:47.482Z",
-    "created_by": "blt1930fc55e5669df9",
-    "_id": "69b377c7b1f4aa932f26010d"
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 141
-Content-Type: application/json
-
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 141' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:47 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 27ms
-X-Request-ID: c54fd311-d3fb-4a33-8200-cf015f7f0806
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 125
-Content-Type: application/json
-
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 125' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:48 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: aa82ffa8-6022-4159-b3e3-624828dec805
-x-response-time: 38
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 441
-
Response Body -
{
-  "notice": "Release created successfully.",
-  "release": {
-    "name": "bulk_test_release",
-    "description": "Release for testing bulk operations",
-    "locked": false,
-    "archived": false,
-    "uid": "blt96bf5c25ce2bbcf4",
-    "_branches": [
-      "main"
-    ],
-    "items": [],
-    "sys_locked": false,
-    "sys_version": 2,
-    "status": [],
-    "created_at": "2026-03-13T02:34:48.078Z",
-    "updated_at": "2026-03-13T02:34:48.078Z",
-    "deleted_at": false,
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/workflows
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/workflows' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:48 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 16ms
-X-Request-ID: d639c3ef-488f-45f9-9ea1-1f504bc827d1
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "workflows": [
-    {
-      "name": "workflow_test",
-      "uid": "blt65a03f0bf9cc4344",
-      "org_uid": "blt8d282118e2094bb8",
-      "api_key": "blt1bca31da998b57a9",
-      "branches": [
-        "main"
-      ],
-      "content_types": [
-        "$all"
-      ],
-      "workflow_stages": [
-        {
-          "name": "New stage 1",
-          "uid": "bltebf2a5cf47670f4e",
-          "color": "#fe5cfb",
-          "SYS_ACL": {
-            "others": {
-              "read": true,
-              "write": true,
-              "transit": false
-            },
-            "users": {
-              "uids": [
-                "$all"
-              ],
-              "read": true,
-              "write": true,
-              "transit": true
-            },
-            "roles": {
-              "uids": [],
-              "read": true,
-              "write": true,
-              "transit": true
-            }
-          },
-          "next_available_stages": [
-            "$all"
-          ]
-        },
-        {
-          "name": "New stage 2",
-          "uid": "blt1f5e68c65d8abfe6",
-          "color": "#3688bf",
-          "SYS_ACL": {
-            "others": {
-              "read": true,
-              "write": true,
-              "transit": false
-            },
-            "users": {
-              "uids": [
-                "$all"
-              ],
-              "read": true,
-              "write": true,
-              "transit": true
-            },
-            "roles": {
-              "uids": [],
-              "read": true,
-              "write": true,
-              "transit": true
-            }
-          },
-          "next_available_stages": [
-            "$all"
-          ]
-        }
-      ],
-      "admin_users": {
-        "users": [],
-        "roles": [
-          "blt1b7926e68b1b14b2"
-        ]
-      },
-      "enabled": true,
-      "created_at": "2026-03-13T02:34:46.881Z",
-      "created_by": "blt1930fc55e5669df9",
-      "deleted_at": false
-    }
-  ]
-}
-
- Test Context - - - - -
TestScenarioCreateWorkflowWithTwoStages
-
Passed0.99s
-
✅ Test003_Should_Perform_Bulk_Publish_Operation
-

Assertions

-
-
IsTrue(availableEntriesCount)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 141
-Content-Type: application/json
-
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 141' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:56 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 23ms
-X-Request-ID: 6a67f6d9-9c8b-464d-8bf0-09a62fe28b75
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 125
-Content-Type: application/json
-
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 125' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:56 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 7a4b4266-fbdc-4b38-a85f-7e0bc050effd
-x-response-time: 24
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 99
-
Response Body -
{
-  "error_message": "Failed to create release.",
-  "error_code": 141,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:04 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 31ms
-X-Request-ID: ce77fb62-dea4-45f9-a55a-f0556b7d319f
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "entries": [
-    {
-      "title": "Fifth Entry",
-      "locale": "en-us",
-      "uid": "bltea8de9954232a811",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:54.424Z",
-      "updated_at": "2026-03-13T02:34:54.424Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Fourth Entry",
-      "locale": "en-us",
-      "uid": "bltcf848f8307e5274e",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:53.904Z",
-      "updated_at": "2026-03-13T02:34:53.904Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Third Entry",
-      "locale": "en-us",
-      "uid": "bltde2ee96ab086afd4",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.969Z",
-      "updated_at": "2026-03-13T02:34:52.969Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Second Entry",
-      "locale": "en-us",
-      "uid": "blt54d8f022b0365903",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.555Z",
-      "updated_at": "2026-03-13T02:34:52.555Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "First Entry",
-      "locale": "en-us",
-      "uid": "blt6bbe453e9c7393a7",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.181Z",
-      "updated_at": "2026-03-13T02:34:52.181Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    }
-  ]
-}
-
- -
GEThttps://api.contentstack.io/v3/environments/bulk_test_environment
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments/bulk_test_environment' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:04 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 10ms
-X-Request-ID: 51ae25d7-2baf-45a5-ade5-3834c7090bd7
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment was not found. Please try again.",
-  "error_code": 248
-}
-
- -
GEThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:05 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 23ms
-X-Request-ID: edf5da20-c329-4006-bd2e-d8bc8a45c365
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "environments": [
-    {
-      "name": "bulk_test_env",
-      "urls": [
-        {
-          "url": "https://bulk-test-environment.example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blte3eca71ae4290097",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:46.311Z",
-      "updated_at": "2026-03-13T02:34:46.311Z",
-      "ACL": [],
-      "_version": 1
-    }
-  ]
-}
-
- -
POSThttps://api.contentstack.io/v3/bulk/publish?skip_workflow_stage_check=true&approvals=true
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 631
-Content-Type: application/json
-
Request Body
{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":false}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/bulk/publish?skip_workflow_stage_check=true&approvals=true' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 631' \
-  -H 'Content-Type: application/json' \
-  -d '{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":false}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:05 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 50
-x-ratelimit-remaining: 49
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 47ms
-X-Request-ID: 5a9af422ab8eb3323747c01b6ca976a7
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Entries cannot be published since they do not satisfy the required publish rules.",
-  "error_code": 141
-}
-
- Test Context - - - - - - - - -
TestScenarioBulkPublishOperation
ContentTypebulk_test_content_type
-
Passed9.20s
-
✅ Test003a_Should_Perform_Bulk_Publish_With_SkipWorkflowStage_And_Approvals
-

Assertions

-
-
IsFalse(EnvironmentUid)
-
-
Expected:
False
-
Actual:
False
-
-
-
-
IsTrue(availableEntriesCount)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
AreEqual(statusCode)
-
-
Expected:
422
-
Actual:
422
-
-
-
-
AreEqual(errorCode)
-
-
Expected:
141
-
Actual:
141
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 141
-Content-Type: application/json
-
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 141' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:07 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 27ms
-X-Request-ID: 5988eeca-ad65-499d-82d9-dea622a6692e
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 125
-Content-Type: application/json
-
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 125' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:08 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: f75386a4-d8ca-4184-ac85-72e528a8d503
-x-response-time: 66
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 99
-
Response Body -
{
-  "error_message": "Failed to create release.",
-  "error_code": 141,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:08 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 32ms
-X-Request-ID: 0b57506e-2e33-4f1b-b0f9-c30089988d62
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "entries": [
-    {
-      "title": "Fifth Entry",
-      "locale": "en-us",
-      "uid": "bltea8de9954232a811",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:54.424Z",
-      "updated_at": "2026-03-13T02:34:54.424Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Fourth Entry",
-      "locale": "en-us",
-      "uid": "bltcf848f8307e5274e",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:53.904Z",
-      "updated_at": "2026-03-13T02:34:53.904Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Third Entry",
-      "locale": "en-us",
-      "uid": "bltde2ee96ab086afd4",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.969Z",
-      "updated_at": "2026-03-13T02:34:52.969Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Second Entry",
-      "locale": "en-us",
-      "uid": "blt54d8f022b0365903",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.555Z",
-      "updated_at": "2026-03-13T02:34:52.555Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "First Entry",
-      "locale": "en-us",
-      "uid": "blt6bbe453e9c7393a7",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.181Z",
-      "updated_at": "2026-03-13T02:34:52.181Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    }
-  ]
-}
-
- -
POSThttps://api.contentstack.io/v3/bulk/publish?skip_workflow_stage_check=true&approvals=true
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 630
-Content-Type: application/json
-
Request Body
{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":true}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/bulk/publish?skip_workflow_stage_check=true&approvals=true' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 630' \
-  -H 'Content-Type: application/json' \
-  -d '{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":true}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:08 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 50
-x-ratelimit-remaining: 49
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 40ms
-X-Request-ID: bd6623bb11945461131e2aa1565d5400
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Entries cannot be published since they do not satisfy the required publish rules.",
-  "error_code": 141
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioBulkPublishWithSkipWorkflowStageAndApprovals
ContentTypebulk_test_content_type
EnvironmentUidblte3eca71ae4290097
-
Passed1.45s
-
✅ Test009_Should_Cleanup_Test_Resources
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 141
-Content-Type: application/json
-
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 141' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:24 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 25ms
-X-Request-ID: d2534d3b-1cfa-4422-9914-e4d91a27f937
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 125
-Content-Type: application/json
-
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 125' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:24 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 5bb1b8df-1caa-40b5-8328-f508c308b1c7
-x-response-time: 23
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 99
-
Response Body -
{
-  "error_message": "Failed to create release.",
-  "error_code": 141,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/content_types/bulk_test_content_type
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/content_types/bulk_test_content_type' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:24 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 181ms
-X-Request-ID: 20135d35-0e5f-4120-8b6e-297a87a56f97
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Content Type deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/workflows/publishing_rules/bltf9fdca958702c9ea
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/workflows/publishing_rules/bltf9fdca958702c9ea' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:25 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 50ms
-X-Request-ID: 13c8e30b-6ce0-4d75-920e-710890d32174
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Publish rule deleted successfully."
-}
-
- -
DELETEhttps://api.contentstack.io/v3/workflows/blt65a03f0bf9cc4344
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/workflows/blt65a03f0bf9cc4344' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:25 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 84ms
-X-Request-ID: a9e14772-3ee3-424c-8ea0-ee5e2ae59926
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Workflow deleted successfully.",
-  "workflow": {
-    "_id": "69b377c61fb61466b15129a4",
-    "name": "workflow_test",
-    "uid": "blt65a03f0bf9cc4344",
-    "org_uid": "blt8d282118e2094bb8",
-    "api_key": "blt1bca31da998b57a9",
-    "branches": [
-      "main"
-    ],
-    "content_types": [
-      "$all"
-    ],
-    "workflow_stages": [
-      {
-        "name": "New stage 1",
-        "uid": "bltebf2a5cf47670f4e",
-        "color": "#fe5cfb",
-        "SYS_ACL": {
-          "others": {
-            "read": true,
-            "write": true,
-            "transit": false
-          },
-          "users": {
-            "uids": [
-              "$all"
-            ],
-            "read": true,
-            "write": true,
-            "transit": true
-          },
-          "roles": {
-            "uids": [],
-            "read": true,
-            "write": true,
-            "transit": true
-          }
-        },
-        "next_available_stages": [
-          "$all"
-        ]
-      },
-      {
-        "name": "New stage 2",
-        "uid": "blt1f5e68c65d8abfe6",
-        "color": "#3688bf",
-        "SYS_ACL": {
-          "others": {
-            "read": true,
-            "write": true,
-            "transit": false
-          },
-          "users": {
-            "uids": [
-              "$all"
-            ],
-            "read": true,
-            "write": true,
-            "transit": true
-          },
-          "roles": {
-            "uids": [],
-            "read": true,
-            "write": true,
-            "transit": true
-          }
-        },
-        "next_available_stages": [
-          "$all"
-        ]
-      }
-    ],
-    "admin_users": {
-      "users": [],
-      "roles": [
-        "blt1b7926e68b1b14b2"
-      ]
-    },
-    "enabled": true,
-    "created_at": "2026-03-13T02:34:46.881Z",
-    "created_by": "blt1930fc55e5669df9",
-    "deleted_at": "2026-03-13T02:35:25.437Z",
-    "deleted_by": "blt1930fc55e5669df9"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/releases/bulk_test_release
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/releases/bulk_test_release' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:25 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 1cf5550a-c817-44ae-9ed9-5998e9bb9fd9
-x-response-time: 28
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 95
-
Response Body -
{
-  "error_message": "Release does not exist.",
-  "error_code": 141,
-  "errors": {
-    "uid": [
-      "is not valid."
-    ]
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/environments/bulk_test_environment
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/environments/bulk_test_environment' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:26 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 10ms
-X-Request-ID: ed1b4050-47f4-4677-9a5f-cd2a8e6fe58b
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment was not found. Please try again.",
-  "error_code": 248
-}
-
- Test Context - - - - - - - - -
TestScenarioCleanupTestResources
ContentTypebulk_test_content_type
-
Passed2.29s
-
✅ Test004a_Should_Perform_Bulk_UnPublish_With_SkipWorkflowStage_And_Approvals
-

Assertions

-
-
IsFalse(EnvironmentUid)
-
-
Expected:
False
-
Actual:
False
-
-
-
-
IsTrue(availableEntriesCount)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
AreEqual(statusCode)
-
-
Expected:
422
-
Actual:
422
-
-
-
-
IsTrue(errorCode)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 141
-Content-Type: application/json
-
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 141' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:09 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 23ms
-X-Request-ID: aa7c142b-6cf6-4f38-b282-ace7ebd007ba
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 125
-Content-Type: application/json
-
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 125' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:09 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 7aca5792-43d1-44f5-80ea-442b178c15c1
-x-response-time: 161
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 99
-
Response Body -
{
-  "error_message": "Failed to create release.",
-  "error_code": 141,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:10 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 31ms
-X-Request-ID: 78a63196-8953-4af1-82c7-4e4168443af1
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "entries": [
-    {
-      "title": "Fifth Entry",
-      "locale": "en-us",
-      "uid": "bltea8de9954232a811",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:54.424Z",
-      "updated_at": "2026-03-13T02:34:54.424Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Fourth Entry",
-      "locale": "en-us",
-      "uid": "bltcf848f8307e5274e",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:53.904Z",
-      "updated_at": "2026-03-13T02:34:53.904Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Third Entry",
-      "locale": "en-us",
-      "uid": "bltde2ee96ab086afd4",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.969Z",
-      "updated_at": "2026-03-13T02:34:52.969Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Second Entry",
-      "locale": "en-us",
-      "uid": "blt54d8f022b0365903",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.555Z",
-      "updated_at": "2026-03-13T02:34:52.555Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "First Entry",
-      "locale": "en-us",
-      "uid": "blt6bbe453e9c7393a7",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.181Z",
-      "updated_at": "2026-03-13T02:34:52.181Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    }
-  ]
-}
-
- -
POSThttps://api.contentstack.io/v3/bulk/unpublish?approvals=true
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 630
-Content-Type: application/json
-
Request Body
{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":true}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/bulk/unpublish?approvals=true' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 630' \
-  -H 'Content-Type: application/json' \
-  -d '{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":true}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:10 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 50
-x-ratelimit-remaining: 49
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 54ms
-X-Request-ID: 56dc725bf77d661704ad7d8c79df50ab
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Some entries cannot be published since they do not satisfy the required publish rules."
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioBulkUnpublishWithSkipWorkflowStageAndApprovals
ContentTypebulk_test_content_type
EnvironmentUidblte3eca71ae4290097
-
Passed1.59s
-
✅ Test004_Should_Perform_Bulk_Unpublish_Operation
-

Assertions

-
-
IsTrue(availableEntriesCount)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(bulkUnpublishResponse)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsTrue(bulkUnpublishSuccess)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 141
-Content-Type: application/json
-
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 141' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:05 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 25ms
-X-Request-ID: 31148b36-b30c-48a9-b62f-b8febc41ac8a
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 125
-Content-Type: application/json
-
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 125' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:06 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 9e91d322-b6b8-43b4-9812-d95462036850
-x-response-time: 29
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 99
-
Response Body -
{
-  "error_message": "Failed to create release.",
-  "error_code": 141,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:06 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 33ms
-X-Request-ID: d6581567-8b43-4218-b7e1-08798f8505d5
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "entries": [
-    {
-      "title": "Fifth Entry",
-      "locale": "en-us",
-      "uid": "bltea8de9954232a811",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:54.424Z",
-      "updated_at": "2026-03-13T02:34:54.424Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Fourth Entry",
-      "locale": "en-us",
-      "uid": "bltcf848f8307e5274e",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:53.904Z",
-      "updated_at": "2026-03-13T02:34:53.904Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Third Entry",
-      "locale": "en-us",
-      "uid": "bltde2ee96ab086afd4",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.969Z",
-      "updated_at": "2026-03-13T02:34:52.969Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Second Entry",
-      "locale": "en-us",
-      "uid": "blt54d8f022b0365903",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.555Z",
-      "updated_at": "2026-03-13T02:34:52.555Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "First Entry",
-      "locale": "en-us",
-      "uid": "blt6bbe453e9c7393a7",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.181Z",
-      "updated_at": "2026-03-13T02:34:52.181Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    }
-  ]
-}
-
- -
GEThttps://api.contentstack.io/v3/environments/bulk_test_environment
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments/bulk_test_environment' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:06 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 10ms
-X-Request-ID: 1234f535-2d7c-4484-ab4f-5716511beb47
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment was not found. Please try again.",
-  "error_code": 248
-}
-
- -
GEThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:07 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 20ms
-X-Request-ID: 4ca8e5b2-0224-46dc-a0a0-8fdb95e3b3da
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "environments": [
-    {
-      "name": "bulk_test_env",
-      "urls": [
-        {
-          "url": "https://bulk-test-environment.example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blte3eca71ae4290097",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:46.311Z",
-      "updated_at": "2026-03-13T02:34:46.311Z",
-      "ACL": [],
-      "_version": 1
-    }
-  ]
-}
-
- -
POSThttps://api.contentstack.io/v3/bulk/unpublish?skip_workflow_stage_check=true&approvals=true
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 631
-Content-Type: application/json
-
Request Body
{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":false}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/bulk/unpublish?skip_workflow_stage_check=true&approvals=true' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 631' \
-  -H 'Content-Type: application/json' \
-  -d '{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":false}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:07 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 50
-x-ratelimit-remaining: 49
-newpublishflow: false
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 66ms
-X-Request-ID: f26591e98f396d30eacb749dffa56234
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Your bulk unpublish request is in progress. Please check publish queue for more details."
-}
-
- Test Context - - - - - - - - -
TestScenarioBulkUnpublishOperation
ContentTypebulk_test_content_type
-
Passed1.89s
-
✅ Test001_Should_Create_Content_Type_With_Title_Field
-

Assertions

-
-
IsNotNull(createContentTypeResponse)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsTrue(contentTypeCreateSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(content_type)
-
-
Expected:
NotNull
-
Actual:
{
-  "created_at": "2026-03-13T02:34:50.953Z",
-  "updated_at": "2026-03-13T02:34:50.953Z",
-  "title": "bulk_test_content_type",
-  "uid": "bulk_test_content_type",
-  "_version": 1,
-  "inbuilt_class": false,
-  "schema": [
-    {
-      "display_name": "Title",
-      "uid": "title",
-      "data_type": "text",
-      "multiple": false,
-      "mandatory": true,
-      "unique": false,
-      "non_localizable": false
-    }
-  ],
-  "last_activity": {},
-  "maintain_revisions": true,
-  "description": "",
-  "DEFAULT_ACL": {
-    "others": {
-      "read": false,
-      "create": false
-    },
-    "users": [
-      {
-        "read": true,
-        "sub_acl": {
-          "read": true
-        },
-        "uid": "blt99daf6332b695c38"
-      }
-    ],
-    "management_token": {
-      "read": true
-    }
-  },
-  "SYS_ACL": {
-    "roles": [],
-    "others": {
-      "read": false,
-      "create": false,
-      "update": false,
-      "delete": false,
-      "sub_acl": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "publish": false
-      }
-    }
-  },
-  "options": {
-    "title": "title",
-    "is_page": false,
-    "singleton": false
-  },
-  "abilities": {
-    "get_one_object": true,
-    "get_all_objects": true,
-    "create_object": true,
-    "update_object": true,
-    "delete_object": true,
-    "delete_all_objects": true
-  }
-}
-
-
-
-
AreEqual(contentTypeUid)
-
-
Expected:
bulk_test_content_type
-
Actual:
bulk_test_content_type
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 141
-Content-Type: application/json
-
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 141' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:49 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 26ms
-X-Request-ID: b09fa6ca-6e67-40f8-ab78-9d3a13099be2
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 125
-Content-Type: application/json
-
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 125' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:50 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: cc76028e-5af6-4bba-9adc-1e7f282b8c58
-x-response-time: 20
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 99
-
Response Body -
{
-  "error_message": "Failed to create release.",
-  "error_code": 141,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 141
-Content-Type: application/json
-
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 141' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:50 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 24ms
-X-Request-ID: 0cdfee79-53df-43d3-8466-538be79e6925
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 125
-Content-Type: application/json
-
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 125' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:50 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 7fc7aa63-599c-4bc0-9fca-9d536304b865
-x-response-time: 24
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 99
-
Response Body -
{
-  "error_message": "Failed to create release.",
-  "error_code": 141,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/content_types
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 201
-Content-Type: application/json
-
Request Body
{"content_type": {"title":"bulk_test_content_type","uid":"bulk_test_content_type","schema":[{"display_name":"Title","uid":"title","data_type":"text","multiple":false,"mandatory":true,"unique":false}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/content_types' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 201' \
-  -H 'Content-Type: application/json' \
-  -d '{"content_type": {"title":"bulk_test_content_type","uid":"bulk_test_content_type","schema":[{"display_name":"Title","uid":"title","data_type":"text","multiple":false,"mandatory":true,"unique":false}]}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:50 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 44ms
-X-Request-ID: 8549de51-5c62-4a16-89e1-0ff440d910e7
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Content Type created successfully.",
-  "content_type": {
-    "created_at": "2026-03-13T02:34:50.953Z",
-    "updated_at": "2026-03-13T02:34:50.953Z",
-    "title": "bulk_test_content_type",
-    "uid": "bulk_test_content_type",
-    "_version": 1,
-    "inbuilt_class": false,
-    "schema": [
-      {
-        "display_name": "Title",
-        "uid": "title",
-        "data_type": "text",
-        "multiple": false,
-        "mandatory": true,
-        "unique": false,
-        "non_localizable": false
-      }
-    ],
-    "last_activity": {},
-    "maintain_revisions": true,
-    "description": "",
-    "DEFAULT_ACL": {
-      "others": {
-        "read": false,
-        "create": false
-      },
-      "users": [
-        {
-          "read": true,
-          "sub_acl": {
-            "read": true
-          },
-          "uid": "blt99daf6332b695c38"
-        }
-      ],
-      "management_token": {
-        "read": true
-      }
-    },
-    "SYS_ACL": {
-      "roles": [],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "options": {
-      "title": "title",
-      "is_page": false,
-      "singleton": false
-    },
-    "abilities": {
-      "get_one_object": true,
-      "get_all_objects": true,
-      "create_object": true,
-      "update_object": true,
-      "delete_object": true,
-      "delete_all_objects": true
-    }
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioCreateContentTypeWithTitleField
ContentTypebulk_test_content_type
-
Passed1.64s
-
✅ Test007_Should_Perform_Bulk_Delete_Operation
-

Assertions

-
-
IsTrue(availableEntriesCount)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(deleteDetails)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.BulkDeleteDetails
-
-
-
-
IsTrue(deleteDetailsEntriesCount)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 141
-Content-Type: application/json
-
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 141' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:21 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 24ms
-X-Request-ID: f9fceafb-4e59-401d-b024-8e7f4fe57c72
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 125
-Content-Type: application/json
-
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 125' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:22 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: dd6d3669-059c-4a9b-953c-573515d87399
-x-response-time: 20
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 99
-
Response Body -
{
-  "error_message": "Failed to create release.",
-  "error_code": 141,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:22 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 31ms
-X-Request-ID: 5643d3ca-73be-4e72-b208-b473802fba14
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "entries": [
-    {
-      "title": "Fifth Entry",
-      "locale": "en-us",
-      "uid": "bltea8de9954232a811",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:54.424Z",
-      "updated_at": "2026-03-13T02:34:54.424Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Fourth Entry",
-      "locale": "en-us",
-      "uid": "bltcf848f8307e5274e",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:53.904Z",
-      "updated_at": "2026-03-13T02:34:53.904Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Third Entry",
-      "locale": "en-us",
-      "uid": "bltde2ee96ab086afd4",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.969Z",
-      "updated_at": "2026-03-13T02:34:52.969Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Second Entry",
-      "locale": "en-us",
-      "uid": "blt54d8f022b0365903",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.555Z",
-      "updated_at": "2026-03-13T02:34:52.555Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "First Entry",
-      "locale": "en-us",
-      "uid": "blt6bbe453e9c7393a7",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.181Z",
-      "updated_at": "2026-03-13T02:34:52.181Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    }
-  ]
-}
-
- Test Context - - - - - - - - -
TestScenarioBulkDeleteOperation
ContentTypebulk_test_content_type
-
Passed0.89s
-
✅ Test003b_Should_Perform_Bulk_Publish_With_ApiVersion_3_2_With_SkipWorkflowStage_And_Approvals
-

Assertions

-
-
IsFalse(EnvironmentUid)
-
-
Expected:
False
-
Actual:
False
-
-
-
-
IsTrue(availableEntriesCount)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(bulkPublishResponse)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsTrue(bulkPublishSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
AreEqual(statusCode)
-
-
Expected:
OK
-
Actual:
OK
-
-
-
-
IsNotNull(responseJson)
-
-
Expected:
NotNull
-
Actual:
{
-  "notice": "Your bulk publish request is in progress. Please check publish queue for more details.",
-  "job_id": "c02b0c77-ab42-4634-9d02-bd74bfdaa815"
-}
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 141
-Content-Type: application/json
-
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 141' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:10 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 27ms
-X-Request-ID: feb27c5d-e902-4e8e-a427-d7484456b45c
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 125
-Content-Type: application/json
-
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 125' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:11 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 1f2cb8e4-4038-4702-a27d-f7eda66dc0a3
-x-response-time: 20
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 99
-
Response Body -
{
-  "error_message": "Failed to create release.",
-  "error_code": 141,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:11 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 33ms
-X-Request-ID: 333a9244-7159-47fe-9bf8-af84e5578824
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "entries": [
-    {
-      "title": "Fifth Entry",
-      "locale": "en-us",
-      "uid": "bltea8de9954232a811",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:54.424Z",
-      "updated_at": "2026-03-13T02:34:54.424Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Fourth Entry",
-      "locale": "en-us",
-      "uid": "bltcf848f8307e5274e",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:53.904Z",
-      "updated_at": "2026-03-13T02:34:53.904Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Third Entry",
-      "locale": "en-us",
-      "uid": "bltde2ee96ab086afd4",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.969Z",
-      "updated_at": "2026-03-13T02:34:52.969Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Second Entry",
-      "locale": "en-us",
-      "uid": "blt54d8f022b0365903",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.555Z",
-      "updated_at": "2026-03-13T02:34:52.555Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "First Entry",
-      "locale": "en-us",
-      "uid": "blt6bbe453e9c7393a7",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.181Z",
-      "updated_at": "2026-03-13T02:34:52.181Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    }
-  ]
-}
-
- -
POSThttps://api.contentstack.io/v3/bulk/publish?skip_workflow_stage_check=true&approvals=true
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-api_version: 3.2
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 630
-Content-Type: application/json
-
Request Body
{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":true}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/bulk/publish?skip_workflow_stage_check=true&approvals=true' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'api_version: 3.2' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 630' \
-  -H 'Content-Type: application/json' \
-  -d '{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","version":1,"locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","version":1,"locale":"en-us"}],"locales":["en-us"],"environments":["blte3eca71ae4290097"],"rules":null,"scheduled_at":null,"publish_with_reference":true}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:11 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-x-runtime: 40
-x-contentstack-organization: blt8d282118e2094bb8
-x-cluster: 
-x-ratelimit-limit: 200, 200
-x-ratelimit-remaining: 198, 198
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-Content-Type: application/json; charset=utf-8
-Content-Length: 147
-
Response Body -
{
-  "notice": "Your bulk publish request is in progress. Please check publish queue for more details.",
-  "job_id": "c02b0c77-ab42-4634-9d02-bd74bfdaa815"
-}
-
- Test Context - - - - - - - - -
TestScenarioBulkPublishApiVersion32WithSkipWorkflowStageAndApprovals
ContentTypebulk_test_content_type
-
Passed1.33s
-
✅ Test008_Should_Perform_Bulk_Workflow_Operations
-

Assertions

-
-
IsTrue(availableEntriesCount)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 141
-Content-Type: application/json
-
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 141' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:22 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 25ms
-X-Request-ID: f4d68706-9897-4ac0-80af-80dd40cd708f
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 125
-Content-Type: application/json
-
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 125' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:23 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: a7bc3087-ee24-4d09-ac14-f824235947b3
-x-response-time: 27
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 99
-
Response Body -
{
-  "error_message": "Failed to create release.",
-  "error_code": 141,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:23 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 32ms
-X-Request-ID: fe773417-b909-4682-af1c-598746943778
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "entries": [
-    {
-      "title": "Fifth Entry",
-      "locale": "en-us",
-      "uid": "bltea8de9954232a811",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:54.424Z",
-      "updated_at": "2026-03-13T02:34:54.424Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Fourth Entry",
-      "locale": "en-us",
-      "uid": "bltcf848f8307e5274e",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:53.904Z",
-      "updated_at": "2026-03-13T02:34:53.904Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Third Entry",
-      "locale": "en-us",
-      "uid": "bltde2ee96ab086afd4",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.969Z",
-      "updated_at": "2026-03-13T02:34:52.969Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "Second Entry",
-      "locale": "en-us",
-      "uid": "blt54d8f022b0365903",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.555Z",
-      "updated_at": "2026-03-13T02:34:52.555Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    },
-    {
-      "title": "First Entry",
-      "locale": "en-us",
-      "uid": "blt6bbe453e9c7393a7",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:52.181Z",
-      "updated_at": "2026-03-13T02:34:52.181Z",
-      "ACL": {},
-      "_version": 1,
-      "tags": [],
-      "_in_progress": false
-    }
-  ]
-}
-
- -
POSThttps://api.contentstack.io/v3/bulk/workflow
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 571
-Content-Type: application/json
-
Request Body
{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","locale":"en-us"}],"workflow":{"uid":"blt1f5e68c65d8abfe6","comment":"Bulk workflow update test","due_date":"Fri Mar 20 2026","notify":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/bulk/workflow' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 571' \
-  -H 'Content-Type: application/json' \
-  -d '{"entries":[{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","locale":"en-us"}],"workflow":{"uid":"blt1f5e68c65d8abfe6","comment":"Bulk workflow update test","due_date":"Fri Mar 20 2026","notify":false}}'
- -
-
-
412 Precondition Failed
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:23 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 50
-x-ratelimit-remaining: 49
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 19ms
-X-Request-ID: 973397d01251723e9c6ee7b7453854c6
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Stage Update Request Failed.",
-  "error_code": 366,
-  "errors": {
-    "workflow.workflow_stage": [
-      "is required"
-    ]
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioBulkWorkflowOperations
ContentTypebulk_test_content_type
-
Passed1.22s
-
✅ Test002_Should_Create_Five_Entries
-

Assertions

-
-
IsFalse(WorkflowUid)
-
-
Expected:
False
-
Actual:
False
-
-
-
-
IsFalse(WorkflowStage1Uid)
-
-
Expected:
False
-
Actual:
False
-
-
-
-
IsFalse(WorkflowStage2Uid)
-
-
Expected:
False
-
Actual:
False
-
-
-
-
IsNotNull(createEntryResponse)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsTrue(entryCreateSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(entry)
-
-
Expected:
NotNull
-
Actual:
{
-  "title": "First Entry",
-  "locale": "en-us",
-  "uid": "blt6bbe453e9c7393a7",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:34:52.181Z",
-  "updated_at": "2026-03-13T02:34:52.181Z",
-  "ACL": {},
-  "_version": 1,
-  "tags": [],
-  "_in_progress": false
-}
-
-
-
-
IsNotNull(entryUid)
-
-
Expected:
NotNull
-
Actual:
blt6bbe453e9c7393a7
-
-
-
-
IsNotNull(createEntryResponse)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsTrue(entryCreateSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(entry)
-
-
Expected:
NotNull
-
Actual:
{
-  "title": "Second Entry",
-  "locale": "en-us",
-  "uid": "blt54d8f022b0365903",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:34:52.555Z",
-  "updated_at": "2026-03-13T02:34:52.555Z",
-  "ACL": {},
-  "_version": 1,
-  "tags": [],
-  "_in_progress": false
-}
-
-
-
-
IsNotNull(entryUid)
-
-
Expected:
NotNull
-
Actual:
blt54d8f022b0365903
-
-
-
-
IsNotNull(createEntryResponse)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsTrue(entryCreateSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(entry)
-
-
Expected:
NotNull
-
Actual:
{
-  "title": "Third Entry",
-  "locale": "en-us",
-  "uid": "bltde2ee96ab086afd4",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:34:52.969Z",
-  "updated_at": "2026-03-13T02:34:52.969Z",
-  "ACL": {},
-  "_version": 1,
-  "tags": [],
-  "_in_progress": false
-}
-
-
-
-
IsNotNull(entryUid)
-
-
Expected:
NotNull
-
Actual:
bltde2ee96ab086afd4
-
-
-
-
IsNotNull(createEntryResponse)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsTrue(entryCreateSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(entry)
-
-
Expected:
NotNull
-
Actual:
{
-  "title": "Fourth Entry",
-  "locale": "en-us",
-  "uid": "bltcf848f8307e5274e",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:34:53.904Z",
-  "updated_at": "2026-03-13T02:34:53.904Z",
-  "ACL": {},
-  "_version": 1,
-  "tags": [],
-  "_in_progress": false
-}
-
-
-
-
IsNotNull(entryUid)
-
-
Expected:
NotNull
-
Actual:
bltcf848f8307e5274e
-
-
-
-
IsNotNull(createEntryResponse)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.ContentstackResponse
-
-
-
-
IsTrue(entryCreateSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(entry)
-
-
Expected:
NotNull
-
Actual:
{
-  "title": "Fifth Entry",
-  "locale": "en-us",
-  "uid": "bltea8de9954232a811",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:34:54.424Z",
-  "updated_at": "2026-03-13T02:34:54.424Z",
-  "ACL": {},
-  "_version": 1,
-  "tags": [],
-  "_in_progress": false
-}
-
-
-
-
IsNotNull(entryUid)
-
-
Expected:
NotNull
-
Actual:
bltea8de9954232a811
-
-
-
-
AreEqual(createdEntriesCount)
-
-
Expected:
5
-
Actual:
5
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 141
-Content-Type: application/json
-
Request Body
{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 141' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"bulk_test_env","urls":[{"url":"https://bulk-test-environment.example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:51 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 27ms
-X-Request-ID: 76582a58-cc4a-404e-95f4-6bb088f89905
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/releases
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 125
-Content-Type: application/json
-
Request Body
{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/releases' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 125' \
-  -H 'Content-Type: application/json' \
-  -d '{"release": {"name":"bulk_test_release","description":"Release for testing bulk operations","locked":false,"archived":false}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:51 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 1471a59b-6231-4654-ae23-627ffe087553
-x-response-time: 29
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 99
-
Response Body -
{
-  "error_message": "Failed to create release.",
-  "error_code": 141,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/content_types/bulk_test_content_type
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/content_types/bulk_test_content_type' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:51 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-surrogate-key: blt1bca31da998b57a9.content_types blt1bca31da998b57a9.content_types.bulk_test_content_type
-cache-tag: blt1bca31da998b57a9.content_types blt1bca31da998b57a9.content_types.bulk_test_content_type
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 24ms
-X-Request-ID: 365a9858-5316-4532-995a-6e6de1f76ed5
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "content_type": {
-    "created_at": "2026-03-13T02:34:50.953Z",
-    "updated_at": "2026-03-13T02:34:50.953Z",
-    "title": "bulk_test_content_type",
-    "uid": "bulk_test_content_type",
-    "_version": 1,
-    "inbuilt_class": false,
-    "schema": [
-      {
-        "display_name": "Title",
-        "uid": "title",
-        "data_type": "text",
-        "multiple": false,
-        "mandatory": true,
-        "unique": false,
-        "non_localizable": false
-      }
-    ],
-    "last_activity": {},
-    "maintain_revisions": true,
-    "description": "",
-    "DEFAULT_ACL": {
-      "others": {
-        "read": false,
-        "create": false
-      },
-      "users": [
-        {
-          "read": true,
-          "sub_acl": {
-            "read": true
-          },
-          "uid": "blt99daf6332b695c38"
-        }
-      ],
-      "management_token": {
-        "read": true
-      }
-    },
-    "SYS_ACL": {
-      "roles": [
-        {
-          "uid": "blt5f456b9cfa69b697",
-          "read": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true,
-            "publish": true
-          },
-          "update": true,
-          "delete": true
-        },
-        {
-          "uid": "bltd7ebbaea63551cf9",
-          "read": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true,
-            "publish": true
-          }
-        },
-        {
-          "uid": "blt1b7926e68b1b14b2",
-          "read": true,
-          "sub_acl": {
-            "create": true,
-            "read": true,
-            "update": true,
-            "delete": true,
-            "publish": true
-          },
-          "update": true,
-          "delete": true
-        }
-      ],
-      "others": {
-        "read": false,
-        "create": false,
-        "update": false,
-        "delete": false,
-        "sub_acl": {
-          "read": false,
-          "create": false,
-          "update": false,
-          "delete": false,
-          "publish": false
-        }
-      }
-    },
-    "options": {
-      "title": "title",
-      "is_page": false,
-      "singleton": false
-    },
-    "abilities": {
-      "get_one_object": true,
-      "get_all_objects": true,
-      "create_object": true,
-      "update_object": true,
-      "delete_object": true,
-      "delete_all_objects": true
-    }
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 34
-Content-Type: application/json
-
Request Body
{"entry": {"title":"First Entry"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 34' \
-  -H 'Content-Type: application/json' \
-  -d '{"entry": {"title":"First Entry"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:52 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 66ms
-X-Request-ID: bb6bb930-f96f-414b-b601-e16c2fba4849
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Entry created successfully.",
-  "entry": {
-    "title": "First Entry",
-    "locale": "en-us",
-    "uid": "blt6bbe453e9c7393a7",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:34:52.181Z",
-    "updated_at": "2026-03-13T02:34:52.181Z",
-    "ACL": {},
-    "_version": 1,
-    "tags": [],
-    "_in_progress": false
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 35
-Content-Type: application/json
-
Request Body
{"entry": {"title":"Second Entry"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 35' \
-  -H 'Content-Type: application/json' \
-  -d '{"entry": {"title":"Second Entry"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:52 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 75ms
-X-Request-ID: 81eef7fa-6f89-40bb-aadd-0927d10071eb
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Entry created successfully.",
-  "entry": {
-    "title": "Second Entry",
-    "locale": "en-us",
-    "uid": "blt54d8f022b0365903",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:34:52.555Z",
-    "updated_at": "2026-03-13T02:34:52.555Z",
-    "ACL": {},
-    "_version": 1,
-    "tags": [],
-    "_in_progress": false
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 34
-Content-Type: application/json
-
Request Body
{"entry": {"title":"Third Entry"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 34' \
-  -H 'Content-Type: application/json' \
-  -d '{"entry": {"title":"Third Entry"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:53 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 97
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 77ms
-X-Request-ID: 8ca61639-4ae6-408b-a161-7bb478caacf1
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Entry created successfully.",
-  "entry": {
-    "title": "Third Entry",
-    "locale": "en-us",
-    "uid": "bltde2ee96ab086afd4",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:34:52.969Z",
-    "updated_at": "2026-03-13T02:34:52.969Z",
-    "ACL": {},
-    "_version": 1,
-    "tags": [],
-    "_in_progress": false
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 35
-Content-Type: application/json
-
Request Body
{"entry": {"title":"Fourth Entry"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 35' \
-  -H 'Content-Type: application/json' \
-  -d '{"entry": {"title":"Fourth Entry"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:53 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 78ms
-X-Request-ID: c0a925e6-9633-4aae-bd33-1c62c9afcc56
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Entry created successfully.",
-  "entry": {
-    "title": "Fourth Entry",
-    "locale": "en-us",
-    "uid": "bltcf848f8307e5274e",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:34:53.904Z",
-    "updated_at": "2026-03-13T02:34:53.904Z",
-    "ACL": {},
-    "_version": 1,
-    "tags": [],
-    "_in_progress": false
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/content_types/bulk_test_content_type/entries
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 34
-Content-Type: application/json
-
Request Body
{"entry": {"title":"Fifth Entry"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/content_types/bulk_test_content_type/entries' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 34' \
-  -H 'Content-Type: application/json' \
-  -d '{"entry": {"title":"Fifth Entry"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:54 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 77ms
-X-Request-ID: 0f45d2f3-82e7-4efd-bd24-709f94a6845e
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Entry created successfully.",
-  "entry": {
-    "title": "Fifth Entry",
-    "locale": "en-us",
-    "uid": "bltea8de9954232a811",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:34:54.424Z",
-    "updated_at": "2026-03-13T02:34:54.424Z",
-    "ACL": {},
-    "_version": 1,
-    "tags": [],
-    "_in_progress": false
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/bulk/workflow
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 389
-Content-Type: application/json
-
Request Body
{"entries":[{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","locale":"en-us"}],"workflow":{"uid":"bltebf2a5cf47670f4e","comment":"Stage allotment for bulk tests","due_date":null,"notify":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/bulk/workflow' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 389' \
-  -H 'Content-Type: application/json' \
-  -d '{"entries":[{"uid":"blt6bbe453e9c7393a7","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"blt54d8f022b0365903","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"bltde2ee96ab086afd4","content_type":"bulk_test_content_type","locale":"en-us"}],"workflow":{"uid":"bltebf2a5cf47670f4e","comment":"Stage allotment for bulk tests","due_date":null,"notify":false}}'
- -
-
-
412 Precondition Failed
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:54 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 50
-x-ratelimit-remaining: 49
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 18ms
-X-Request-ID: 5be949037f6d00c0041eb854115c119c
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Stage Update Request Failed.",
-  "error_code": 366,
-  "errors": {
-    "workflow.workflow_stage": [
-      "is required"
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/bulk/workflow
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 302
-Content-Type: application/json
-
Request Body
{"entries":[{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","locale":"en-us"}],"workflow":{"uid":"blt1f5e68c65d8abfe6","comment":"Stage allotment for bulk tests","due_date":null,"notify":false}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/bulk/workflow' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 302' \
-  -H 'Content-Type: application/json' \
-  -d '{"entries":[{"uid":"bltcf848f8307e5274e","content_type":"bulk_test_content_type","locale":"en-us"},{"uid":"bltea8de9954232a811","content_type":"bulk_test_content_type","locale":"en-us"}],"workflow":{"uid":"blt1f5e68c65d8abfe6","comment":"Stage allotment for bulk tests","due_date":null,"notify":false}}'
- -
-
-
412 Precondition Failed
-
Response Headers
Date: Fri, 13 Mar 2026 02:34:56 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 50
-x-ratelimit-remaining: 49
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 15ms
-X-Request-ID: 0c0b91436ecf782adf20cad4ebacd41f
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Stage Update Request Failed.",
-  "error_code": 366,
-  "errors": {
-    "workflow.workflow_stage": [
-      "is required"
-    ]
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioCreateFiveEntries
ContentTypebulk_test_content_type
-
Passed5.41s
-
-
- -
-
-
- - Contentstack016_DeliveryTokenTest -
-
- 16 passed · - 0 failed · - 0 skipped · - 16 total -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Test NameStatusDuration
-
✅ Test004_Should_Fetch_Delivery_Token_Async
-

Assertions

-
-
IsTrue(CreateDeliveryTokenSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Response should contain token object)
-
-
Expected:
NotNull
-
Actual:
{
-  "name": "Test Delivery Token",
-  "description": "Integration test delivery token",
-  "scope": [
-    {
-      "environments": [
-        {
-          "name": "test_delivery_environment",
-          "urls": [
-            {
-              "url": "https://example.com",
-              "locale": "en-us"
-            }
-          ],
-          "app_user_object_uid": "system",
-          "uid": "bltf1a9311ed6120511",
-          "created_by": "blt1930fc55e5669df9",
-          "updated_by": "blt1930fc55e5669df9",
-          "created_at": "2026-03-13T02:35:26.376Z",
-          "updated_at": "2026-03-13T02:35:26.376Z",
-          "ACL": [],
-          "_version": 1,
-          "tags": []
-        }
-      ],
-      "module": "environment",
-      "acl": {
-        "read": true
-      },
-      "_metadata": {
-        "uid": "csf25200c6605fb7e8"
-      }
-    },
-    {
-      "module": "branch",
-      "acl": {
-        "read": true
-      },
-      "branches": [
-        "main"
-      ],
-      "_metadata": {
-        "uid": "csb134bdc2f78eb1bc"
-      }
-    }
-  ],
-  "uid": "blt17a7ec5c193a4c5b",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:35:31.937Z",
-  "updated_at": "2026-03-13T02:35:31.937Z",
-  "token": "csb66b227eeae95b423373cac1",
-  "type": "delivery"
-}
-
-
-
-
IsNotNull(Token should have UID)
-
-
Expected:
NotNull
-
Actual:
blt17a7ec5c193a4c5b
-
-
-
-
AreEqual(TokenName)
-
-
Expected:
Test Delivery Token
-
Actual:
Test Delivery Token
-
-
-
-
AreEqual(TokenDescription)
-
-
Expected:
Integration test delivery token
-
Actual:
Integration test delivery token
-
-
-
-
IsNotNull(Delivery token UID should not be null)
-
-
Expected:
NotNull
-
Actual:
blt17a7ec5c193a4c5b
-
-
-
-
IsTrue(AsyncFetchSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Response should contain token object)
-
-
Expected:
NotNull
-
Actual:
{
-  "name": "Test Delivery Token",
-  "description": "Integration test delivery token",
-  "scope": [
-    {
-      "environments": [
-        {
-          "name": "test_delivery_environment",
-          "urls": [
-            {
-              "url": "https://example.com",
-              "locale": "en-us"
-            }
-          ],
-          "app_user_object_uid": "system",
-          "uid": "bltf1a9311ed6120511",
-          "created_by": "blt1930fc55e5669df9",
-          "updated_by": "blt1930fc55e5669df9",
-          "created_at": "2026-03-13T02:35:26.376Z",
-          "updated_at": "2026-03-13T02:35:26.376Z",
-          "ACL": [],
-          "_version": 1,
-          "tags": []
-        }
-      ],
-      "module": "environment",
-      "acl": {
-        "read": true
-      },
-      "_metadata": {
-        "uid": "csf25200c6605fb7e8"
-      }
-    },
-    {
-      "module": "branch",
-      "acl": {
-        "read": true
-      },
-      "branches": [
-        "main"
-      ],
-      "_metadata": {
-        "uid": "csb134bdc2f78eb1bc"
-      }
-    }
-  ],
-  "uid": "blt17a7ec5c193a4c5b",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:35:31.937Z",
-  "updated_at": "2026-03-13T02:35:31.937Z",
-  "token": "csb66b227eeae95b423373cac1",
-  "type": "delivery"
-}
-
-
-
-
AreEqual(TokenUid)
-
-
Expected:
blt17a7ec5c193a4c5b
-
Actual:
blt17a7ec5c193a4c5b
-
-
-
-
IsNotNull(Token should have access token)
-
-
Expected:
NotNull
-
Actual:
csb66b227eeae95b423373cac1
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 131
-Content-Type: application/json
-
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 131' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:31 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 28ms
-X-Request-ID: 3cfa9937-7bd1-4a07-a9e8-dd3c0cbb9371
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 253
-Content-Type: application/json
-
Request Body
{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 253' \
-  -H 'Content-Type: application/json' \
-  -d '{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:31 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 97
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 49ms
-X-Request-ID: 0f720a3c-5e10-4fa3-a792-01195b054853
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token created successfully.",
-  "token": {
-    "name": "Test Delivery Token",
-    "description": "Integration test delivery token",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "csf25200c6605fb7e8"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "csb134bdc2f78eb1bc"
-        }
-      }
-    ],
-    "uid": "blt17a7ec5c193a4c5b",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:31.937Z",
-    "updated_at": "2026-03-13T02:35:31.937Z",
-    "token": "csb66b227eeae95b423373cac1",
-    "type": "delivery"
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/stacks/delivery_tokens/blt17a7ec5c193a4c5b
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt17a7ec5c193a4c5b' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:32 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 18ms
-X-Request-ID: f445c133-81e5-4329-ba89-07e89e95cb3e
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "token": {
-    "name": "Test Delivery Token",
-    "description": "Integration test delivery token",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "csf25200c6605fb7e8"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "csb134bdc2f78eb1bc"
-        }
-      }
-    ],
-    "uid": "blt17a7ec5c193a4c5b",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:31.937Z",
-    "updated_at": "2026-03-13T02:35:31.937Z",
-    "token": "csb66b227eeae95b423373cac1",
-    "type": "delivery"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blt17a7ec5c193a4c5b
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt17a7ec5c193a4c5b' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:32 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 66ms
-X-Request-ID: 6c8e776e-c1ac-427d-9291-0f89e7e90059
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token deleted successfully."
-}
-
- -
GEThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:32 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 21ms
-X-Request-ID: f9b7ad49-96ed-44a5-97bf-15c4249797a8
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "environments": [
-    {
-      "name": "test_delivery_environment",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "bltf1a9311ed6120511",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:26.376Z",
-      "updated_at": "2026-03-13T02:35:26.376Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "bulk_test_env",
-      "urls": [
-        {
-          "url": "https://bulk-test-environment.example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blte3eca71ae4290097",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:46.311Z",
-      "updated_at": "2026-03-13T02:34:46.311Z",
-      "ACL": [],
-      "_version": 1
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:33 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 10ms
-X-Request-ID: 01b6d2e7-a22a-4592-9c29-0cf1b1564abf
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment was not found. Please try again.",
-  "error_code": 248
-}
-
- Test Context - - - - - - - - - - - - - - - - -
TestScenarioTest004_Should_Fetch_Delivery_Token_Async
TestScenarioTest001_Should_Create_Delivery_Token
DeliveryTokenUidblt17a7ec5c193a4c5b
DeliveryTokenUidblt17a7ec5c193a4c5b
-
Passed1.81s
-
✅ Test006_Should_Update_Delivery_Token_Async
-

Assertions

-
-
IsTrue(CreateDeliveryTokenSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Response should contain token object)
-
-
Expected:
NotNull
-
Actual:
{
-  "name": "Test Delivery Token",
-  "description": "Integration test delivery token",
-  "scope": [
-    {
-      "environments": [
-        {
-          "name": "test_delivery_environment",
-          "urls": [
-            {
-              "url": "https://example.com",
-              "locale": "en-us"
-            }
-          ],
-          "app_user_object_uid": "system",
-          "uid": "bltf1a9311ed6120511",
-          "created_by": "blt1930fc55e5669df9",
-          "updated_by": "blt1930fc55e5669df9",
-          "created_at": "2026-03-13T02:35:26.376Z",
-          "updated_at": "2026-03-13T02:35:26.376Z",
-          "ACL": [],
-          "_version": 1,
-          "tags": []
-        }
-      ],
-      "module": "environment",
-      "acl": {
-        "read": true
-      },
-      "_metadata": {
-        "uid": "cs62c30e6d4a2001ab"
-      }
-    },
-    {
-      "module": "branch",
-      "acl": {
-        "read": true
-      },
-      "branches": [
-        "main"
-      ],
-      "_metadata": {
-        "uid": "cs18855b7133e3fe10"
-      }
-    }
-  ],
-  "uid": "blt1c0d644dfddc4dc1",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:35:35.569Z",
-  "updated_at": "2026-03-13T02:35:35.569Z",
-  "token": "cs0a747fd81b4a71af9e3cd2fa",
-  "type": "delivery"
-}
-
-
-
-
IsNotNull(Token should have UID)
-
-
Expected:
NotNull
-
Actual:
blt1c0d644dfddc4dc1
-
-
-
-
AreEqual(TokenName)
-
-
Expected:
Test Delivery Token
-
Actual:
Test Delivery Token
-
-
-
-
AreEqual(TokenDescription)
-
-
Expected:
Integration test delivery token
-
Actual:
Integration test delivery token
-
-
-
-
IsNotNull(Delivery token UID should not be null)
-
-
Expected:
NotNull
-
Actual:
blt1c0d644dfddc4dc1
-
-
-
-
IsTrue(AsyncUpdateSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Response should contain token object)
-
-
Expected:
NotNull
-
Actual:
{
-  "name": "Async Updated Test Delivery Token",
-  "description": "Async updated integration test delivery token",
-  "scope": [
-    {
-      "environments": [
-        {
-          "name": "test_delivery_environment",
-          "urls": [
-            {
-              "url": "https://example.com",
-              "locale": "en-us"
-            }
-          ],
-          "app_user_object_uid": "system",
-          "uid": "bltf1a9311ed6120511",
-          "created_by": "blt1930fc55e5669df9",
-          "updated_by": "blt1930fc55e5669df9",
-          "created_at": "2026-03-13T02:35:26.376Z",
-          "updated_at": "2026-03-13T02:35:26.376Z",
-          "ACL": [],
-          "_version": 1,
-          "tags": []
-        }
-      ],
-      "module": "environment",
-      "acl": {
-        "read": true
-      },
-      "_metadata": {
-        "uid": "cs472f440d8444b4b0"
-      }
-    },
-    {
-      "module": "branch",
-      "acl": {
-        "read": true
-      },
-      "branches": [
-        "main"
-      ],
-      "_metadata": {
-        "uid": "csa217e678d6f93c1e"
-      }
-    }
-  ],
-  "uid": "blt1c0d644dfddc4dc1",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:35:35.569Z",
-  "updated_at": "2026-03-13T02:35:35.895Z",
-  "token": "cs0a747fd81b4a71af9e3cd2fa",
-  "type": "delivery"
-}
-
-
-
-
AreEqual(TokenUid)
-
-
Expected:
blt1c0d644dfddc4dc1
-
Actual:
blt1c0d644dfddc4dc1
-
-
-
-
AreEqual(UpdatedTokenName)
-
-
Expected:
Async Updated Test Delivery Token
-
Actual:
Async Updated Test Delivery Token
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 131
-Content-Type: application/json
-
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 131' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:35 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 25ms
-X-Request-ID: e4d5565c-9a0c-446c-a367-bfeadd7eab52
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 253
-Content-Type: application/json
-
Request Body
{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 253' \
-  -H 'Content-Type: application/json' \
-  -d '{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:35 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 56ms
-X-Request-ID: 4848c744-34ca-45d4-b31f-9f4126bb6000
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token created successfully.",
-  "token": {
-    "name": "Test Delivery Token",
-    "description": "Integration test delivery token",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "cs62c30e6d4a2001ab"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "cs18855b7133e3fe10"
-        }
-      }
-    ],
-    "uid": "blt1c0d644dfddc4dc1",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:35.569Z",
-    "updated_at": "2026-03-13T02:35:35.569Z",
-    "token": "cs0a747fd81b4a71af9e3cd2fa",
-    "type": "delivery"
-  }
-}
-
- -
PUThttps://api.contentstack.io/v3/stacks/delivery_tokens/blt1c0d644dfddc4dc1
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 281
-Content-Type: application/json
-
Request Body
{"token": {"name":"Async Updated Test Delivery Token","description":"Async updated integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt1c0d644dfddc4dc1' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 281' \
-  -H 'Content-Type: application/json' \
-  -d '{"token": {"name":"Async Updated Test Delivery Token","description":"Async updated integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:35 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 97
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 64ms
-X-Request-ID: ed86a081-a830-4536-8786-4a1f38433a0d
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token updated successfully.",
-  "token": {
-    "name": "Async Updated Test Delivery Token",
-    "description": "Async updated integration test delivery token",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "cs472f440d8444b4b0"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "csa217e678d6f93c1e"
-        }
-      }
-    ],
-    "uid": "blt1c0d644dfddc4dc1",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:35.569Z",
-    "updated_at": "2026-03-13T02:35:35.895Z",
-    "token": "cs0a747fd81b4a71af9e3cd2fa",
-    "type": "delivery"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blt1c0d644dfddc4dc1
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt1c0d644dfddc4dc1' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:36 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 45ms
-X-Request-ID: aaa6cd7e-187a-4f47-a008-50c3e6795f54
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token deleted successfully."
-}
-
- -
GEThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:36 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 21ms
-X-Request-ID: 0e7c0f04-71dc-4e8e-af3a-a939c797c11f
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "environments": [
-    {
-      "name": "test_delivery_environment",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "bltf1a9311ed6120511",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:26.376Z",
-      "updated_at": "2026-03-13T02:35:26.376Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "bulk_test_env",
-      "urls": [
-        {
-          "url": "https://bulk-test-environment.example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blte3eca71ae4290097",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:46.311Z",
-      "updated_at": "2026-03-13T02:34:46.311Z",
-      "ACL": [],
-      "_version": 1
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:36 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 10ms
-X-Request-ID: 733b05e2-2ebc-440a-8cf6-ba585ef92f31
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment was not found. Please try again.",
-  "error_code": 248
-}
-
- Test Context - - - - - - - - - - - - - - - - -
TestScenarioTest006_Should_Update_Delivery_Token_Async
TestScenarioTest001_Should_Create_Delivery_Token
DeliveryTokenUidblt1c0d644dfddc4dc1
DeliveryTokenUidblt1c0d644dfddc4dc1
-
Passed1.83s
-
✅ Test005_Should_Update_Delivery_Token
-

Assertions

-
-
IsTrue(CreateDeliveryTokenSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Response should contain token object)
-
-
Expected:
NotNull
-
Actual:
{
-  "name": "Test Delivery Token",
-  "description": "Integration test delivery token",
-  "scope": [
-    {
-      "environments": [
-        {
-          "name": "test_delivery_environment",
-          "urls": [
-            {
-              "url": "https://example.com",
-              "locale": "en-us"
-            }
-          ],
-          "app_user_object_uid": "system",
-          "uid": "bltf1a9311ed6120511",
-          "created_by": "blt1930fc55e5669df9",
-          "updated_by": "blt1930fc55e5669df9",
-          "created_at": "2026-03-13T02:35:26.376Z",
-          "updated_at": "2026-03-13T02:35:26.376Z",
-          "ACL": [],
-          "_version": 1,
-          "tags": []
-        }
-      ],
-      "module": "environment",
-      "acl": {
-        "read": true
-      },
-      "_metadata": {
-        "uid": "cs4f370c609d475dbb"
-      }
-    },
-    {
-      "module": "branch",
-      "acl": {
-        "read": true
-      },
-      "branches": [
-        "main"
-      ],
-      "_metadata": {
-        "uid": "cscdaf43ee53279ba5"
-      }
-    }
-  ],
-  "uid": "blt281ff23e2e806814",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:35:33.73Z",
-  "updated_at": "2026-03-13T02:35:33.73Z",
-  "token": "cs38768b2fe277c64a51a977c8",
-  "type": "delivery"
-}
-
-
-
-
IsNotNull(Token should have UID)
-
-
Expected:
NotNull
-
Actual:
blt281ff23e2e806814
-
-
-
-
AreEqual(TokenName)
-
-
Expected:
Test Delivery Token
-
Actual:
Test Delivery Token
-
-
-
-
AreEqual(TokenDescription)
-
-
Expected:
Integration test delivery token
-
Actual:
Integration test delivery token
-
-
-
-
IsNotNull(Delivery token UID should not be null)
-
-
Expected:
NotNull
-
Actual:
blt281ff23e2e806814
-
-
-
-
IsTrue(UpdateSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Response should contain token object)
-
-
Expected:
NotNull
-
Actual:
{
-  "name": "Updated Test Delivery Token",
-  "description": "Updated integration test delivery token",
-  "scope": [
-    {
-      "environments": [
-        {
-          "name": "test_delivery_environment",
-          "urls": [
-            {
-              "url": "https://example.com",
-              "locale": "en-us"
-            }
-          ],
-          "app_user_object_uid": "system",
-          "uid": "bltf1a9311ed6120511",
-          "created_by": "blt1930fc55e5669df9",
-          "updated_by": "blt1930fc55e5669df9",
-          "created_at": "2026-03-13T02:35:26.376Z",
-          "updated_at": "2026-03-13T02:35:26.376Z",
-          "ACL": [],
-          "_version": 1,
-          "tags": []
-        }
-      ],
-      "module": "environment",
-      "acl": {
-        "read": true
-      },
-      "_metadata": {
-        "uid": "cs6c2741331f8864fc"
-      }
-    },
-    {
-      "module": "branch",
-      "acl": {
-        "read": true
-      },
-      "branches": [
-        "main"
-      ],
-      "_metadata": {
-        "uid": "csf4cab3a259d1b45a"
-      }
-    }
-  ],
-  "uid": "blt281ff23e2e806814",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:35:33.73Z",
-  "updated_at": "2026-03-13T02:35:34.06Z",
-  "token": "cs38768b2fe277c64a51a977c8",
-  "type": "delivery"
-}
-
-
-
-
AreEqual(TokenUid)
-
-
Expected:
blt281ff23e2e806814
-
Actual:
blt281ff23e2e806814
-
-
-
-
AreEqual(UpdatedTokenName)
-
-
Expected:
Updated Test Delivery Token
-
Actual:
Updated Test Delivery Token
-
-
-
-
AreEqual(UpdatedTokenDescription)
-
-
Expected:
Updated integration test delivery token
-
Actual:
Updated integration test delivery token
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 131
-Content-Type: application/json
-
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 131' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:33 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 25ms
-X-Request-ID: 549ae392-de93-4c84-adae-66cba214c478
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 253
-Content-Type: application/json
-
Request Body
{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 253' \
-  -H 'Content-Type: application/json' \
-  -d '{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:33 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 97
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 55ms
-X-Request-ID: 9ec950cd-e64e-4c38-b6f0-1b72a741e98c
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token created successfully.",
-  "token": {
-    "name": "Test Delivery Token",
-    "description": "Integration test delivery token",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "cs4f370c609d475dbb"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "cscdaf43ee53279ba5"
-        }
-      }
-    ],
-    "uid": "blt281ff23e2e806814",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:33.730Z",
-    "updated_at": "2026-03-13T02:35:33.730Z",
-    "token": "cs38768b2fe277c64a51a977c8",
-    "type": "delivery"
-  }
-}
-
- -
PUThttps://api.contentstack.io/v3/stacks/delivery_tokens/blt281ff23e2e806814
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 269
-Content-Type: application/json
-
Request Body
{"token": {"name":"Updated Test Delivery Token","description":"Updated integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt281ff23e2e806814' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 269' \
-  -H 'Content-Type: application/json' \
-  -d '{"token": {"name":"Updated Test Delivery Token","description":"Updated integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:34 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 76ms
-X-Request-ID: 66fefb83-fcc6-48ba-9b12-2f7a9a222be7
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token updated successfully.",
-  "token": {
-    "name": "Updated Test Delivery Token",
-    "description": "Updated integration test delivery token",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "cs6c2741331f8864fc"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "csf4cab3a259d1b45a"
-        }
-      }
-    ],
-    "uid": "blt281ff23e2e806814",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:33.730Z",
-    "updated_at": "2026-03-13T02:35:34.060Z",
-    "token": "cs38768b2fe277c64a51a977c8",
-    "type": "delivery"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blt281ff23e2e806814
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt281ff23e2e806814' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:34 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 51ms
-X-Request-ID: 1ba91147-73f2-4ce2-a458-865dad37c0e8
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token deleted successfully."
-}
-
- -
GEThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:34 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 19ms
-X-Request-ID: 8067905e-4377-463f-87ad-e78795d31551
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "environments": [
-    {
-      "name": "test_delivery_environment",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "bltf1a9311ed6120511",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:26.376Z",
-      "updated_at": "2026-03-13T02:35:26.376Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "bulk_test_env",
-      "urls": [
-        {
-          "url": "https://bulk-test-environment.example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blte3eca71ae4290097",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:46.311Z",
-      "updated_at": "2026-03-13T02:34:46.311Z",
-      "ACL": [],
-      "_version": 1
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:34 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 97
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 11ms
-X-Request-ID: c383abf9-b1a6-4f40-99eb-16d2fe079f4a
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment was not found. Please try again.",
-  "error_code": 248
-}
-
- Test Context - - - - - - - - - - - - - - - - -
TestScenarioTest005_Should_Update_Delivery_Token
TestScenarioTest001_Should_Create_Delivery_Token
DeliveryTokenUidblt281ff23e2e806814
DeliveryTokenUidblt281ff23e2e806814
-
Passed1.84s
-
✅ Test016_Should_Create_Token_With_Empty_Description
-

Assertions

-
-
IsTrue(EmptyDescCreateSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Token should have UID)
-
-
Expected:
NotNull
-
Actual:
blt79e5dacabb4c8671
-
-
-
-
AreEqual(EmptyDescTokenName)
-
-
Expected:
Empty Description Token
-
Actual:
Empty Description Token
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 131
-Content-Type: application/json
-
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 131' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:47 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 25ms
-X-Request-ID: 46809749-b0b2-4ed1-ac7e-47a63fef36fe
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 226
-Content-Type: application/json
-
Request Body
{"token": {"name":"Empty Description Token","description":"","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 226' \
-  -H 'Content-Type: application/json' \
-  -d '{"token": {"name":"Empty Description Token","description":"","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:48 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 66ms
-X-Request-ID: 1d6285ba-af95-4271-aa23-b1968fe3fd5c
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token created successfully.",
-  "token": {
-    "name": "Empty Description Token",
-    "description": "",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "cs1f796918738e5c97"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "cs00c39d4355c6e1b8"
-        }
-      }
-    ],
-    "uid": "blt79e5dacabb4c8671",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:48.187Z",
-    "updated_at": "2026-03-13T02:35:48.187Z",
-    "token": "cs20eb21f417e6ff45296a400f",
-    "type": "delivery"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blt79e5dacabb4c8671
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt79e5dacabb4c8671' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:48 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 51ms
-X-Request-ID: 3a0fcf23-aec1-495b-8c59-8846c09e24be
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token deleted successfully."
-}
-
- -
GEThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:48 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 23ms
-X-Request-ID: 01a6aad5-eb7a-4f9b-8e04-aeaa59a264fc
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "environments": [
-    {
-      "name": "test_delivery_environment_2",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blt748d28fa29b47ac7",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:40.943Z",
-      "updated_at": "2026-03-13T02:35:40.943Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "test_delivery_environment",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "bltf1a9311ed6120511",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:26.376Z",
-      "updated_at": "2026-03-13T02:35:26.376Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "bulk_test_env",
-      "urls": [
-        {
-          "url": "https://bulk-test-environment.example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blte3eca71ae4290097",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:46.311Z",
-      "updated_at": "2026-03-13T02:34:46.311Z",
-      "ACL": [],
-      "_version": 1
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:49 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 10ms
-X-Request-ID: 3606bc51-f5d1-4a3f-81b9-ef4bfd7fb2b2
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment was not found. Please try again.",
-  "error_code": 248
-}
-
- Test Context - - - - - - - - -
TestScenarioTest016_Should_Create_Token_With_Empty_Description
EmptyDescTokenUidblt79e5dacabb4c8671
-
Passed1.80s
-
✅ Test002_Should_Create_Delivery_Token_Async
-

Assertions

-
-
IsTrue(AsyncCreateSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Response should contain token object)
-
-
Expected:
NotNull
-
Actual:
{
-  "name": "Async Test Delivery Token",
-  "description": "Async integration test delivery token",
-  "scope": [
-    {
-      "environments": [
-        {
-          "name": "test_delivery_environment",
-          "urls": [
-            {
-              "url": "https://example.com",
-              "locale": "en-us"
-            }
-          ],
-          "app_user_object_uid": "system",
-          "uid": "bltf1a9311ed6120511",
-          "created_by": "blt1930fc55e5669df9",
-          "updated_by": "blt1930fc55e5669df9",
-          "created_at": "2026-03-13T02:35:26.376Z",
-          "updated_at": "2026-03-13T02:35:26.376Z",
-          "ACL": [],
-          "_version": 1,
-          "tags": []
-        }
-      ],
-      "module": "environment",
-      "acl": {
-        "read": true
-      },
-      "_metadata": {
-        "uid": "cs34b616b31af2ed38"
-      }
-    },
-    {
-      "module": "branch",
-      "acl": {
-        "read": true
-      },
-      "branches": [
-        "main"
-      ],
-      "_metadata": {
-        "uid": "cs9d56dde565baf3d2"
-      }
-    }
-  ],
-  "uid": "blt9e3b786d5d60f98f",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:35:28.304Z",
-  "updated_at": "2026-03-13T02:35:28.304Z",
-  "token": "cs43634389f9e0ac8edba6f086",
-  "type": "delivery"
-}
-
-
-
-
IsNotNull(Token should have UID)
-
-
Expected:
NotNull
-
Actual:
blt9e3b786d5d60f98f
-
-
-
-
AreEqual(AsyncTokenName)
-
-
Expected:
Async Test Delivery Token
-
Actual:
Async Test Delivery Token
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 131
-Content-Type: application/json
-
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 131' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:27 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 26ms
-X-Request-ID: 3fbf1f50-2d14-9783-b002-515e8da5f9e2
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 265
-Content-Type: application/json
-
Request Body
{"token": {"name":"Async Test Delivery Token","description":"Async integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 265' \
-  -H 'Content-Type: application/json' \
-  -d '{"token": {"name":"Async Test Delivery Token","description":"Async integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:28 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 60ms
-X-Request-ID: 47dba523-ac7b-456f-a5b0-22e0cf0a105c
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token created successfully.",
-  "token": {
-    "name": "Async Test Delivery Token",
-    "description": "Async integration test delivery token",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "cs34b616b31af2ed38"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "cs9d56dde565baf3d2"
-        }
-      }
-    ],
-    "uid": "blt9e3b786d5d60f98f",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:28.304Z",
-    "updated_at": "2026-03-13T02:35:28.304Z",
-    "token": "cs43634389f9e0ac8edba6f086",
-    "type": "delivery"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blt9e3b786d5d60f98f
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt9e3b786d5d60f98f' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:28 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 61ms
-X-Request-ID: 712c41bf-4dd1-4d5c-a7a4-6a773a5bd863
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token deleted successfully."
-}
-
- -
GEThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:28 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 21ms
-X-Request-ID: 3a3b6184-4383-4a3b-a470-c71c3448d808
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "environments": [
-    {
-      "name": "test_delivery_environment",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "bltf1a9311ed6120511",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:26.376Z",
-      "updated_at": "2026-03-13T02:35:26.376Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "bulk_test_env",
-      "urls": [
-        {
-          "url": "https://bulk-test-environment.example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blte3eca71ae4290097",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:46.311Z",
-      "updated_at": "2026-03-13T02:34:46.311Z",
-      "ACL": [],
-      "_version": 1
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:29 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 9ms
-X-Request-ID: 7ee7fa72-a402-4eeb-9d75-ec1ac3745bdf
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment was not found. Please try again.",
-  "error_code": 248
-}
-
- Test Context - - - - - - - - -
TestScenarioTest002_Should_Create_Delivery_Token_Async
AsyncCreatedTokenUidblt9e3b786d5d60f98f
-
Passed1.67s
-
✅ Test017_Should_Validate_Environment_Scope_Requirement
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 131
-Content-Type: application/json
-
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 131' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:49 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 22ms
-X-Request-ID: b0c229b5-da1a-4f1c-b6f2-2cb12e0d2814
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 210
-Content-Type: application/json
-
Request Body
{"token": {"name":"Environment Only Token","description":"Token with only environment scope - should fail","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 210' \
-  -H 'Content-Type: application/json' \
-  -d '{"token": {"name":"Environment Only Token","description":"Token with only environment scope - should fail","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}}]}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:50 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 97
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 21ms
-X-Request-ID: 78d079c1-b5e1-4c6f-bb4b-0f395b5f24ea
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Delivery Token creation failed. Please try again.",
-  "error_code": 141,
-  "errors": {
-    "scope.branch_or_alias": [
-      "is a required field."
-    ]
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:50 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 22ms
-X-Request-ID: 761a3e34-5b21-49c6-be57-666a91991507
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "environments": [
-    {
-      "name": "test_delivery_environment_2",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blt748d28fa29b47ac7",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:40.943Z",
-      "updated_at": "2026-03-13T02:35:40.943Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "test_delivery_environment",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "bltf1a9311ed6120511",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:26.376Z",
-      "updated_at": "2026-03-13T02:35:26.376Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "bulk_test_env",
-      "urls": [
-        {
-          "url": "https://bulk-test-environment.example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blte3eca71ae4290097",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:46.311Z",
-      "updated_at": "2026-03-13T02:34:46.311Z",
-      "ACL": [],
-      "_version": 1
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:50 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 10ms
-X-Request-ID: fffca5c8-1d13-4b07-bc5d-c3ba50b524f0
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment was not found. Please try again.",
-  "error_code": 248
-}
-
- Test Context - - - - -
TestScenarioTest017_Should_Validate_Environment_Scope_Requirement
-
Passed1.42s
-
✅ Test008_Should_Query_Delivery_Tokens_With_Parameters
-

Assertions

-
-
IsTrue(CreateDeliveryTokenSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Response should contain token object)
-
-
Expected:
NotNull
-
Actual:
{
-  "name": "Test Delivery Token",
-  "description": "Integration test delivery token",
-  "scope": [
-    {
-      "environments": [
-        {
-          "name": "test_delivery_environment",
-          "urls": [
-            {
-              "url": "https://example.com",
-              "locale": "en-us"
-            }
-          ],
-          "app_user_object_uid": "system",
-          "uid": "bltf1a9311ed6120511",
-          "created_by": "blt1930fc55e5669df9",
-          "updated_by": "blt1930fc55e5669df9",
-          "created_at": "2026-03-13T02:35:26.376Z",
-          "updated_at": "2026-03-13T02:35:26.376Z",
-          "ACL": [],
-          "_version": 1,
-          "tags": []
-        }
-      ],
-      "module": "environment",
-      "acl": {
-        "read": true
-      },
-      "_metadata": {
-        "uid": "cs08089474dfa05c3e"
-      }
-    },
-    {
-      "module": "branch",
-      "acl": {
-        "read": true
-      },
-      "branches": [
-        "main"
-      ],
-      "_metadata": {
-        "uid": "cs76b92f5e6c72d580"
-      }
-    }
-  ],
-  "uid": "blt89a1f22bfe82eaf1",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:35:39.127Z",
-  "updated_at": "2026-03-13T02:35:39.127Z",
-  "token": "csb934f01591367a704605eeb2",
-  "type": "delivery"
-}
-
-
-
-
IsNotNull(Token should have UID)
-
-
Expected:
NotNull
-
Actual:
blt89a1f22bfe82eaf1
-
-
-
-
AreEqual(TokenName)
-
-
Expected:
Test Delivery Token
-
Actual:
Test Delivery Token
-
-
-
-
AreEqual(TokenDescription)
-
-
Expected:
Integration test delivery token
-
Actual:
Integration test delivery token
-
-
-
-
IsNotNull(Delivery token UID should not be null)
-
-
Expected:
NotNull
-
Actual:
blt89a1f22bfe82eaf1
-
-
-
-
IsTrue(QueryWithParamsSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Response should contain tokens array)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "name": "Test Delivery Token",
-    "description": "Integration test delivery token",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "cs08089474dfa05c3e"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "cs76b92f5e6c72d580"
-        }
-      }
-    ],
-    "uid": "blt89a1f22bfe82eaf1",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:39.127Z",
-    "updated_at": "2026-03-13T02:35:39.127Z",
-    "token": "csb934f01591367a704605eeb2",
-    "type": "delivery"
-  }
-]
-
-
-
-
IsTrue(RespectLimitParam)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 131
-Content-Type: application/json
-
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 131' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:38 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 25ms
-X-Request-ID: 5c6d2cdd-c45f-440c-90e4-a7b542d9b0e9
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 253
-Content-Type: application/json
-
Request Body
{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 253' \
-  -H 'Content-Type: application/json' \
-  -d '{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:39 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 46ms
-X-Request-ID: 8da5da24-0f79-4cd2-8d11-63092d1a0f30
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token created successfully.",
-  "token": {
-    "name": "Test Delivery Token",
-    "description": "Integration test delivery token",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "cs08089474dfa05c3e"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "cs76b92f5e6c72d580"
-        }
-      }
-    ],
-    "uid": "blt89a1f22bfe82eaf1",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:39.127Z",
-    "updated_at": "2026-03-13T02:35:39.127Z",
-    "token": "csb934f01591367a704605eeb2",
-    "type": "delivery"
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/stacks/delivery_tokens?limit=5&skip=0
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens?limit=5&skip=0' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:39 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 18ms
-X-Request-ID: 157f5ad2-0fd6-4e1f-9f38-002fff6e253e
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "tokens": [
-    {
-      "name": "Test Delivery Token",
-      "description": "Integration test delivery token",
-      "scope": [
-        {
-          "environments": [
-            {
-              "name": "test_delivery_environment",
-              "urls": [
-                {
-                  "url": "https://example.com",
-                  "locale": "en-us"
-                }
-              ],
-              "app_user_object_uid": "system",
-              "uid": "bltf1a9311ed6120511",
-              "created_by": "blt1930fc55e5669df9",
-              "updated_by": "blt1930fc55e5669df9",
-              "created_at": "2026-03-13T02:35:26.376Z",
-              "updated_at": "2026-03-13T02:35:26.376Z",
-              "ACL": [],
-              "_version": 1,
-              "tags": []
-            }
-          ],
-          "module": "environment",
-          "acl": {
-            "read": true
-          },
-          "_metadata": {
-            "uid": "cs08089474dfa05c3e"
-          }
-        },
-        {
-          "module": "branch",
-          "acl": {
-            "read": true
-          },
-          "branches": [
-            "main"
-          ],
-          "_metadata": {
-            "uid": "cs76b92f5e6c72d580"
-          }
-        }
-      ],
-      "uid": "blt89a1f22bfe82eaf1",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:39.127Z",
-      "updated_at": "2026-03-13T02:35:39.127Z",
-      "token": "csb934f01591367a704605eeb2",
-      "type": "delivery"
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blt89a1f22bfe82eaf1
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt89a1f22bfe82eaf1' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:39 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 55ms
-X-Request-ID: 3955fad0-c23e-4ee3-aa12-9e9b0aee3051
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token deleted successfully."
-}
-
- -
GEThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:40 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 21ms
-X-Request-ID: 6f90b218-46c3-461d-9e98-251b06d11cce
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "environments": [
-    {
-      "name": "test_delivery_environment",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "bltf1a9311ed6120511",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:26.376Z",
-      "updated_at": "2026-03-13T02:35:26.376Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "bulk_test_env",
-      "urls": [
-        {
-          "url": "https://bulk-test-environment.example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blte3eca71ae4290097",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:46.311Z",
-      "updated_at": "2026-03-13T02:34:46.311Z",
-      "ACL": [],
-      "_version": 1
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:40 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 11ms
-X-Request-ID: e6fb8b01-c5f8-4eca-a230-f42eb5aee87a
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment was not found. Please try again.",
-  "error_code": 248
-}
-
- Test Context - - - - - - - - - - - - - - - - -
TestScenarioTest008_Should_Query_Delivery_Tokens_With_Parameters
TestScenarioTest001_Should_Create_Delivery_Token
DeliveryTokenUidblt89a1f22bfe82eaf1
DeliveryTokenUidblt89a1f22bfe82eaf1
-
Passed1.80s
-
✅ Test019_Should_Delete_Delivery_Token
-

Assertions

-
-
IsTrue(CreateDeliveryTokenSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Response should contain token object)
-
-
Expected:
NotNull
-
Actual:
{
-  "name": "Test Delivery Token",
-  "description": "Integration test delivery token",
-  "scope": [
-    {
-      "environments": [
-        {
-          "name": "test_delivery_environment",
-          "urls": [
-            {
-              "url": "https://example.com",
-              "locale": "en-us"
-            }
-          ],
-          "app_user_object_uid": "system",
-          "uid": "bltf1a9311ed6120511",
-          "created_by": "blt1930fc55e5669df9",
-          "updated_by": "blt1930fc55e5669df9",
-          "created_at": "2026-03-13T02:35:26.376Z",
-          "updated_at": "2026-03-13T02:35:26.376Z",
-          "ACL": [],
-          "_version": 1,
-          "tags": []
-        }
-      ],
-      "module": "environment",
-      "acl": {
-        "read": true
-      },
-      "_metadata": {
-        "uid": "cs35dfc72957671ba6"
-      }
-    },
-    {
-      "module": "branch",
-      "acl": {
-        "read": true
-      },
-      "branches": [
-        "main"
-      ],
-      "_metadata": {
-        "uid": "cs1b237773ce75fcfb"
-      }
-    }
-  ],
-  "uid": "blt2382076685c16162",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:35:52.636Z",
-  "updated_at": "2026-03-13T02:35:52.636Z",
-  "token": "cseabe70e3b089247f8bfbab3b",
-  "type": "delivery"
-}
-
-
-
-
IsNotNull(Token should have UID)
-
-
Expected:
NotNull
-
Actual:
blt2382076685c16162
-
-
-
-
AreEqual(TokenName)
-
-
Expected:
Test Delivery Token
-
Actual:
Test Delivery Token
-
-
-
-
AreEqual(TokenDescription)
-
-
Expected:
Integration test delivery token
-
Actual:
Integration test delivery token
-
-
-
-
IsNotNull(Delivery token UID should not be null)
-
-
Expected:
NotNull
-
Actual:
blt2382076685c16162
-
-
-
-
IsNotNull(Should have a valid token UID to delete)
-
-
Expected:
NotNull
-
Actual:
blt2382076685c16162
-
-
-
-
IsTrue(DeleteSuccess)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 131
-Content-Type: application/json
-
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 131' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:52 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 25ms
-X-Request-ID: a6e7269e-5af0-404e-8941-f54427628601
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 253
-Content-Type: application/json
-
Request Body
{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 253' \
-  -H 'Content-Type: application/json' \
-  -d '{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:52 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 56ms
-X-Request-ID: 24644aa3-d306-4131-9f52-d3f180cb78bf
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token created successfully.",
-  "token": {
-    "name": "Test Delivery Token",
-    "description": "Integration test delivery token",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "cs35dfc72957671ba6"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "cs1b237773ce75fcfb"
-        }
-      }
-    ],
-    "uid": "blt2382076685c16162",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:52.636Z",
-    "updated_at": "2026-03-13T02:35:52.636Z",
-    "token": "cseabe70e3b089247f8bfbab3b",
-    "type": "delivery"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blt2382076685c16162
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt2382076685c16162' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:53 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 62ms
-X-Request-ID: b9d1b5b7-bec1-4019-8109-64ae58e02604
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token deleted successfully."
-}
-
- -
GEThttps://api.contentstack.io/v3/stacks/delivery_tokens/blt2382076685c16162
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt2382076685c16162' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:53 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 16ms
-X-Request-ID: a81579f3-5392-4ac6-b3f0-5f4b667da02d
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Delivery Token Not Found.",
-  "error_code": 141,
-  "errors": {
-    "token": [
-      "is not valid."
-    ]
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:53 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 26ms
-X-Request-ID: d0b74669-111a-4e77-a46c-9e3848e81e86
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "environments": [
-    {
-      "name": "test_delivery_environment_2",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blt748d28fa29b47ac7",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:40.943Z",
-      "updated_at": "2026-03-13T02:35:40.943Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "test_delivery_environment",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "bltf1a9311ed6120511",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:26.376Z",
-      "updated_at": "2026-03-13T02:35:26.376Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "bulk_test_env",
-      "urls": [
-        {
-          "url": "https://bulk-test-environment.example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blte3eca71ae4290097",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:46.311Z",
-      "updated_at": "2026-03-13T02:34:46.311Z",
-      "ACL": [],
-      "_version": 1
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:54 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 10ms
-X-Request-ID: bf83ef48-2a83-41f2-af7d-ee6e09043e54
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment was not found. Please try again.",
-  "error_code": 248
-}
-
- Test Context - - - - - - - - - - - - - - - - -
TestScenarioTest019_Should_Delete_Delivery_Token
TestScenarioTest001_Should_Create_Delivery_Token
DeliveryTokenUidblt2382076685c16162
TokenUidToDeleteblt2382076685c16162
-
Passed2.30s
-
✅ Test015_Should_Query_Delivery_Tokens_Async
-

Assertions

-
-
IsTrue(CreateDeliveryTokenSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Response should contain token object)
-
-
Expected:
NotNull
-
Actual:
{
-  "name": "Test Delivery Token",
-  "description": "Integration test delivery token",
-  "scope": [
-    {
-      "environments": [
-        {
-          "name": "test_delivery_environment",
-          "urls": [
-            {
-              "url": "https://example.com",
-              "locale": "en-us"
-            }
-          ],
-          "app_user_object_uid": "system",
-          "uid": "bltf1a9311ed6120511",
-          "created_by": "blt1930fc55e5669df9",
-          "updated_by": "blt1930fc55e5669df9",
-          "created_at": "2026-03-13T02:35:26.376Z",
-          "updated_at": "2026-03-13T02:35:26.376Z",
-          "ACL": [],
-          "_version": 1,
-          "tags": []
-        }
-      ],
-      "module": "environment",
-      "acl": {
-        "read": true
-      },
-      "_metadata": {
-        "uid": "cse0fcc92d818d62f3"
-      }
-    },
-    {
-      "module": "branch",
-      "acl": {
-        "read": true
-      },
-      "branches": [
-        "main"
-      ],
-      "_metadata": {
-        "uid": "cs48b83bae2a6622a4"
-      }
-    }
-  ],
-  "uid": "bltebd02315e4105bf3",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:35:46.308Z",
-  "updated_at": "2026-03-13T02:35:46.308Z",
-  "token": "cs0454deae3d8b26d3e8640385",
-  "type": "delivery"
-}
-
-
-
-
IsNotNull(Token should have UID)
-
-
Expected:
NotNull
-
Actual:
bltebd02315e4105bf3
-
-
-
-
AreEqual(TokenName)
-
-
Expected:
Test Delivery Token
-
Actual:
Test Delivery Token
-
-
-
-
AreEqual(TokenDescription)
-
-
Expected:
Integration test delivery token
-
Actual:
Integration test delivery token
-
-
-
-
IsNotNull(Delivery token UID should not be null)
-
-
Expected:
NotNull
-
Actual:
bltebd02315e4105bf3
-
-
-
-
IsTrue(AsyncQuerySuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Response should contain tokens array)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "name": "Test Delivery Token",
-    "description": "Integration test delivery token",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "cse0fcc92d818d62f3"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "cs48b83bae2a6622a4"
-        }
-      }
-    ],
-    "uid": "bltebd02315e4105bf3",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:46.308Z",
-    "updated_at": "2026-03-13T02:35:46.308Z",
-    "token": "cs0454deae3d8b26d3e8640385",
-    "type": "delivery"
-  }
-]
-
-
-
-
IsTrue(AsyncTokensCount)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsTrue(TestTokenFoundInAsyncQuery)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 131
-Content-Type: application/json
-
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 131' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:46 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 97
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 26ms
-X-Request-ID: 32ac04ed-8394-4ad4-aa5b-350ad3705b47
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 253
-Content-Type: application/json
-
Request Body
{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 253' \
-  -H 'Content-Type: application/json' \
-  -d '{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:46 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 56ms
-X-Request-ID: de7a29ad-479a-48fd-87db-6116aeceef64
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token created successfully.",
-  "token": {
-    "name": "Test Delivery Token",
-    "description": "Integration test delivery token",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "cse0fcc92d818d62f3"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "cs48b83bae2a6622a4"
-        }
-      }
-    ],
-    "uid": "bltebd02315e4105bf3",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:46.308Z",
-    "updated_at": "2026-03-13T02:35:46.308Z",
-    "token": "cs0454deae3d8b26d3e8640385",
-    "type": "delivery"
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/stacks/delivery_tokens
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:46 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 20ms
-X-Request-ID: 28f62389-04c8-49d4-bba6-4cdb1aa85721
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "tokens": [
-    {
-      "name": "Test Delivery Token",
-      "description": "Integration test delivery token",
-      "scope": [
-        {
-          "environments": [
-            {
-              "name": "test_delivery_environment",
-              "urls": [
-                {
-                  "url": "https://example.com",
-                  "locale": "en-us"
-                }
-              ],
-              "app_user_object_uid": "system",
-              "uid": "bltf1a9311ed6120511",
-              "created_by": "blt1930fc55e5669df9",
-              "updated_by": "blt1930fc55e5669df9",
-              "created_at": "2026-03-13T02:35:26.376Z",
-              "updated_at": "2026-03-13T02:35:26.376Z",
-              "ACL": [],
-              "_version": 1,
-              "tags": []
-            }
-          ],
-          "module": "environment",
-          "acl": {
-            "read": true
-          },
-          "_metadata": {
-            "uid": "cse0fcc92d818d62f3"
-          }
-        },
-        {
-          "module": "branch",
-          "acl": {
-            "read": true
-          },
-          "branches": [
-            "main"
-          ],
-          "_metadata": {
-            "uid": "cs48b83bae2a6622a4"
-          }
-        }
-      ],
-      "uid": "bltebd02315e4105bf3",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:46.308Z",
-      "updated_at": "2026-03-13T02:35:46.308Z",
-      "token": "cs0454deae3d8b26d3e8640385",
-      "type": "delivery"
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/bltebd02315e4105bf3
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens/bltebd02315e4105bf3' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:46 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 45ms
-X-Request-ID: 02fd3c87-de11-4151-944f-33a26b7d4408
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token deleted successfully."
-}
-
- -
GEThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:47 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 23ms
-X-Request-ID: 88767a31-b383-4ad4-a3fc-5369c4084834
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "environments": [
-    {
-      "name": "test_delivery_environment_2",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blt748d28fa29b47ac7",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:40.943Z",
-      "updated_at": "2026-03-13T02:35:40.943Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "test_delivery_environment",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "bltf1a9311ed6120511",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:26.376Z",
-      "updated_at": "2026-03-13T02:35:26.376Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "bulk_test_env",
-      "urls": [
-        {
-          "url": "https://bulk-test-environment.example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blte3eca71ae4290097",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:46.311Z",
-      "updated_at": "2026-03-13T02:34:46.311Z",
-      "ACL": [],
-      "_version": 1
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:47 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 11ms
-X-Request-ID: e668f467-efc9-4db4-87af-fd8ce70ff5cb
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment was not found. Please try again.",
-  "error_code": 248
-}
-
- Test Context - - - - - - - - - - - - - - - - -
TestScenarioTest015_Should_Query_Delivery_Tokens_Async
TestScenarioTest001_Should_Create_Delivery_Token
DeliveryTokenUidbltebd02315e4105bf3
DeliveryTokenUidbltebd02315e4105bf3
-
Passed1.84s
-
✅ Test003_Should_Fetch_Delivery_Token
-

Assertions

-
-
IsTrue(CreateDeliveryTokenSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Response should contain token object)
-
-
Expected:
NotNull
-
Actual:
{
-  "name": "Test Delivery Token",
-  "description": "Integration test delivery token",
-  "scope": [
-    {
-      "environments": [
-        {
-          "name": "test_delivery_environment",
-          "urls": [
-            {
-              "url": "https://example.com",
-              "locale": "en-us"
-            }
-          ],
-          "app_user_object_uid": "system",
-          "uid": "bltf1a9311ed6120511",
-          "created_by": "blt1930fc55e5669df9",
-          "updated_by": "blt1930fc55e5669df9",
-          "created_at": "2026-03-13T02:35:26.376Z",
-          "updated_at": "2026-03-13T02:35:26.376Z",
-          "ACL": [],
-          "_version": 1,
-          "tags": []
-        }
-      ],
-      "module": "environment",
-      "acl": {
-        "read": true
-      },
-      "_metadata": {
-        "uid": "csdafaa066900ee90b"
-      }
-    },
-    {
-      "module": "branch",
-      "acl": {
-        "read": true
-      },
-      "branches": [
-        "main"
-      ],
-      "_metadata": {
-        "uid": "cse1a489b6d0a0d8a7"
-      }
-    }
-  ],
-  "uid": "bltcb9787bc428f4918",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:35:30.003Z",
-  "updated_at": "2026-03-13T02:35:30.003Z",
-  "token": "cs827392740b1e29e6366013a5",
-  "type": "delivery"
-}
-
-
-
-
IsNotNull(Token should have UID)
-
-
Expected:
NotNull
-
Actual:
bltcb9787bc428f4918
-
-
-
-
AreEqual(TokenName)
-
-
Expected:
Test Delivery Token
-
Actual:
Test Delivery Token
-
-
-
-
AreEqual(TokenDescription)
-
-
Expected:
Integration test delivery token
-
Actual:
Integration test delivery token
-
-
-
-
IsNotNull(Delivery token UID should not be null)
-
-
Expected:
NotNull
-
Actual:
bltcb9787bc428f4918
-
-
-
-
IsTrue(FetchSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Response should contain token object)
-
-
Expected:
NotNull
-
Actual:
{
-  "name": "Test Delivery Token",
-  "description": "Integration test delivery token",
-  "scope": [
-    {
-      "environments": [
-        {
-          "name": "test_delivery_environment",
-          "urls": [
-            {
-              "url": "https://example.com",
-              "locale": "en-us"
-            }
-          ],
-          "app_user_object_uid": "system",
-          "uid": "bltf1a9311ed6120511",
-          "created_by": "blt1930fc55e5669df9",
-          "updated_by": "blt1930fc55e5669df9",
-          "created_at": "2026-03-13T02:35:26.376Z",
-          "updated_at": "2026-03-13T02:35:26.376Z",
-          "ACL": [],
-          "_version": 1,
-          "tags": []
-        }
-      ],
-      "module": "environment",
-      "acl": {
-        "read": true
-      },
-      "_metadata": {
-        "uid": "csdafaa066900ee90b"
-      }
-    },
-    {
-      "module": "branch",
-      "acl": {
-        "read": true
-      },
-      "branches": [
-        "main"
-      ],
-      "_metadata": {
-        "uid": "cse1a489b6d0a0d8a7"
-      }
-    }
-  ],
-  "uid": "bltcb9787bc428f4918",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:35:30.003Z",
-  "updated_at": "2026-03-13T02:35:30.003Z",
-  "token": "cs827392740b1e29e6366013a5",
-  "type": "delivery"
-}
-
-
-
-
AreEqual(TokenUid)
-
-
Expected:
bltcb9787bc428f4918
-
Actual:
bltcb9787bc428f4918
-
-
-
-
AreEqual(TokenName)
-
-
Expected:
Test Delivery Token
-
Actual:
Test Delivery Token
-
-
-
-
IsNotNull(Token should have access token)
-
-
Expected:
NotNull
-
Actual:
cs827392740b1e29e6366013a5
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 131
-Content-Type: application/json
-
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 131' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:29 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 35ms
-X-Request-ID: 9a057b80-1fdf-4982-ad92-b689f731484d
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 253
-Content-Type: application/json
-
Request Body
{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 253' \
-  -H 'Content-Type: application/json' \
-  -d '{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:30 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 97
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 63ms
-X-Request-ID: 6f86f1c3-3f25-4ea6-8c3a-bc1e355f3285
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token created successfully.",
-  "token": {
-    "name": "Test Delivery Token",
-    "description": "Integration test delivery token",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "csdafaa066900ee90b"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "cse1a489b6d0a0d8a7"
-        }
-      }
-    ],
-    "uid": "bltcb9787bc428f4918",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:30.003Z",
-    "updated_at": "2026-03-13T02:35:30.003Z",
-    "token": "cs827392740b1e29e6366013a5",
-    "type": "delivery"
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/stacks/delivery_tokens/bltcb9787bc428f4918
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens/bltcb9787bc428f4918' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:30 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 17ms
-X-Request-ID: 0e6555c4-8e73-4c6d-97d7-d326ee25bcc6
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "token": {
-    "name": "Test Delivery Token",
-    "description": "Integration test delivery token",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "csdafaa066900ee90b"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "cse1a489b6d0a0d8a7"
-        }
-      }
-    ],
-    "uid": "bltcb9787bc428f4918",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:30.003Z",
-    "updated_at": "2026-03-13T02:35:30.003Z",
-    "token": "cs827392740b1e29e6366013a5",
-    "type": "delivery"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/bltcb9787bc428f4918
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens/bltcb9787bc428f4918' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:30 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 69ms
-X-Request-ID: 47f39e27-f11e-4ca5-be83-166528f403aa
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token deleted successfully."
-}
-
- -
GEThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:31 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 24ms
-X-Request-ID: 163be963-06c9-422e-9faa-e7b381e40eaa
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "environments": [
-    {
-      "name": "test_delivery_environment",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "bltf1a9311ed6120511",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:26.376Z",
-      "updated_at": "2026-03-13T02:35:26.376Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "bulk_test_env",
-      "urls": [
-        {
-          "url": "https://bulk-test-environment.example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blte3eca71ae4290097",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:46.311Z",
-      "updated_at": "2026-03-13T02:34:46.311Z",
-      "ACL": [],
-      "_version": 1
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:31 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 11ms
-X-Request-ID: 5a43e999-259d-4a26-902d-d88ac1ab756a
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment was not found. Please try again.",
-  "error_code": 248
-}
-
- Test Context - - - - - - - - - - - - - - - - -
TestScenarioTest003_Should_Fetch_Delivery_Token
TestScenarioTest001_Should_Create_Delivery_Token
DeliveryTokenUidbltcb9787bc428f4918
DeliveryTokenUidbltcb9787bc428f4918
-
Passed1.98s
-
✅ Test011_Should_Create_Token_With_Complex_Scope
-

Assertions

-
-
IsTrue(ComplexScopeCreateSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Token should have UID)
-
-
Expected:
NotNull
-
Actual:
blt5d0cd1c2f796ed06
-
-
-
-
IsNotNull(Token should have scope)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "environments": [
-      {
-        "name": "test_delivery_environment",
-        "urls": [
-          {
-            "url": "https://example.com",
-            "locale": "en-us"
-          }
-        ],
-        "app_user_object_uid": "system",
-        "uid": "bltf1a9311ed6120511",
-        "created_by": "blt1930fc55e5669df9",
-        "updated_by": "blt1930fc55e5669df9",
-        "created_at": "2026-03-13T02:35:26.376Z",
-        "updated_at": "2026-03-13T02:35:26.376Z",
-        "ACL": [],
-        "_version": 1,
-        "tags": []
-      }
-    ],
-    "module": "environment",
-    "acl": {
-      "read": true
-    },
-    "_metadata": {
-      "uid": "cs66201d4f89cb3154"
-    }
-  },
-  {
-    "module": "branch",
-    "acl": {
-      "read": true
-    },
-    "branches": [
-      "main"
-    ],
-    "_metadata": {
-      "uid": "cse61617e7ebf711ba"
-    }
-  }
-]
-
-
-
-
IsTrue(ScopeCountMultiple)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 131
-Content-Type: application/json
-
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 131' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:43 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 97
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 26ms
-X-Request-ID: a3aaa34c-55c7-469c-a620-25dfaa8ca1c1
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 269
-Content-Type: application/json
-
Request Body
{"token": {"name":"Complex Scope Delivery Token","description":"Token with complex scope configuration","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 269' \
-  -H 'Content-Type: application/json' \
-  -d '{"token": {"name":"Complex Scope Delivery Token","description":"Token with complex scope configuration","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:43 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 49ms
-X-Request-ID: 75d8b196-3dd6-4947-a4b4-5b29338430da
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token created successfully.",
-  "token": {
-    "name": "Complex Scope Delivery Token",
-    "description": "Token with complex scope configuration",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "cs66201d4f89cb3154"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "cse61617e7ebf711ba"
-        }
-      }
-    ],
-    "uid": "blt5d0cd1c2f796ed06",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:43.289Z",
-    "updated_at": "2026-03-13T02:35:43.289Z",
-    "token": "csacce0fb0db8431b2fc8be334",
-    "type": "delivery"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blt5d0cd1c2f796ed06
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt5d0cd1c2f796ed06' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:43 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 43ms
-X-Request-ID: 41c96430-1b57-4b38-80f7-3414da658dfa
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token deleted successfully."
-}
-
- -
GEThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:43 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 23ms
-X-Request-ID: 1b060e51-6b85-4ad4-81ea-af9b3cf7b570
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "environments": [
-    {
-      "name": "test_delivery_environment_2",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blt748d28fa29b47ac7",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:40.943Z",
-      "updated_at": "2026-03-13T02:35:40.943Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "test_delivery_environment",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "bltf1a9311ed6120511",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:26.376Z",
-      "updated_at": "2026-03-13T02:35:26.376Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "bulk_test_env",
-      "urls": [
-        {
-          "url": "https://bulk-test-environment.example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blte3eca71ae4290097",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:46.311Z",
-      "updated_at": "2026-03-13T02:34:46.311Z",
-      "ACL": [],
-      "_version": 1
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:44 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 11ms
-X-Request-ID: aaf0a84c-f11d-42af-ac05-2ff27ab8d498
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment was not found. Please try again.",
-  "error_code": 248
-}
-
- Test Context - - - - - - - - -
TestScenarioTest011_Should_Create_Token_With_Complex_Scope
ComplexScopeTokenUidblt5d0cd1c2f796ed06
-
Passed1.46s
-
✅ Test001_Should_Create_Delivery_Token
-

Assertions

-
-
IsTrue(CreateDeliveryTokenSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Response should contain token object)
-
-
Expected:
NotNull
-
Actual:
{
-  "name": "Test Delivery Token",
-  "description": "Integration test delivery token",
-  "scope": [
-    {
-      "environments": [
-        {
-          "name": "test_delivery_environment",
-          "urls": [
-            {
-              "url": "https://example.com",
-              "locale": "en-us"
-            }
-          ],
-          "app_user_object_uid": "system",
-          "uid": "bltf1a9311ed6120511",
-          "created_by": "blt1930fc55e5669df9",
-          "updated_by": "blt1930fc55e5669df9",
-          "created_at": "2026-03-13T02:35:26.376Z",
-          "updated_at": "2026-03-13T02:35:26.376Z",
-          "ACL": [],
-          "_version": 1,
-          "tags": []
-        }
-      ],
-      "module": "environment",
-      "acl": {
-        "read": true
-      },
-      "_metadata": {
-        "uid": "cs4e0103401d927f51"
-      }
-    },
-    {
-      "module": "branch",
-      "acl": {
-        "read": true
-      },
-      "branches": [
-        "main"
-      ],
-      "_metadata": {
-        "uid": "cscecd0c3829bcac64"
-      }
-    }
-  ],
-  "uid": "blta231e572183266da",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:35:26.679Z",
-  "updated_at": "2026-03-13T02:35:26.679Z",
-  "token": "cs090d8f77a3bfbc936e29401f",
-  "type": "delivery"
-}
-
-
-
-
IsNotNull(Token should have UID)
-
-
Expected:
NotNull
-
Actual:
blta231e572183266da
-
-
-
-
AreEqual(TokenName)
-
-
Expected:
Test Delivery Token
-
Actual:
Test Delivery Token
-
-
-
-
AreEqual(TokenDescription)
-
-
Expected:
Integration test delivery token
-
Actual:
Integration test delivery token
-
-
-
-
IsNotNull(Delivery token UID should not be null)
-
-
Expected:
NotNull
-
Actual:
blta231e572183266da
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 131
-Content-Type: application/json
-
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 131' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:26 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 34ms
-X-Request-ID: 553d611f-eec9-4e73-81d1-e55d5511cad8
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Environment created successfully.",
-  "environment": {
-    "name": "test_delivery_environment",
-    "urls": [
-      {
-        "url": "https://example.com",
-        "locale": "en-us"
-      }
-    ],
-    "uid": "bltf1a9311ed6120511",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:26.376Z",
-    "updated_at": "2026-03-13T02:35:26.376Z",
-    "ACL": {},
-    "_version": 1
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 253
-Content-Type: application/json
-
Request Body
{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 253' \
-  -H 'Content-Type: application/json' \
-  -d '{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:26 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 97
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 54ms
-X-Request-ID: 7bc73943-c695-4cc9-b15a-810fe105875c
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token created successfully.",
-  "token": {
-    "name": "Test Delivery Token",
-    "description": "Integration test delivery token",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "cs4e0103401d927f51"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "cscecd0c3829bcac64"
-        }
-      }
-    ],
-    "uid": "blta231e572183266da",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:26.679Z",
-    "updated_at": "2026-03-13T02:35:26.679Z",
-    "token": "cs090d8f77a3bfbc936e29401f",
-    "type": "delivery"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blta231e572183266da
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens/blta231e572183266da' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:27 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 96
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 84ms
-X-Request-ID: 6f4b8f90-4a22-455c-a6a9-9508f408842e
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token deleted successfully."
-}
-
- -
GEThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:27 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 20ms
-X-Request-ID: 748c2f98-76a7-4d5c-9fc9-e8fd031ff745
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "environments": [
-    {
-      "name": "test_delivery_environment",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "bltf1a9311ed6120511",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:26.376Z",
-      "updated_at": "2026-03-13T02:35:26.376Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "bulk_test_env",
-      "urls": [
-        {
-          "url": "https://bulk-test-environment.example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blte3eca71ae4290097",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:46.311Z",
-      "updated_at": "2026-03-13T02:34:46.311Z",
-      "ACL": [],
-      "_version": 1
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:27 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 12ms
-X-Request-ID: f1d11886-1725-4947-ac21-e8137d393d83
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment was not found. Please try again.",
-  "error_code": 248
-}
-
- Test Context - - - - - - - - -
TestScenarioTest001_Should_Create_Delivery_Token
DeliveryTokenUidblta231e572183266da
-
Passed1.60s
-
✅ Test012_Should_Create_Token_With_UI_Structure
-

Assertions

-
-
IsTrue(UIStructureCreateSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Token should have UID)
-
-
Expected:
NotNull
-
Actual:
blte93370b67f508c83
-
-
-
-
AreEqual(UITokenName)
-
-
Expected:
UI Structure Test Token
-
Actual:
UI Structure Test Token
-
-
-
-
IsNotNull(Token should have scope)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "environments": [
-      {
-        "name": "test_delivery_environment",
-        "urls": [
-          {
-            "url": "https://example.com",
-            "locale": "en-us"
-          }
-        ],
-        "app_user_object_uid": "system",
-        "uid": "bltf1a9311ed6120511",
-        "created_by": "blt1930fc55e5669df9",
-        "updated_by": "blt1930fc55e5669df9",
-        "created_at": "2026-03-13T02:35:26.376Z",
-        "updated_at": "2026-03-13T02:35:26.376Z",
-        "ACL": [],
-        "_version": 1,
-        "tags": []
-      }
-    ],
-    "module": "environment",
-    "acl": {
-      "read": true
-    },
-    "_metadata": {
-      "uid": "cs5c2988f7704aafea"
-    }
-  },
-  {
-    "module": "branch",
-    "acl": {
-      "read": true
-    },
-    "branches": [
-      "main"
-    ],
-    "_metadata": {
-      "uid": "csf551ba751f7a2d7d"
-    }
-  }
-]
-
-
-
-
IsTrue(UIScopeCount)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 131
-Content-Type: application/json
-
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 131' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:44 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 24ms
-X-Request-ID: 2e1c4de7-7191-4f72-998d-8aad7ff11d0f
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 226
-Content-Type: application/json
-
Request Body
{"token": {"name":"UI Structure Test Token","description":"","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 226' \
-  -H 'Content-Type: application/json' \
-  -d '{"token": {"name":"UI Structure Test Token","description":"","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:44 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 97
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 57ms
-X-Request-ID: 97d7fa63-8f19-4cae-8a7a-0424e7859876
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token created successfully.",
-  "token": {
-    "name": "UI Structure Test Token",
-    "description": "",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "cs5c2988f7704aafea"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "csf551ba751f7a2d7d"
-        }
-      }
-    ],
-    "uid": "blte93370b67f508c83",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:44.749Z",
-    "updated_at": "2026-03-13T02:35:44.749Z",
-    "token": "csc6d85ff3e0be7bb5fc1c4ee9",
-    "type": "delivery"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blte93370b67f508c83
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens/blte93370b67f508c83' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:45 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 61ms
-X-Request-ID: 1cdaff16-fe5a-43d7-a9a6-276f1f794199
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token deleted successfully."
-}
-
- -
GEThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:45 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 21ms
-X-Request-ID: 68e50d87-4d8c-4f9e-8d2d-e87eaebe32b9
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "environments": [
-    {
-      "name": "test_delivery_environment_2",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blt748d28fa29b47ac7",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:40.943Z",
-      "updated_at": "2026-03-13T02:35:40.943Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "test_delivery_environment",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "bltf1a9311ed6120511",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:26.376Z",
-      "updated_at": "2026-03-13T02:35:26.376Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "bulk_test_env",
-      "urls": [
-        {
-          "url": "https://bulk-test-environment.example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blte3eca71ae4290097",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:46.311Z",
-      "updated_at": "2026-03-13T02:34:46.311Z",
-      "ACL": [],
-      "_version": 1
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:45 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 9ms
-X-Request-ID: 60497a38-ce4d-41db-a39c-3158654c36a4
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment was not found. Please try again.",
-  "error_code": 248
-}
-
- Test Context - - - - - - - - -
TestScenarioTest012_Should_Create_Token_With_UI_Structure
UITokenUidblte93370b67f508c83
-
Passed1.56s
-
✅ Test018_Should_Validate_Branch_Scope_Requirement
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 131
-Content-Type: application/json
-
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 131' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:51 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 21ms
-X-Request-ID: 57aa5266-aed8-99d1-9c3d-23be256c6a8f
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 170
-Content-Type: application/json
-
Request Body
{"token": {"name":"Branch Only Token","description":"Token with only branch scope - should fail","scope":[{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 170' \
-  -H 'Content-Type: application/json' \
-  -d '{"token": {"name":"Branch Only Token","description":"Token with only branch scope - should fail","scope":[{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:51 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 25ms
-X-Request-ID: 80498dc6-1c17-4a52-83bd-b4c636f3bdf6
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Delivery Token creation failed. Please try again.",
-  "error_code": 141,
-  "errors": {
-    "scope.environment": [
-      "is a required field."
-    ]
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:51 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 21ms
-X-Request-ID: cc3da981-b924-46c6-91bb-052be0085034
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "environments": [
-    {
-      "name": "test_delivery_environment_2",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blt748d28fa29b47ac7",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:40.943Z",
-      "updated_at": "2026-03-13T02:35:40.943Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "test_delivery_environment",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "bltf1a9311ed6120511",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:26.376Z",
-      "updated_at": "2026-03-13T02:35:26.376Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "bulk_test_env",
-      "urls": [
-        {
-          "url": "https://bulk-test-environment.example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blte3eca71ae4290097",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:46.311Z",
-      "updated_at": "2026-03-13T02:34:46.311Z",
-      "ACL": [],
-      "_version": 1
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:51 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 97
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 10ms
-X-Request-ID: 02c29f68-b0f5-4fa6-84da-dd62d1830a57
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment was not found. Please try again.",
-  "error_code": 248
-}
-
- Test Context - - - - -
TestScenarioTest018_Should_Validate_Branch_Scope_Requirement
-
Passed1.20s
-
✅ Test007_Should_Query_All_Delivery_Tokens
-

Assertions

-
-
IsTrue(CreateDeliveryTokenSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Response should contain token object)
-
-
Expected:
NotNull
-
Actual:
{
-  "name": "Test Delivery Token",
-  "description": "Integration test delivery token",
-  "scope": [
-    {
-      "environments": [
-        {
-          "name": "test_delivery_environment",
-          "urls": [
-            {
-              "url": "https://example.com",
-              "locale": "en-us"
-            }
-          ],
-          "app_user_object_uid": "system",
-          "uid": "bltf1a9311ed6120511",
-          "created_by": "blt1930fc55e5669df9",
-          "updated_by": "blt1930fc55e5669df9",
-          "created_at": "2026-03-13T02:35:26.376Z",
-          "updated_at": "2026-03-13T02:35:26.376Z",
-          "ACL": [],
-          "_version": 1,
-          "tags": []
-        }
-      ],
-      "module": "environment",
-      "acl": {
-        "read": true
-      },
-      "_metadata": {
-        "uid": "cs6ec41cf96cbabd57"
-      }
-    },
-    {
-      "module": "branch",
-      "acl": {
-        "read": true
-      },
-      "branches": [
-        "main"
-      ],
-      "_metadata": {
-        "uid": "cs16eb0004e573757f"
-      }
-    }
-  ],
-  "uid": "blt044a5f9a33f7138d",
-  "created_by": "blt1930fc55e5669df9",
-  "updated_by": "blt1930fc55e5669df9",
-  "created_at": "2026-03-13T02:35:37.406Z",
-  "updated_at": "2026-03-13T02:35:37.406Z",
-  "token": "cs1c5fb623aa62e59acc7f97d4",
-  "type": "delivery"
-}
-
-
-
-
IsNotNull(Token should have UID)
-
-
Expected:
NotNull
-
Actual:
blt044a5f9a33f7138d
-
-
-
-
AreEqual(TokenName)
-
-
Expected:
Test Delivery Token
-
Actual:
Test Delivery Token
-
-
-
-
AreEqual(TokenDescription)
-
-
Expected:
Integration test delivery token
-
Actual:
Integration test delivery token
-
-
-
-
IsNotNull(Delivery token UID should not be null)
-
-
Expected:
NotNull
-
Actual:
blt044a5f9a33f7138d
-
-
-
-
IsTrue(QuerySuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Response should contain tokens array)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "name": "Test Delivery Token",
-    "description": "Integration test delivery token",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "cs6ec41cf96cbabd57"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "cs16eb0004e573757f"
-        }
-      }
-    ],
-    "uid": "blt044a5f9a33f7138d",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:37.406Z",
-    "updated_at": "2026-03-13T02:35:37.406Z",
-    "token": "cs1c5fb623aa62e59acc7f97d4",
-    "type": "delivery"
-  }
-]
-
-
-
-
IsTrue(TokensCountGreaterThanZero)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsTrue(TestTokenFoundInQuery)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 131
-Content-Type: application/json
-
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 131' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:37 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 28ms
-X-Request-ID: 394cc920-296f-465a-a253-e445c086591f
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 253
-Content-Type: application/json
-
Request Body
{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 253' \
-  -H 'Content-Type: application/json' \
-  -d '{"token": {"name":"Test Delivery Token","description":"Integration test delivery token","scope":[{"environments":["test_delivery_environment"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:37 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 43ms
-X-Request-ID: 68cef8dd-206d-4b20-9740-99c08dfbc56e
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token created successfully.",
-  "token": {
-    "name": "Test Delivery Token",
-    "description": "Integration test delivery token",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "cs6ec41cf96cbabd57"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "cs16eb0004e573757f"
-        }
-      }
-    ],
-    "uid": "blt044a5f9a33f7138d",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:37.406Z",
-    "updated_at": "2026-03-13T02:35:37.406Z",
-    "token": "cs1c5fb623aa62e59acc7f97d4",
-    "type": "delivery"
-  }
-}
-
- -
GEThttps://api.contentstack.io/v3/stacks/delivery_tokens
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:37 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 17ms
-X-Request-ID: ad68526f-b17d-464c-b78c-ea1c3db78cdd
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "tokens": [
-    {
-      "name": "Test Delivery Token",
-      "description": "Integration test delivery token",
-      "scope": [
-        {
-          "environments": [
-            {
-              "name": "test_delivery_environment",
-              "urls": [
-                {
-                  "url": "https://example.com",
-                  "locale": "en-us"
-                }
-              ],
-              "app_user_object_uid": "system",
-              "uid": "bltf1a9311ed6120511",
-              "created_by": "blt1930fc55e5669df9",
-              "updated_by": "blt1930fc55e5669df9",
-              "created_at": "2026-03-13T02:35:26.376Z",
-              "updated_at": "2026-03-13T02:35:26.376Z",
-              "ACL": [],
-              "_version": 1,
-              "tags": []
-            }
-          ],
-          "module": "environment",
-          "acl": {
-            "read": true
-          },
-          "_metadata": {
-            "uid": "cs6ec41cf96cbabd57"
-          }
-        },
-        {
-          "module": "branch",
-          "acl": {
-            "read": true
-          },
-          "branches": [
-            "main"
-          ],
-          "_metadata": {
-            "uid": "cs16eb0004e573757f"
-          }
-        }
-      ],
-      "uid": "blt044a5f9a33f7138d",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:37.406Z",
-      "updated_at": "2026-03-13T02:35:37.406Z",
-      "token": "cs1c5fb623aa62e59acc7f97d4",
-      "type": "delivery"
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blt044a5f9a33f7138d
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt044a5f9a33f7138d' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:38 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 97
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 51ms
-X-Request-ID: 4253e0ee-3944-4e8b-b439-6ae53ba7cb2a
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token deleted successfully."
-}
-
- -
GEThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:38 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 25ms
-X-Request-ID: 363a8389-bf6e-4d53-b82f-276f6b70200d
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "environments": [
-    {
-      "name": "test_delivery_environment",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "bltf1a9311ed6120511",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:26.376Z",
-      "updated_at": "2026-03-13T02:35:26.376Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "bulk_test_env",
-      "urls": [
-        {
-          "url": "https://bulk-test-environment.example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blte3eca71ae4290097",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:46.311Z",
-      "updated_at": "2026-03-13T02:34:46.311Z",
-      "ACL": [],
-      "_version": 1
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:38 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 11ms
-X-Request-ID: ab5749d2-5ca1-49e2-89a9-2d8acf1490a9
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment was not found. Please try again.",
-  "error_code": 248
-}
-
- Test Context - - - - - - - - - - - - - - - - -
TestScenarioTest007_Should_Query_All_Delivery_Tokens
TestScenarioTest001_Should_Create_Delivery_Token
DeliveryTokenUidblt044a5f9a33f7138d
DeliveryTokenUidblt044a5f9a33f7138d
-
Passed1.74s
-
✅ Test009_Should_Create_Token_With_Multiple_Environments
-

Assertions

-
-
IsTrue(MultiEnvCreateSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Token should have UID)
-
-
Expected:
NotNull
-
Actual:
blt3d3bd8ad86e88d41
-
-
-
-
IsNotNull(Token should have scope)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "environments": [
-      {
-        "name": "test_delivery_environment",
-        "urls": [
-          {
-            "url": "https://example.com",
-            "locale": "en-us"
-          }
-        ],
-        "app_user_object_uid": "system",
-        "uid": "bltf1a9311ed6120511",
-        "created_by": "blt1930fc55e5669df9",
-        "updated_by": "blt1930fc55e5669df9",
-        "created_at": "2026-03-13T02:35:26.376Z",
-        "updated_at": "2026-03-13T02:35:26.376Z",
-        "ACL": [],
-        "_version": 1,
-        "tags": []
-      },
-      {
-        "name": "test_delivery_environment_2",
-        "urls": [
-          {
-            "url": "https://example.com",
-            "locale": "en-us"
-          }
-        ],
-        "app_user_object_uid": "system",
-        "uid": "blt748d28fa29b47ac7",
-        "created_by": "blt1930fc55e5669df9",
-        "updated_by": "blt1930fc55e5669df9",
-        "created_at": "2026-03-13T02:35:40.943Z",
-        "updated_at": "2026-03-13T02:35:40.943Z",
-        "ACL": [],
-        "_version": 1,
-        "tags": []
-      }
-    ],
-    "module": "environment",
-    "acl": {
-      "read": true
-    },
-    "_metadata": {
-      "uid": "cs493e2f3f5d98776d"
-    }
-  },
-  {
-    "module": "branch",
-    "acl": {
-      "read": true
-    },
-    "branches": [
-      "main"
-    ],
-    "_metadata": {
-      "uid": "cs7a3e4c209189eb8b"
-    }
-  }
-]
-
-
-
-
IsTrue(ScopeCount)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 131
-Content-Type: application/json
-
Request Body
{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 131' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"test_delivery_environment","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:40 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 20ms
-X-Request-ID: 28bef972-3ab9-4273-a89a-77b87e3b1f9a
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment creation failed. Please try again.",
-  "error_code": 247,
-  "errors": {
-    "name": [
-      "is not unique."
-    ]
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 133
-Content-Type: application/json
-
Request Body
{"environment": {"name":"test_delivery_environment_2","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 133' \
-  -H 'Content-Type: application/json' \
-  -d '{"environment": {"name":"test_delivery_environment_2","urls":[{"url":"https://example.com","locale":"en-us"}],"deploy_content":true}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:40 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 97
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 28ms
-X-Request-ID: 8d0b2fee-f533-4804-ae07-e7591e0aa7cf
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Environment created successfully.",
-  "environment": {
-    "name": "test_delivery_environment_2",
-    "urls": [
-      {
-        "url": "https://example.com",
-        "locale": "en-us"
-      }
-    ],
-    "uid": "blt748d28fa29b47ac7",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:40.943Z",
-    "updated_at": "2026-03-13T02:35:40.943Z",
-    "ACL": {},
-    "_version": 1
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/stacks/delivery_tokens
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 303
-Content-Type: application/json
-
Request Body
{"token": {"name":"Multi Environment Delivery Token","description":"Token with multiple environment access","scope":[{"environments":["test_delivery_environment","test_delivery_environment_2"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 303' \
-  -H 'Content-Type: application/json' \
-  -d '{"token": {"name":"Multi Environment Delivery Token","description":"Token with multiple environment access","scope":[{"environments":["test_delivery_environment","test_delivery_environment_2"],"module":"environment","acl":{"read":"true"}},{"module":"branch","acl":{"read":"true"},"branches":["main"]}]}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:41 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 63ms
-X-Request-ID: ddfbd95e-559e-4963-b64e-2819bfc732fe
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token created successfully.",
-  "token": {
-    "name": "Multi Environment Delivery Token",
-    "description": "Token with multiple environment access",
-    "scope": [
-      {
-        "environments": [
-          {
-            "name": "test_delivery_environment",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "bltf1a9311ed6120511",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:26.376Z",
-            "updated_at": "2026-03-13T02:35:26.376Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          },
-          {
-            "name": "test_delivery_environment_2",
-            "urls": [
-              {
-                "url": "https://example.com",
-                "locale": "en-us"
-              }
-            ],
-            "app_user_object_uid": "system",
-            "uid": "blt748d28fa29b47ac7",
-            "created_by": "blt1930fc55e5669df9",
-            "updated_by": "blt1930fc55e5669df9",
-            "created_at": "2026-03-13T02:35:40.943Z",
-            "updated_at": "2026-03-13T02:35:40.943Z",
-            "ACL": [],
-            "_version": 1,
-            "tags": []
-          }
-        ],
-        "module": "environment",
-        "acl": {
-          "read": true
-        },
-        "_metadata": {
-          "uid": "cs493e2f3f5d98776d"
-        }
-      },
-      {
-        "module": "branch",
-        "acl": {
-          "read": true
-        },
-        "branches": [
-          "main"
-        ],
-        "_metadata": {
-          "uid": "cs7a3e4c209189eb8b"
-        }
-      }
-    ],
-    "uid": "blt3d3bd8ad86e88d41",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:41.245Z",
-    "updated_at": "2026-03-13T02:35:41.245Z",
-    "token": "csfc4d3f02f742562fe0316d0f",
-    "type": "delivery"
-  }
-}
-
- -
DELETEhttps://api.contentstack.io/v3/stacks/delivery_tokens/blt3d3bd8ad86e88d41
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/stacks/delivery_tokens/blt3d3bd8ad86e88d41' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:41 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 55ms
-X-Request-ID: caf0c245-6b64-4d35-be51-525f256fb7be
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Delivery Token deleted successfully."
-}
-
- -
GEThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:41 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 20ms
-X-Request-ID: 321c3fe7-6ce1-4cb3-a92d-dd3c5ecd2823
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "environments": [
-    {
-      "name": "test_delivery_environment_2",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blt748d28fa29b47ac7",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:40.943Z",
-      "updated_at": "2026-03-13T02:35:40.943Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "test_delivery_environment",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "bltf1a9311ed6120511",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:26.376Z",
-      "updated_at": "2026-03-13T02:35:26.376Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "bulk_test_env",
-      "urls": [
-        {
-          "url": "https://bulk-test-environment.example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blte3eca71ae4290097",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:46.311Z",
-      "updated_at": "2026-03-13T02:34:46.311Z",
-      "ACL": [],
-      "_version": 1
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/environments/blt748d28fa29b47ac7
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/environments/blt748d28fa29b47ac7' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:42 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 11ms
-X-Request-ID: 489ae873-fdfb-453d-a8fd-9a0eb607bb5f
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment was not found. Please try again.",
-  "error_code": 248
-}
-
- -
GEThttps://api.contentstack.io/v3/environments
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/environments' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:42 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 21ms
-X-Request-ID: 59fdd7ee-2ac0-4b37-adf6-dbdbf72cf237
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "environments": [
-    {
-      "name": "test_delivery_environment_2",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blt748d28fa29b47ac7",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:40.943Z",
-      "updated_at": "2026-03-13T02:35:40.943Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "test_delivery_environment",
-      "urls": [
-        {
-          "url": "https://example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "bltf1a9311ed6120511",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:35:26.376Z",
-      "updated_at": "2026-03-13T02:35:26.376Z",
-      "ACL": [],
-      "_version": 1
-    },
-    {
-      "name": "bulk_test_env",
-      "urls": [
-        {
-          "url": "https://bulk-test-environment.example.com",
-          "locale": "en-us"
-        }
-      ],
-      "uid": "blte3eca71ae4290097",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:34:46.311Z",
-      "updated_at": "2026-03-13T02:34:46.311Z",
-      "ACL": [],
-      "_version": 1
-    }
-  ]
-}
-
- -
DELETEhttps://api.contentstack.io/v3/environments/bltf1a9311ed6120511
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/environments/bltf1a9311ed6120511' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
422 Unprocessable Entity
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:42 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 98
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 10ms
-X-Request-ID: f7b78b06-4ff4-4853-a639-fca215eb2fa7
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "error_message": "Environment was not found. Please try again.",
-  "error_code": 248
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioTest009_Should_Create_Token_With_Multiple_Environments
SecondEnvironmentUidtest_delivery_environment_2
MultiEnvTokenUidblt3d3bd8ad86e88d41
-
Passed2.34s
-
-
- -
-
-
- - Contentstack017_TaxonomyTest -
-
- 39 passed · - 0 failed · - 1 skipped · - 40 total -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Test NameStatusDuration
-
✅ Test006_Should_Create_Taxonomy_Async
-

Assertions

-
-
IsTrue(CreateAsyncSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Wrapper taxonomy)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.TaxonomyModel
-
-
-
-
AreEqual(AsyncTaxonomyUid)
-
-
Expected:
taxonomy_async_d624e490
-
Actual:
taxonomy_async_d624e490
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/taxonomies
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 123
-Content-Type: application/json
-
Request Body
{"taxonomy": {"uid":"taxonomy_async_d624e490","name":"Taxonomy Async Create Test","description":"Created via CreateAsync"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/taxonomies' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 123' \
-  -H 'Content-Type: application/json' \
-  -d '{"taxonomy": {"uid":"taxonomy_async_d624e490","name":"Taxonomy Async Create Test","description":"Created via CreateAsync"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:56 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: c3fcf4e6-7d0d-43f2-be4f-9100326dc9a7
-x-response-time: 128
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 289
-
Response Body -
{
-  "taxonomy": {
-    "uid": "taxonomy_async_d624e490",
-    "name": "Taxonomy Async Create Test",
-    "description": "Created via CreateAsync",
-    "locale": "en-us",
-    "created_at": "2026-03-13T02:35:56.726Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:35:56.726Z",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioTest006_Should_Create_Taxonomy_Async
AsyncCreatedTaxonomyUidtaxonomy_async_d624e490
-
Passed0.40s
-
✅ Test035_Should_Search_Terms_Async
-

Assertions

-
-
IsTrue(SearchAsyncTermsSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Terms or items in search async response)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "uid": "term_root_4dd5037e",
-    "name": "Root Term Updated Async",
-    "locale": "en-us",
-    "parent_uid": null,
-    "depth": 1,
-    "created_at": "2026-03-13T02:36:00.465Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:36:02.824Z",
-    "updated_by": "blt1930fc55e5669df9",
-    "taxonomy_uid": "taxonomy_integration_test_70bf770f",
-    "ancestors": [
-      {
-        "uid": "taxonomy_integration_test_70bf770f",
-        "name": "Taxonomy Integration Test Updated Async",
-        "type": "TAXONOMY"
-      }
-    ]
-  }
-]
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/taxonomies/$all/terms?typeahead=Root
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/taxonomies/$all/terms?typeahead=Root' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:07 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: c4fe97f9-939c-4b27-b7a2-44150c7a4e13
-x-response-time: 57
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 446
-
Response Body -
{
-  "terms": [
-    {
-      "uid": "term_root_4dd5037e",
-      "name": "Root Term Updated Async",
-      "locale": "en-us",
-      "parent_uid": null,
-      "depth": 1,
-      "created_at": "2026-03-13T02:36:00.465Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:36:02.824Z",
-      "updated_by": "blt1930fc55e5669df9",
-      "taxonomy_uid": "taxonomy_integration_test_70bf770f",
-      "ancestors": [
-        {
-          "uid": "taxonomy_integration_test_70bf770f",
-          "name": "Taxonomy Integration Test Updated Async",
-          "type": "TAXONOMY"
-        }
-      ]
-    }
-  ]
-}
-
- Test Context - - - - - - - - -
TestScenarioTest035_Should_Search_Terms_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
-
Passed0.33s
-
✅ Test027_Should_Get_Term_Descendants_Async
-

Assertions

-
-
IsTrue(DescendantsAsyncSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Descendants async response)
-
-
Expected:
NotNull
-
Actual:
{
-  "terms": [
-    {
-      "uid": "term_child_96d81ca7",
-      "name": "Child Term",
-      "locale": "en-us",
-      "parent_uid": "term_root_4dd5037e",
-      "depth": 2,
-      "created_at": "2026-03-13T02:36:00.765Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:36:00.765Z",
-      "updated_by": "blt1930fc55e5669df9"
-    }
-  ]
-}
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e/descendants
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e/descendants' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:04 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 40499414-3952-4e7d-8dcf-9220fa006a9b
-x-response-time: 58
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 272
-
Response Body -
{
-  "terms": [
-    {
-      "uid": "term_child_96d81ca7",
-      "name": "Child Term",
-      "locale": "en-us",
-      "parent_uid": "term_root_4dd5037e",
-      "depth": 2,
-      "created_at": "2026-03-13T02:36:00.765Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:36:00.765Z",
-      "updated_by": "blt1930fc55e5669df9"
-    }
-  ]
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioTest027_Should_Get_Term_Descendants_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
-
Passed0.35s
-
✅ Test011_Should_Localize_Taxonomy
-

Assertions

-
-
IsTrue(QueryLocalesSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsTrue(LocalizeSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Wrapper taxonomy)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.TaxonomyModel
-
-
-
-
AreEqual(LocalizedLocale)
-
-
Expected:
hi-in
-
Actual:
hi-in
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/locales
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/locales' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:58 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 19ms
-X-Request-ID: 92c419c9-ea9e-4eaf-b42b-c74fa45c31e8
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "locales": [
-    {
-      "code": "en-us",
-      "fallback_locale": null,
-      "uid": "blt83281ebe3abf75dc",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_by": "blt1930fc55e5669df9",
-      "created_at": "2026-03-13T02:33:34.686Z",
-      "updated_at": "2026-03-13T02:33:34.686Z",
-      "name": "English - United States",
-      "ACL": [],
-      "_version": 1
-    }
-  ]
-}
-
- -
POSThttps://api.contentstack.io/v3/locales
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 51
-Content-Type: application/json
-
Request Body
{"locale": {"name":"Hindi (India)","code":"hi-in"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/locales' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 51' \
-  -H 'Content-Type: application/json' \
-  -d '{"locale": {"name":"Hindi (India)","code":"hi-in"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:58 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-x-ratelimit-limit: 100
-x-ratelimit-remaining: 99
-x-contentstack-organization: blt8d282118e2094bb8
-x-runtime: 33ms
-X-Request-ID: 56dcd19b-3f0f-4f8b-b6d7-a155f383dfc5
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "Language added successfully.",
-  "locale": {
-    "name": "Hindi (India)",
-    "code": "hi-in",
-    "uid": "blt6ca4648e976eac30",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_by": "blt1930fc55e5669df9",
-    "created_at": "2026-03-13T02:35:58.889Z",
-    "updated_at": "2026-03-13T02:35:58.889Z",
-    "fallback_locale": "en-us",
-    "ACL": {},
-    "_version": 1
-  }
-}
-
- -
POSThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f?locale=hi-in
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 124
-Content-Type: application/json
-
Request Body
{"taxonomy": {"uid":"taxonomy_integration_test_70bf770f","name":"Taxonomy Localized","description":"Localized description"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f?locale=hi-in' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 124' \
-  -H 'Content-Type: application/json' \
-  -d '{"taxonomy": {"uid":"taxonomy_integration_test_70bf770f","name":"Taxonomy Localized","description":"Localized description"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:59 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 12379c29-242c-4187-be9e-56e72dcca5c2
-x-response-time: 44
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 290
-
Response Body -
{
-  "taxonomy": {
-    "uid": "taxonomy_integration_test_70bf770f",
-    "name": "Taxonomy Localized",
-    "description": "Localized description",
-    "locale": "hi-in",
-    "created_at": "2026-03-13T02:35:59.227Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:35:59.227Z",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioTest011_Should_Localize_Taxonomy
TaxonomyUidtaxonomy_integration_test_70bf770f
TestLocaleCodehi-in
-
Passed0.91s
-
✅ Test002_Should_Fetch_Taxonomy
-

Assertions

-
-
IsTrue(FetchSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Wrapper taxonomy)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.TaxonomyModel
-
-
-
-
AreEqual(TaxonomyUid)
-
-
Expected:
taxonomy_integration_test_70bf770f
-
Actual:
taxonomy_integration_test_70bf770f
-
-
-
-
IsNotNull(Taxonomy name)
-
-
Expected:
NotNull
-
Actual:
Taxonomy Integration Test
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:55 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 2f0caaa8-0d35-4a8d-ab3f-8f250aeaf8df
-x-response-time: 52
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 317
-
Response Body -
{
-  "taxonomy": {
-    "uid": "taxonomy_integration_test_70bf770f",
-    "name": "Taxonomy Integration Test",
-    "description": "Description for taxonomy integration test",
-    "locale": "en-us",
-    "created_at": "2026-03-13T02:35:54.784Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:35:54.784Z",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioTest002_Should_Fetch_Taxonomy
TaxonomyUidtaxonomy_integration_test_70bf770f
-
Passed0.35s
-
✅ Test042_Should_Throw_When_Delete_NonExistent_Term
-

Assertions

-
-
ThrowsException<ContentstackErrorException>(DeleteNonExistentTerm)
-
-
Expected:
ContentstackErrorException
-
Actual:
ContentstackErrorException
-
-

HTTP Transactions

-
- -
DELETEhttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/non_existent_term_uid_12345
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/non_existent_term_uid_12345' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
404 Not Found
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:10 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: aa1c69cd-5f40-486d-bb99-2880e7ac0c30
-x-response-time: 31
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 69
-
Response Body -
{
-  "errors": {
-    "term": [
-      "The term is either invalid or does not exist."
-    ]
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioTest042_Should_Throw_When_Delete_NonExistent_Term
TaxonomyUidtaxonomy_integration_test_70bf770f
-
Passed0.30s
-
✅ Test040_Should_Throw_When_Fetch_NonExistent_Term
-

Assertions

-
-
ThrowsException<ContentstackErrorException>(FetchNonExistentTerm)
-
-
Expected:
ContentstackErrorException
-
Actual:
ContentstackErrorException
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/non_existent_term_uid_12345
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/non_existent_term_uid_12345' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
404 Not Found
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:09 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: cd67e899-44f8-4a30-a85f-b9fe5b17406c
-x-response-time: 169
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 69
-
Response Body -
{
-  "errors": {
-    "term": [
-      "The term is either invalid or does not exist."
-    ]
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioTest040_Should_Throw_When_Fetch_NonExistent_Term
TaxonomyUidtaxonomy_integration_test_70bf770f
-
Passed0.44s
-
✅ Test021_Should_Query_Terms_Async
-

Assertions

-
-
IsTrue(QueryTermsAsyncSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Terms in response)
-
-
Expected:
NotNull
-
Actual:
System.Collections.Generic.List`1[Contentstack.Management.Core.Models.TermModel]
-
-
-
-
IsTrue(TermsCount)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:02 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: db46c678-761b-4e35-a30a-414e9331d6d2
-x-response-time: 39
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 432
-
Response Body -
{
-  "terms": [
-    {
-      "uid": "term_root_4dd5037e",
-      "name": "Root Term",
-      "locale": "en-us",
-      "parent_uid": null,
-      "depth": 1,
-      "created_at": "2026-03-13T02:36:00.465Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:36:00.465Z",
-      "updated_by": "blt1930fc55e5669df9",
-      "taxonomy_uid": "taxonomy_integration_test_70bf770f",
-      "ancestors": [
-        {
-          "uid": "taxonomy_integration_test_70bf770f",
-          "name": "Taxonomy Integration Test Updated Async",
-          "type": "TAXONOMY"
-        }
-      ]
-    }
-  ]
-}
-
- Test Context - - - - - - - - -
TestScenarioTest021_Should_Query_Terms_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
-
Passed0.36s
-
✅ Test029_Should_Get_Term_Locales_Async
-

Assertions

-
-
IsTrue(TermLocalesAsyncSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Terms in locales async response)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "uid": "term_root_4dd5037e",
-    "name": "Root Term Updated Async",
-    "locale": "en-us",
-    "parent_uid": null,
-    "depth": 1,
-    "created_at": "2026-03-13T02:36:00.465Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:36:02.824Z",
-    "updated_by": "blt1930fc55e5669df9",
-    "localized": true
-  },
-  {
-    "uid": "term_root_4dd5037e",
-    "name": "Root Term Updated Async",
-    "locale": "hi-in",
-    "parent_uid": null,
-    "depth": 1,
-    "created_at": "2026-03-13T02:36:00.465Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:36:02.824Z",
-    "updated_by": "blt1930fc55e5669df9",
-    "localized": false
-  }
-]
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e/locales
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e/locales' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:05 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 49e3f416-7737-4a3a-922e-04a6bb3fc948
-x-response-time: 115
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 560
-
Response Body -
{
-  "terms": [
-    {
-      "uid": "term_root_4dd5037e",
-      "name": "Root Term Updated Async",
-      "locale": "en-us",
-      "parent_uid": null,
-      "depth": 1,
-      "created_at": "2026-03-13T02:36:00.465Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:36:02.824Z",
-      "updated_by": "blt1930fc55e5669df9",
-      "localized": true
-    },
-    {
-      "uid": "term_root_4dd5037e",
-      "name": "Root Term Updated Async",
-      "locale": "hi-in",
-      "parent_uid": null,
-      "depth": 1,
-      "created_at": "2026-03-13T02:36:00.465Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:36:02.824Z",
-      "updated_by": "blt1930fc55e5669df9",
-      "localized": false
-    }
-  ]
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioTest029_Should_Get_Term_Locales_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
-
Passed0.38s
-
✅ Test019_Should_Fetch_Term_Async
-

Assertions

-
-
IsTrue(FetchAsyncTermSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Term in response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.TermModel
-
-
-
-
AreEqual(RootTermUid)
-
-
Expected:
term_root_4dd5037e
-
Actual:
term_root_4dd5037e
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:01 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 539c8355-54ab-4f36-bfc6-cf2a629e34ae
-x-response-time: 154
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 251
-
Response Body -
{
-  "term": {
-    "uid": "term_root_4dd5037e",
-    "name": "Root Term",
-    "locale": "en-us",
-    "parent_uid": null,
-    "depth": 1,
-    "created_at": "2026-03-13T02:36:00.465Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:36:00.465Z",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioTest019_Should_Fetch_Term_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
-
Passed0.42s
-
✅ Test037_Should_Throw_When_Update_NonExistent_Taxonomy
-

Assertions

-
-
ThrowsException<ContentstackErrorException>(UpdateNonExistentTaxonomy)
-
-
Expected:
ContentstackErrorException
-
Actual:
ContentstackErrorException
-
-

HTTP Transactions

-
- -
PUThttps://api.contentstack.io/v3/taxonomies/non_existent_taxonomy_uid_12345
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 46
-Content-Type: application/json
-
Request Body
{"taxonomy": {"name":"No","description":"No"}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/taxonomies/non_existent_taxonomy_uid_12345' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 46' \
-  -H 'Content-Type: application/json' \
-  -d '{"taxonomy": {"name":"No","description":"No"}}'
- -
-
-
404 Not Found
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:08 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 86676842-2b04-4f5d-a287-9adaa011213c
-x-response-time: 173
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 77
-
Response Body -
{
-  "errors": {
-    "taxonomy": [
-      "The taxonomy is either invalid or does not exist."
-    ]
-  }
-}
-
- Test Context - - - - -
TestScenarioTest037_Should_Throw_When_Update_NonExistent_Taxonomy
-
Passed0.46s
-
✅ Test023_Should_Update_Term_Async
-

Assertions

-
-
IsTrue(UpdateAsyncTermSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Term in response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.TermModel
-
-
-
-
AreEqual(UpdatedAsyncTermName)
-
-
Expected:
Root Term Updated Async
-
Actual:
Root Term Updated Async
-
-

HTTP Transactions

-
- -
PUThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 44
-Content-Type: application/json
-
Request Body
{"term": {"name":"Root Term Updated Async"}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 44' \
-  -H 'Content-Type: application/json' \
-  -d '{"term": {"name":"Root Term Updated Async"}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:02 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: ec7ddd3c-d2ea-4730-a53c-c89dec517a16
-x-response-time: 36
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 265
-
Response Body -
{
-  "term": {
-    "uid": "term_root_4dd5037e",
-    "name": "Root Term Updated Async",
-    "locale": "en-us",
-    "parent_uid": null,
-    "depth": 1,
-    "created_at": "2026-03-13T02:36:00.465Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:36:02.824Z",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioTest023_Should_Update_Term_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
-
Passed0.30s
-
✅ Test018_Should_Fetch_Term
-

Assertions

-
-
IsTrue(FetchTermSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Term in response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.TermModel
-
-
-
-
AreEqual(RootTermUid)
-
-
Expected:
term_root_4dd5037e
-
Actual:
term_root_4dd5037e
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:01 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 04c51f34-ac89-4657-85f5-5ac4de73e5b5
-x-response-time: 58
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 251
-
Response Body -
{
-  "term": {
-    "uid": "term_root_4dd5037e",
-    "name": "Root Term",
-    "locale": "en-us",
-    "parent_uid": null,
-    "depth": 1,
-    "created_at": "2026-03-13T02:36:00.465Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:36:00.465Z",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioTest018_Should_Fetch_Term
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
-
Passed0.34s
-
✅ Test014_Should_Import_Taxonomy
-

Assertions

-
-
IsTrue(ImportSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Imported taxonomy)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.TaxonomyModel
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/taxonomies/import
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Type: multipart/form-data; boundary="90b467ab-dc83-46c1-8cf5-4fa17aa11f52"
-
Request Body
--90b467ab-dc83-46c1-8cf5-4fa17aa11f52
-Content-Disposition: form-data; name=taxonomy; filename=taxonomy.json; filename*=utf-8''taxonomy.json
-
-{"taxonomy":{"uid":"taxonomy_import_bc16bf87","name":"Imported Taxonomy","description":"Imported"}}
---90b467ab-dc83-46c1-8cf5-4fa17aa11f52--
-
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/taxonomies/import' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Type: multipart/form-data; boundary="90b467ab-dc83-46c1-8cf5-4fa17aa11f52"' \
-  -d '--90b467ab-dc83-46c1-8cf5-4fa17aa11f52
-Content-Disposition: form-data; name=taxonomy; filename=taxonomy.json; filename*=utf-8'\'''\''taxonomy.json
-
-{"taxonomy":{"uid":"taxonomy_import_bc16bf87","name":"Imported Taxonomy","description":"Imported"}}
---90b467ab-dc83-46c1-8cf5-4fa17aa11f52--
-'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:59 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 9596e47d-3008-4f30-8819-ac3631b09747
-x-response-time: 29
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 282
-
Response Body -
{
-  "taxonomy": {
-    "uid": "taxonomy_import_bc16bf87",
-    "name": "Imported Taxonomy",
-    "description": "Imported",
-    "locale": "en-us",
-    "created_at": "2026-03-13T02:35:59.845Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:35:59.845Z",
-    "updated_by": "blt1930fc55e5669df9",
-    "terms_count": 0
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioTest014_Should_Import_Taxonomy
ImportUidtaxonomy_import_bc16bf87
-
Passed0.31s
-
✅ Test022_Should_Update_Term
-

Assertions

-
-
IsTrue(UpdateTermSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Term in response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.TermModel
-
-
-
-
AreEqual(UpdatedTermName)
-
-
Expected:
Root Term Updated
-
Actual:
Root Term Updated
-
-

HTTP Transactions

-
- -
PUThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 38
-Content-Type: application/json
-
Request Body
{"term": {"name":"Root Term Updated"}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 38' \
-  -H 'Content-Type: application/json' \
-  -d '{"term": {"name":"Root Term Updated"}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:02 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: add995f9-a8b8-418e-b7fa-1ab1c0728334
-x-response-time: 34
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 259
-
Response Body -
{
-  "term": {
-    "uid": "term_root_4dd5037e",
-    "name": "Root Term Updated",
-    "locale": "en-us",
-    "parent_uid": null,
-    "depth": 1,
-    "created_at": "2026-03-13T02:36:00.465Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:36:02.509Z",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioTest022_Should_Update_Term
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
-
Passed0.30s
-
✅ Test008_Should_Query_Taxonomies_Async
-

Assertions

-
-
IsTrue(QueryFindAsyncSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Wrapper taxonomies)
-
-
Expected:
NotNull
-
Actual:
System.Collections.Generic.List`1[Contentstack.Management.Core.Models.TaxonomyModel]
-
-
-
-
IsTrue(TaxonomiesCount)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/taxonomies
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/taxonomies' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:57 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: caf1c6b0-a614-47c9-9d0d-bcf872d4ee8e
-x-response-time: 54
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 594
-
Response Body -
{
-  "taxonomies": [
-    {
-      "uid": "taxonomy_integration_test_70bf770f",
-      "name": "Taxonomy Integration Test Updated Async",
-      "description": "Updated via UpdateAsync",
-      "locale": "en-us",
-      "created_at": "2026-03-13T02:35:54.784Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:35:57.042Z",
-      "updated_by": "blt1930fc55e5669df9"
-    },
-    {
-      "uid": "taxonomy_async_d624e490",
-      "name": "Taxonomy Async Create Test",
-      "description": "Created via CreateAsync",
-      "locale": "en-us",
-      "created_at": "2026-03-13T02:35:56.726Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:35:56.726Z",
-      "updated_by": "blt1930fc55e5669df9"
-    }
-  ]
-}
-
- Test Context - - - - -
TestScenarioTest008_Should_Query_Taxonomies_Async
-
Passed0.33s
-
✅ Test030_Should_Localize_Term
-

Assertions

-
-
IsTrue(TermLocalizeSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Term in response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.TermModel
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e?locale=hi-in
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 67
-Content-Type: application/json
-
Request Body
{"term": {"uid":"term_root_4dd5037e","name":"Root Term Localized"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e?locale=hi-in' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 67' \
-  -H 'Content-Type: application/json' \
-  -d '{"term": {"uid":"term_root_4dd5037e","name":"Root Term Localized"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:05 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: e3ef2528-2df7-48eb-bdd0-a8d17179810c
-x-response-time: 41
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 261
-
Response Body -
{
-  "term": {
-    "uid": "term_root_4dd5037e",
-    "name": "Root Term Localized",
-    "locale": "hi-in",
-    "parent_uid": null,
-    "depth": 1,
-    "created_at": "2026-03-13T02:36:05.447Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:36:05.447Z",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- Test Context - - - - - - - - - - - - - - - - -
TestScenarioTest030_Should_Localize_Term
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
TestLocaleCodehi-in
-
Passed0.33s
-
✅ Test024_Should_Get_Term_Ancestors
-

Assertions

-
-
IsTrue(AncestorsSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Ancestors response)
-
-
Expected:
NotNull
-
Actual:
{
-  "terms": [
-    {
-      "uid": "term_root_4dd5037e",
-      "name": "Root Term Updated Async",
-      "locale": "en-us",
-      "parent_uid": null,
-      "depth": 1,
-      "created_at": "2026-03-13T02:36:00.465Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:36:02.824Z",
-      "updated_by": "blt1930fc55e5669df9"
-    }
-  ]
-}
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/ancestors
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/ancestors' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:03 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 06218f50-c75d-4d7d-9fdd-94a2fb2d86bd
-x-response-time: 60
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 268
-
Response Body -
{
-  "terms": [
-    {
-      "uid": "term_root_4dd5037e",
-      "name": "Root Term Updated Async",
-      "locale": "en-us",
-      "parent_uid": null,
-      "depth": 1,
-      "created_at": "2026-03-13T02:36:00.465Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:36:02.824Z",
-      "updated_by": "blt1930fc55e5669df9"
-    }
-  ]
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioTest024_Should_Get_Term_Ancestors
TaxonomyUidtaxonomy_integration_test_70bf770f
ChildTermUidterm_child_96d81ca7
-
Passed0.41s
-
⏭ Test032_Should_Move_Term
-

Assertions

-
-
Inconclusive
-
-
Expected:
N/A
-
Actual:
Move term failed: 
-
-

HTTP Transactions

-
- -
PUThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/move
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 55
-Content-Type: application/json
-
Request Body
{"term": {"parent_uid":"term_root_4dd5037e","order":0}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/move' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 55' \
-  -H 'Content-Type: application/json' \
-  -d '{"term": {"parent_uid":"term_root_4dd5037e","order":0}}'
- -
-
-
400 Bad Request
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:05 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: d63c47b7-44a4-4f6e-bb2f-85df59a03104
-x-response-time: 21
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 71
-
Response Body -
{
-  "errors": {
-    "force": [
-      "The force parameter should be a boolean value."
-    ]
-  }
-}
-
- -
PUThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/move?force=true
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 55
-Content-Type: application/json
-
Request Body
{"term": {"parent_uid":"term_root_4dd5037e","order":0}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/move?force=true' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 55' \
-  -H 'Content-Type: application/json' \
-  -d '{"term": {"parent_uid":"term_root_4dd5037e","order":0}}'
- -
-
-
400 Bad Request
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:06 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: f125ddf5-8c4b-4eab-8978-0074d4254539
-x-response-time: 21
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 88
-
Response Body -
{
-  "errors": {
-    "order": [
-      "The order parameter should be a numerical value greater than 1."
-    ]
-  }
-}
-
- Test Context - - - - - - - - - - - - - - - - -
TestScenarioTest032_Should_Move_Term
TaxonomyUidtaxonomy_integration_test_70bf770f
ChildTermUidterm_child_96d81ca7
RootTermUidterm_root_4dd5037e
-
NotExecuted0.72s
-
✅ Test041_Should_Throw_When_Update_NonExistent_Term
-

Assertions

-
-
ThrowsException<ContentstackErrorException>(UpdateNonExistentTerm)
-
-
Expected:
ContentstackErrorException
-
Actual:
ContentstackErrorException
-
-

HTTP Transactions

-
- -
PUThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/non_existent_term_uid_12345
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 23
-Content-Type: application/json
-
Request Body
{"term": {"name":"No"}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/non_existent_term_uid_12345' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 23' \
-  -H 'Content-Type: application/json' \
-  -d '{"term": {"name":"No"}}'
- -
-
-
404 Not Found
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:09 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 9c93e891-7878-4c4d-a69f-4701abce750c
-x-response-time: 22
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 69
-
Response Body -
{
-  "errors": {
-    "term": [
-      "The term is either invalid or does not exist."
-    ]
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioTest041_Should_Throw_When_Update_NonExistent_Term
TaxonomyUidtaxonomy_integration_test_70bf770f
-
Passed0.31s
-
✅ Test013_Should_Throw_When_Localize_With_Invalid_Locale
-

Assertions

-
-
ThrowsException<ContentstackErrorException>(LocalizeInvalidLocale)
-
-
Expected:
ContentstackErrorException
-
Actual:
ContentstackErrorException
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f?locale=invalid_locale_code_xyz
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 99
-Content-Type: application/json
-
Request Body
{"taxonomy": {"uid":"taxonomy_integration_test_70bf770f","name":"Invalid","description":"Invalid"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f?locale=invalid_locale_code_xyz' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 99' \
-  -H 'Content-Type: application/json' \
-  -d '{"taxonomy": {"uid":"taxonomy_integration_test_70bf770f","name":"Invalid","description":"Invalid"}}'
- -
-
-
404 Not Found
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:59 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: c6a797db-3a31-40c7-b7ce-da52268ed427
-x-response-time: 36
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 75
-
Response Body -
{
-  "errors": {
-    "taxonomy": [
-      "The locale is either invalid or does not exist."
-    ]
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioTest013_Should_Throw_When_Localize_With_Invalid_Locale
TaxonomyUidtaxonomy_integration_test_70bf770f
-
Passed0.31s
-
✅ Test017_Should_Create_Child_Term
-

Assertions

-
-
IsTrue(CreateChildTermSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Term in response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.TermModel
-
-
-
-
AreEqual(ChildTermUid)
-
-
Expected:
term_child_96d81ca7
-
Actual:
term_child_96d81ca7
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 93
-Content-Type: application/json
-
Request Body
{"term": {"uid":"term_child_96d81ca7","name":"Child Term","parent_uid":"term_root_4dd5037e"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 93' \
-  -H 'Content-Type: application/json' \
-  -d '{"term": {"uid":"term_child_96d81ca7","name":"Child Term","parent_uid":"term_root_4dd5037e"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:00 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 8187dbdb-92e8-436e-b5ec-962a2bf4c9c1
-x-response-time: 37
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 269
-
Response Body -
{
-  "term": {
-    "uid": "term_child_96d81ca7",
-    "name": "Child Term",
-    "locale": "en-us",
-    "parent_uid": "term_root_4dd5037e",
-    "depth": 2,
-    "created_at": "2026-03-13T02:36:00.765Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:36:00.765Z",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- Test Context - - - - - - - - - - - - - - - - -
TestScenarioTest017_Should_Create_Child_Term
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
ChildTermUidterm_child_96d81ca7
-
Passed0.30s
-
✅ Test001_Should_Create_Taxonomy
-

Assertions

-
-
IsTrue(CreateSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Wrapper taxonomy)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.TaxonomyModel
-
-
-
-
AreEqual(TaxonomyUid)
-
-
Expected:
taxonomy_integration_test_70bf770f
-
Actual:
taxonomy_integration_test_70bf770f
-
-
-
-
AreEqual(TaxonomyName)
-
-
Expected:
Taxonomy Integration Test
-
Actual:
Taxonomy Integration Test
-
-
-
-
AreEqual(TaxonomyDescription)
-
-
Expected:
Description for taxonomy integration test
-
Actual:
Description for taxonomy integration test
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/taxonomies
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 151
-Content-Type: application/json
-
Request Body
{"taxonomy": {"uid":"taxonomy_integration_test_70bf770f","name":"Taxonomy Integration Test","description":"Description for taxonomy integration test"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/taxonomies' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 151' \
-  -H 'Content-Type: application/json' \
-  -d '{"taxonomy": {"uid":"taxonomy_integration_test_70bf770f","name":"Taxonomy Integration Test","description":"Description for taxonomy integration test"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:54 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: d100501b-995a-4bec-8e82-22bdb903f4f1
-x-response-time: 219
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 317
-
Response Body -
{
-  "taxonomy": {
-    "uid": "taxonomy_integration_test_70bf770f",
-    "name": "Taxonomy Integration Test",
-    "description": "Description for taxonomy integration test",
-    "locale": "en-us",
-    "created_at": "2026-03-13T02:35:54.784Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:35:54.784Z",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioTest001_Should_Create_Taxonomy
TaxonomyUidtaxonomy_integration_test_70bf770f
-
Passed0.53s
-
✅ Test039_Should_Throw_When_Delete_NonExistent_Taxonomy
-

Assertions

-
-
ThrowsException<ContentstackErrorException>(DeleteNonExistentTaxonomy)
-
-
Expected:
ContentstackErrorException
-
Actual:
ContentstackErrorException
-
-

HTTP Transactions

-
- -
DELETEhttps://api.contentstack.io/v3/taxonomies/non_existent_taxonomy_uid_12345
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/taxonomies/non_existent_taxonomy_uid_12345' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
404 Not Found
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:09 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: dc35b1f8-8ec6-427f-8a86-4681e2945557
-x-response-time: 28
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 77
-
Response Body -
{
-  "errors": {
-    "taxonomy": [
-      "The taxonomy is either invalid or does not exist."
-    ]
-  }
-}
-
- Test Context - - - - -
TestScenarioTest039_Should_Throw_When_Delete_NonExistent_Taxonomy
-
Passed0.32s
-
✅ Test033_Should_Move_Term_Async
-

Assertions

-
-
IsTrue(MoveAsyncTermSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Term in response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.TermModel
-
-

HTTP Transactions

-
- -
PUThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/move
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 55
-Content-Type: application/json
-
Request Body
{"term": {"parent_uid":"term_root_4dd5037e","order":1}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/move' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 55' \
-  -H 'Content-Type: application/json' \
-  -d '{"term": {"parent_uid":"term_root_4dd5037e","order":1}}'
- -
-
-
400 Bad Request
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:06 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 15865084-645e-41f1-a5c3-f53b7f32a647
-x-response-time: 23
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 71
-
Response Body -
{
-  "errors": {
-    "force": [
-      "The force parameter should be a boolean value."
-    ]
-  }
-}
-
- -
PUThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/move?force=true
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 55
-Content-Type: application/json
-
Request Body
{"term": {"parent_uid":"term_root_4dd5037e","order":1}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/move?force=true' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 55' \
-  -H 'Content-Type: application/json' \
-  -d '{"term": {"parent_uid":"term_root_4dd5037e","order":1}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:06 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: b4e39b6b-490c-4516-b777-083b7323ae6d
-x-response-time: 36
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 279
-
Response Body -
{
-  "term": {
-    "uid": "term_child_96d81ca7",
-    "name": "Child Term",
-    "locale": "en-us",
-    "parent_uid": "term_root_4dd5037e",
-    "depth": 2,
-    "created_at": "2026-03-13T02:36:00.765Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:36:06.893Z",
-    "updated_by": "blt1930fc55e5669df9",
-    "order": 1
-  }
-}
-
- Test Context - - - - - - - - - - - - - - - - -
TestScenarioTest033_Should_Move_Term_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
ChildTermUidterm_child_96d81ca7
RootTermUidterm_root_4dd5037e
-
Passed0.71s
-
✅ Test009_Should_Get_Taxonomy_Locales
-

Assertions

-
-
IsTrue(LocalesSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Taxonomies in locales response)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "uid": "taxonomy_integration_test_70bf770f",
-    "name": "Taxonomy Integration Test Updated Async",
-    "description": "Updated via UpdateAsync",
-    "locale": "en-us",
-    "created_at": "2026-03-13T02:35:54.784Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:35:57.042Z",
-    "updated_by": "blt1930fc55e5669df9",
-    "localized": true
-  }
-]
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/locales
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/locales' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:57 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 7e7a1d37-6abd-475e-9013-e08a9d4a9dd4
-x-response-time: 142
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 334
-
Response Body -
{
-  "taxonomies": [
-    {
-      "uid": "taxonomy_integration_test_70bf770f",
-      "name": "Taxonomy Integration Test Updated Async",
-      "description": "Updated via UpdateAsync",
-      "locale": "en-us",
-      "created_at": "2026-03-13T02:35:54.784Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:35:57.042Z",
-      "updated_by": "blt1930fc55e5669df9",
-      "localized": true
-    }
-  ]
-}
-
- Test Context - - - - - - - - -
TestScenarioTest009_Should_Get_Taxonomy_Locales
TaxonomyUidtaxonomy_integration_test_70bf770f
-
Passed0.55s
-
✅ Test038_Should_Throw_When_Fetch_NonExistent_Taxonomy
-

Assertions

-
-
ThrowsException<ContentstackErrorException>(FetchNonExistentTaxonomy)
-
-
Expected:
ContentstackErrorException
-
Actual:
ContentstackErrorException
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/taxonomies/non_existent_taxonomy_uid_12345
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/taxonomies/non_existent_taxonomy_uid_12345' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
404 Not Found
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:08 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: a147e29d-f510-4d4e-b187-1d0b94117450
-x-response-time: 240
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 77
-
Response Body -
{
-  "errors": {
-    "taxonomy": [
-      "The taxonomy is either invalid or does not exist."
-    ]
-  }
-}
-
- Test Context - - - - -
TestScenarioTest038_Should_Throw_When_Fetch_NonExistent_Taxonomy
-
Passed0.53s
-
✅ Test025_Should_Get_Term_Ancestors_Async
-

Assertions

-
-
IsTrue(AncestorsAsyncSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Ancestors async response)
-
-
Expected:
NotNull
-
Actual:
{
-  "terms": [
-    {
-      "uid": "term_root_4dd5037e",
-      "name": "Root Term Updated Async",
-      "locale": "en-us",
-      "parent_uid": null,
-      "depth": 1,
-      "created_at": "2026-03-13T02:36:00.465Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:36:02.824Z",
-      "updated_by": "blt1930fc55e5669df9"
-    }
-  ]
-}
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/ancestors
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_child_96d81ca7/ancestors' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:03 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: c9b0c7e5-f2f8-41cd-8c92-6225c97043cf
-x-response-time: 38
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 268
-
Response Body -
{
-  "terms": [
-    {
-      "uid": "term_root_4dd5037e",
-      "name": "Root Term Updated Async",
-      "locale": "en-us",
-      "parent_uid": null,
-      "depth": 1,
-      "created_at": "2026-03-13T02:36:00.465Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:36:02.824Z",
-      "updated_by": "blt1930fc55e5669df9"
-    }
-  ]
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioTest025_Should_Get_Term_Ancestors_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
ChildTermUidterm_child_96d81ca7
-
Passed0.41s
-
✅ Test005_Should_Fetch_Taxonomy_Async
-

Assertions

-
-
IsTrue(FetchAsyncSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Wrapper taxonomy)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.TaxonomyModel
-
-
-
-
AreEqual(TaxonomyUid)
-
-
Expected:
taxonomy_integration_test_70bf770f
-
Actual:
taxonomy_integration_test_70bf770f
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:56 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 37bf3e4d-ce0d-4952-993e-762b5f5ede5a
-x-response-time: 246
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 303
-
Response Body -
{
-  "taxonomy": {
-    "uid": "taxonomy_integration_test_70bf770f",
-    "name": "Taxonomy Integration Test Updated",
-    "description": "Updated description",
-    "locale": "en-us",
-    "created_at": "2026-03-13T02:35:54.784Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:35:55.810Z",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioTest005_Should_Fetch_Taxonomy_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
-
Passed0.52s
-
✅ Test003_Should_Query_Taxonomies
-

Assertions

-
-
IsTrue(QuerySuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Wrapper taxonomies)
-
-
Expected:
NotNull
-
Actual:
System.Collections.Generic.List`1[Contentstack.Management.Core.Models.TaxonomyModel]
-
-
-
-
IsTrue(TaxonomiesCount)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/taxonomies
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/taxonomies' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:55 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: acb2ca4a-1def-482e-a92d-553018d32dbf
-x-response-time: 48
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 321
-
Response Body -
{
-  "taxonomies": [
-    {
-      "uid": "taxonomy_integration_test_70bf770f",
-      "name": "Taxonomy Integration Test",
-      "description": "Description for taxonomy integration test",
-      "locale": "en-us",
-      "created_at": "2026-03-13T02:35:54.784Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:35:54.784Z",
-      "updated_by": "blt1930fc55e5669df9"
-    }
-  ]
-}
-
- Test Context - - - - -
TestScenarioTest003_Should_Query_Taxonomies
-
Passed0.33s
-
✅ Test015_Should_Import_Taxonomy_Async
-

Assertions

-
-
IsTrue(ImportAsyncSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Imported taxonomy)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.TaxonomyModel
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/taxonomies/import
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Type: multipart/form-data; boundary="e0712e99-f928-4855-95cd-e403444624c7"
-
Request Body
--e0712e99-f928-4855-95cd-e403444624c7
-Content-Disposition: form-data; name=taxonomy; filename=taxonomy.json; filename*=utf-8''taxonomy.json
-
-{"taxonomy":{"uid":"taxonomy_import_async_ef5ae61d","name":"Imported Async","description":"Imported via Async"}}
---e0712e99-f928-4855-95cd-e403444624c7--
-
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/taxonomies/import' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Type: multipart/form-data; boundary="e0712e99-f928-4855-95cd-e403444624c7"' \
-  -d '--e0712e99-f928-4855-95cd-e403444624c7
-Content-Disposition: form-data; name=taxonomy; filename=taxonomy.json; filename*=utf-8'\'''\''taxonomy.json
-
-{"taxonomy":{"uid":"taxonomy_import_async_ef5ae61d","name":"Imported Async","description":"Imported via Async"}}
---e0712e99-f928-4855-95cd-e403444624c7--
-'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:00 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 1f17fc13-5a84-4000-9c74-589325767c74
-x-response-time: 28
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 295
-
Response Body -
{
-  "taxonomy": {
-    "uid": "taxonomy_import_async_ef5ae61d",
-    "name": "Imported Async",
-    "description": "Imported via Async",
-    "locale": "en-us",
-    "created_at": "2026-03-13T02:36:00.161Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:36:00.161Z",
-    "updated_by": "blt1930fc55e5669df9",
-    "terms_count": 0
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioTest015_Should_Import_Taxonomy_Async
ImportUidtaxonomy_import_async_ef5ae61d
-
Passed0.31s
-
✅ Test007_Should_Update_Taxonomy_Async
-

Assertions

-
-
IsTrue(UpdateAsyncSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Wrapper taxonomy)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.TaxonomyModel
-
-
-
-
AreEqual(UpdatedAsyncName)
-
-
Expected:
Taxonomy Integration Test Updated Async
-
Actual:
Taxonomy Integration Test Updated Async
-
-

HTTP Transactions

-
- -
PUThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 104
-Content-Type: application/json
-
Request Body
{"taxonomy": {"name":"Taxonomy Integration Test Updated Async","description":"Updated via UpdateAsync"}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 104' \
-  -H 'Content-Type: application/json' \
-  -d '{"taxonomy": {"name":"Taxonomy Integration Test Updated Async","description":"Updated via UpdateAsync"}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:57 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: a8cb585f-f709-4ac9-87d0-e3d8c635aa7f
-x-response-time: 33
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 313
-
Response Body -
{
-  "taxonomy": {
-    "uid": "taxonomy_integration_test_70bf770f",
-    "name": "Taxonomy Integration Test Updated Async",
-    "description": "Updated via UpdateAsync",
-    "locale": "en-us",
-    "created_at": "2026-03-13T02:35:54.784Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:35:57.042Z",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioTest007_Should_Update_Taxonomy_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
-
Passed0.35s
-
✅ Test016_Should_Create_Root_Term
-

Assertions

-
-
IsTrue(CreateTermSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Term in response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.TermModel
-
-
-
-
AreEqual(RootTermUid)
-
-
Expected:
term_root_4dd5037e
-
Actual:
term_root_4dd5037e
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 57
-Content-Type: application/json
-
Request Body
{"term": {"uid":"term_root_4dd5037e","name":"Root Term"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 57' \
-  -H 'Content-Type: application/json' \
-  -d '{"term": {"uid":"term_root_4dd5037e","name":"Root Term"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:00 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 8435a380-ece8-45cc-9bed-6dc2b868e671
-x-response-time: 40
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 196
-Content-Type: application/json; charset=utf-8
-Content-Length: 251
-
Response Body -
{
-  "term": {
-    "uid": "term_root_4dd5037e",
-    "name": "Root Term",
-    "locale": "en-us",
-    "parent_uid": null,
-    "depth": 1,
-    "created_at": "2026-03-13T02:36:00.465Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:36:00.465Z",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioTest016_Should_Create_Root_Term
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
-
Passed0.31s
-
✅ Test036_Should_Create_Term_Async
-

Assertions

-
-
IsTrue(CreateAsyncTermSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Term in response)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.TermModel
-
-

HTTP Transactions

-
- -
POSThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 93
-Content-Type: application/json
-
Request Body
{"term": {"uid":"term_async_15ce1b96","name":"Async Term","parent_uid":"term_root_4dd5037e"}}
-
cURL Command -
curl -X POST \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 93' \
-  -H 'Content-Type: application/json' \
-  -d '{"term": {"uid":"term_async_15ce1b96","name":"Async Term","parent_uid":"term_root_4dd5037e"}}'
- -
-
-
201 Created
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:07 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 28cac35e-bdce-41a5-84b2-affeb099c3e3
-x-response-time: 36
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 269
-
Response Body -
{
-  "term": {
-    "uid": "term_async_15ce1b96",
-    "name": "Async Term",
-    "locale": "en-us",
-    "parent_uid": "term_root_4dd5037e",
-    "depth": 2,
-    "created_at": "2026-03-13T02:36:07.868Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:36:07.868Z",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- Test Context - - - - - - - - - - - - - - - - -
TestScenarioTest036_Should_Create_Term_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
AsyncTermUidterm_async_15ce1b96
-
Passed0.31s
-
✅ Test034_Should_Search_Terms
-

Assertions

-
-
IsTrue(SearchTermsSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Terms or items in search response)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "uid": "term_root_4dd5037e",
-    "name": "Root Term Updated Async",
-    "locale": "en-us",
-    "parent_uid": null,
-    "depth": 1,
-    "created_at": "2026-03-13T02:36:00.465Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:36:02.824Z",
-    "updated_by": "blt1930fc55e5669df9",
-    "taxonomy_uid": "taxonomy_integration_test_70bf770f",
-    "ancestors": [
-      {
-        "uid": "taxonomy_integration_test_70bf770f",
-        "name": "Taxonomy Integration Test Updated Async",
-        "type": "TAXONOMY"
-      }
-    ]
-  }
-]
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/taxonomies/$all/terms?typeahead=Root
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/taxonomies/$all/terms?typeahead=Root' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:07 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 0d701902-e3c2-49ca-b8e3-537f0e9cce20
-x-response-time: 58
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 446
-
Response Body -
{
-  "terms": [
-    {
-      "uid": "term_root_4dd5037e",
-      "name": "Root Term Updated Async",
-      "locale": "en-us",
-      "parent_uid": null,
-      "depth": 1,
-      "created_at": "2026-03-13T02:36:00.465Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:36:02.824Z",
-      "updated_by": "blt1930fc55e5669df9",
-      "taxonomy_uid": "taxonomy_integration_test_70bf770f",
-      "ancestors": [
-        {
-          "uid": "taxonomy_integration_test_70bf770f",
-          "name": "Taxonomy Integration Test Updated Async",
-          "type": "TAXONOMY"
-        }
-      ]
-    }
-  ]
-}
-
- Test Context - - - - - - - - -
TestScenarioTest034_Should_Search_Terms
TaxonomyUidtaxonomy_integration_test_70bf770f
-
Passed0.34s
-
✅ Test010_Should_Get_Taxonomy_Locales_Async
-

Assertions

-
-
IsTrue(LocalesAsyncSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Taxonomies in locales response)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "uid": "taxonomy_integration_test_70bf770f",
-    "name": "Taxonomy Integration Test Updated Async",
-    "description": "Updated via UpdateAsync",
-    "locale": "en-us",
-    "created_at": "2026-03-13T02:35:54.784Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:35:57.042Z",
-    "updated_by": "blt1930fc55e5669df9",
-    "localized": true
-  }
-]
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/locales
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/locales' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:58 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 04f5093a-bf98-4b8f-825c-3af682cf17d2
-x-response-time: 77
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 334
-
Response Body -
{
-  "taxonomies": [
-    {
-      "uid": "taxonomy_integration_test_70bf770f",
-      "name": "Taxonomy Integration Test Updated Async",
-      "description": "Updated via UpdateAsync",
-      "locale": "en-us",
-      "created_at": "2026-03-13T02:35:54.784Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:35:57.042Z",
-      "updated_by": "blt1930fc55e5669df9",
-      "localized": true
-    }
-  ]
-}
-
- Test Context - - - - - - - - -
TestScenarioTest010_Should_Get_Taxonomy_Locales_Async
TaxonomyUidtaxonomy_integration_test_70bf770f
-
Passed0.35s
-
✅ Test004_Should_Update_Taxonomy
-

Assertions

-
-
IsTrue(UpdateSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Wrapper taxonomy)
-
-
Expected:
NotNull
-
Actual:
Contentstack.Management.Core.Models.TaxonomyModel
-
-
-
-
AreEqual(UpdatedName)
-
-
Expected:
Taxonomy Integration Test Updated
-
Actual:
Taxonomy Integration Test Updated
-
-
-
-
AreEqual(UpdatedDescription)
-
-
Expected:
Updated description
-
Actual:
Updated description
-
-

HTTP Transactions

-
- -
PUThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-Content-Length: 94
-Content-Type: application/json
-
Request Body
{"taxonomy": {"name":"Taxonomy Integration Test Updated","description":"Updated description"}}
-
cURL Command -
curl -X PUT \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg' \
-  -H 'Content-Length: 94' \
-  -H 'Content-Type: application/json' \
-  -d '{"taxonomy": {"name":"Taxonomy Integration Test Updated","description":"Updated description"}}'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:35:55 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: c248e578-125f-4fb9-9b88-2836d488d4a6
-x-response-time: 28
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 303
-
Response Body -
{
-  "taxonomy": {
-    "uid": "taxonomy_integration_test_70bf770f",
-    "name": "Taxonomy Integration Test Updated",
-    "description": "Updated description",
-    "locale": "en-us",
-    "created_at": "2026-03-13T02:35:54.784Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:35:55.810Z",
-    "updated_by": "blt1930fc55e5669df9"
-  }
-}
-
- Test Context - - - - - - - - -
TestScenarioTest004_Should_Update_Taxonomy
TaxonomyUidtaxonomy_integration_test_70bf770f
-
Passed0.29s
-
✅ Test020_Should_Query_Terms
-

Assertions

-
-
IsTrue(QueryTermsSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Terms in response)
-
-
Expected:
NotNull
-
Actual:
System.Collections.Generic.List`1[Contentstack.Management.Core.Models.TermModel]
-
-
-
-
IsTrue(TermsCount)
-
-
Expected:
True
-
Actual:
True
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:01 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 860647eb-35af-4da6-911e-304cb2deae19
-x-response-time: 38
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 199
-Content-Type: application/json; charset=utf-8
-Content-Length: 432
-
Response Body -
{
-  "terms": [
-    {
-      "uid": "term_root_4dd5037e",
-      "name": "Root Term",
-      "locale": "en-us",
-      "parent_uid": null,
-      "depth": 1,
-      "created_at": "2026-03-13T02:36:00.465Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:36:00.465Z",
-      "updated_by": "blt1930fc55e5669df9",
-      "taxonomy_uid": "taxonomy_integration_test_70bf770f",
-      "ancestors": [
-        {
-          "uid": "taxonomy_integration_test_70bf770f",
-          "name": "Taxonomy Integration Test Updated Async",
-          "type": "TAXONOMY"
-        }
-      ]
-    }
-  ]
-}
-
- Test Context - - - - - - - - -
TestScenarioTest020_Should_Query_Terms
TaxonomyUidtaxonomy_integration_test_70bf770f
-
Passed0.31s
-
✅ Test028_Should_Get_Term_Locales
-

Assertions

-
-
IsTrue(TermLocalesSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Terms in locales response)
-
-
Expected:
NotNull
-
Actual:
[
-  {
-    "uid": "term_root_4dd5037e",
-    "name": "Root Term Updated Async",
-    "locale": "en-us",
-    "parent_uid": null,
-    "depth": 1,
-    "created_at": "2026-03-13T02:36:00.465Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:36:02.824Z",
-    "updated_by": "blt1930fc55e5669df9",
-    "localized": true
-  },
-  {
-    "uid": "term_root_4dd5037e",
-    "name": "Root Term Updated Async",
-    "locale": "hi-in",
-    "parent_uid": null,
-    "depth": 1,
-    "created_at": "2026-03-13T02:36:00.465Z",
-    "created_by": "blt1930fc55e5669df9",
-    "updated_at": "2026-03-13T02:36:02.824Z",
-    "updated_by": "blt1930fc55e5669df9",
-    "localized": false
-  }
-]
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e/locales
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e/locales' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:04 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 9f865389-a9f4-4aa5-8097-9333dd9e56e0
-x-response-time: 62
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 198
-Content-Type: application/json; charset=utf-8
-Content-Length: 560
-
Response Body -
{
-  "terms": [
-    {
-      "uid": "term_root_4dd5037e",
-      "name": "Root Term Updated Async",
-      "locale": "en-us",
-      "parent_uid": null,
-      "depth": 1,
-      "created_at": "2026-03-13T02:36:00.465Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:36:02.824Z",
-      "updated_by": "blt1930fc55e5669df9",
-      "localized": true
-    },
-    {
-      "uid": "term_root_4dd5037e",
-      "name": "Root Term Updated Async",
-      "locale": "hi-in",
-      "parent_uid": null,
-      "depth": 1,
-      "created_at": "2026-03-13T02:36:00.465Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:36:02.824Z",
-      "updated_by": "blt1930fc55e5669df9",
-      "localized": false
-    }
-  ]
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioTest028_Should_Get_Term_Locales
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
-
Passed0.45s
-
✅ Test026_Should_Get_Term_Descendants
-

Assertions

-
-
IsTrue(DescendantsSuccess)
-
-
Expected:
True
-
Actual:
True
-
-
-
-
IsNotNull(Descendants response)
-
-
Expected:
NotNull
-
Actual:
{
-  "terms": [
-    {
-      "uid": "term_child_96d81ca7",
-      "name": "Child Term",
-      "locale": "en-us",
-      "parent_uid": "term_root_4dd5037e",
-      "depth": 2,
-      "created_at": "2026-03-13T02:36:00.765Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:36:00.765Z",
-      "updated_by": "blt1930fc55e5669df9"
-    }
-  ]
-}
-
-

HTTP Transactions

-
- -
GEThttps://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e/descendants
-
Request Headers
api_key: blt1bca31da998b57a9
-authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X GET \
-  'https://api.contentstack.io/v3/taxonomies/taxonomy_integration_test_70bf770f/terms/term_root_4dd5037e/descendants' \
-  -H 'api_key: blt1bca31da998b57a9' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:03 GMT
-Connection: keep-alive
-Access-Control-Allow-Origin: *
-X-Request-ID: 72b8149c-71a8-4465-8392-ff6bd7cf6992
-x-response-time: 47
-Server: contentstack
-x-organization-name: SDK org
-x-organization-uid: blt8d282118e2094bb8
-x-ratelimit-limit: 200
-x-ratelimit-remaining: 197
-Content-Type: application/json; charset=utf-8
-Content-Length: 272
-
Response Body -
{
-  "terms": [
-    {
-      "uid": "term_child_96d81ca7",
-      "name": "Child Term",
-      "locale": "en-us",
-      "parent_uid": "term_root_4dd5037e",
-      "depth": 2,
-      "created_at": "2026-03-13T02:36:00.765Z",
-      "created_by": "blt1930fc55e5669df9",
-      "updated_at": "2026-03-13T02:36:00.765Z",
-      "updated_by": "blt1930fc55e5669df9"
-    }
-  ]
-}
-
- Test Context - - - - - - - - - - - - -
TestScenarioTest026_Should_Get_Term_Descendants
TaxonomyUidtaxonomy_integration_test_70bf770f
RootTermUidterm_root_4dd5037e
-
Passed0.31s
-
-
- -
-
-
- - Contentstack999_LogoutTest -
-
- 1 passed · - 0 failed · - 0 skipped · - 1 total -
-
-
- - - - - - - - - - - - - - - -
Test NameStatusDuration
-
✅ Test001_Should_Return_Success_On_Logout
-

Assertions

-
-
IsNull(Authtoken)
-
-
Expected:
null
-
Actual:
null
-
-
-
-
IsNotNull(loginResponse)
-
-
Expected:
NotNull
-
Actual:
{"notice":"You've logged out successfully."}
-
-

HTTP Transactions

-
- -
DELETEhttps://api.contentstack.io/v3/user-session
-
Request Headers
authtoken: bltf12f72b6cb204c70
-X-User-Agent: contentstack-management-dotnet/0.5.0
-User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20
-Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg
-
cURL Command -
curl -X DELETE \
-  'https://api.contentstack.io/v3/user-session' \
-  -H 'authtoken: bltf12f72b6cb204c70' \
-  -H 'X-User-Agent: contentstack-management-dotnet/0.5.0' \
-  -H 'User-Agent: contentstack-management-dotnet/0.5.0, DotNet/7.0.20' \
-  -H 'Accept: image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg, image/jpeg'
- -
-
-
200 OK
-
Response Headers
Date: Fri, 13 Mar 2026 02:36:10 GMT
-Transfer-Encoding: chunked
-Connection: keep-alive
-Vary: Accept-Encoding
-Set-Cookie: authtoken=; path=/; expires=Thu, 01 Jan 1970 00:00:00 GMT; httponly
-clear-site-data: *
-x-runtime: 25ms
-X-Request-ID: 9eae58b6-9f9f-4720-b7e6-45176ff279b0
-Strict-Transport-Security: max-age=31536000; includeSubDomains
-Server: contentstack
-Content-Type: application/json
-
Response Body -
{
-  "notice": "You've logged out successfully."
-}
-
- Test Context - - - - -
TestScenarioLogout
-
Passed0.30s
-
-
-
- - - -
\ No newline at end of file From ef50358b3b6c0c15f34540841c552c9a28a2a647 Mon Sep 17 00:00:00 2001 From: OMpawar-21 Date: Fri, 13 Mar 2026 11:33:18 +0530 Subject: [PATCH 3/8] feat: Integration Test Report Generator ### Summary Adds an automated HTML report generator for the .NET CMA SDK integration tests. ### Changes - Test helpers for capturing HTTP traffic, assertions, and test context - Python script to parse TRX, Cobertura coverage, and structured output into an HTML report - Shell script to orchestrate test execution and report generation - Updated integration test files to use structured logging ### Report Includes - Test summary (passed, failed, skipped, duration) - Global and file-wise code coverage - Per-test drill-down with assertions, HTTP requests/responses, and cURL commands --- Scripts/generate_integration_test_report.py | 167 ++++++++++++++++++++ 1 file changed, 167 insertions(+) diff --git a/Scripts/generate_integration_test_report.py b/Scripts/generate_integration_test_report.py index 23dd69a..f97cb95 100644 --- a/Scripts/generate_integration_test_report.py +++ b/Scripts/generate_integration_test_report.py @@ -33,6 +33,7 @@ def __init__(self, trx_path, coverage_path=None): 'statements_pct': 0, 'functions_pct': 0 } + self.file_coverage = [] # ──────────────────── TRX PARSING ──────────────────── @@ -161,9 +162,100 @@ def parse_coverage(self): covered_methods += 1 if total_methods > 0: self.coverage['functions_pct'] = (covered_methods / total_methods) * 100 + + self._parse_file_coverage(root) except Exception as e: print(f"Warning: Could not parse coverage file: {e}") + def _parse_file_coverage(self, root): + file_data = {} + for cls in root.iter('class'): + filename = cls.get('filename', '') + if not filename: + continue + + if filename not in file_data: + file_data[filename] = { + 'lines': {}, + 'branches_covered': 0, + 'branches_total': 0, + 'methods_total': 0, + 'methods_covered': 0, + } + + entry = file_data[filename] + + for method in cls.findall('methods/method'): + entry['methods_total'] += 1 + if float(method.get('line-rate', 0)) > 0: + entry['methods_covered'] += 1 + + for line in cls.iter('line'): + num = int(line.get('number', 0)) + hits = int(line.get('hits', 0)) + is_branch = line.get('branch', 'False').lower() == 'true' + + if num in entry['lines']: + entry['lines'][num]['hits'] = max(entry['lines'][num]['hits'], hits) + if is_branch: + entry['lines'][num]['is_branch'] = True + cond = line.get('condition-coverage', '') + covered, total = self._parse_condition_coverage(cond) + entry['lines'][num]['br_covered'] = max(entry['lines'][num].get('br_covered', 0), covered) + entry['lines'][num]['br_total'] = max(entry['lines'][num].get('br_total', 0), total) + else: + br_covered, br_total = 0, 0 + if is_branch: + cond = line.get('condition-coverage', '') + br_covered, br_total = self._parse_condition_coverage(cond) + entry['lines'][num] = { + 'hits': hits, + 'is_branch': is_branch, + 'br_covered': br_covered, + 'br_total': br_total, + } + + self.file_coverage = [] + for filename in sorted(file_data.keys()): + entry = file_data[filename] + lines_total = len(entry['lines']) + lines_covered = sum(1 for l in entry['lines'].values() if l['hits'] > 0) + uncovered = sorted(num for num, l in entry['lines'].items() if l['hits'] == 0) + + br_total = sum(l.get('br_total', 0) for l in entry['lines'].values() if l.get('is_branch')) + br_covered = sum(l.get('br_covered', 0) for l in entry['lines'].values() if l.get('is_branch')) + + self.file_coverage.append({ + 'filename': filename, + 'lines_pct': (lines_covered / lines_total * 100) if lines_total > 0 else 100, + 'statements_pct': (lines_covered / lines_total * 100) if lines_total > 0 else 100, + 'branches_pct': (br_covered / br_total * 100) if br_total > 0 else 100, + 'functions_pct': (entry['methods_covered'] / entry['methods_total'] * 100) if entry['methods_total'] > 0 else 100, + 'uncovered_lines': uncovered, + }) + + @staticmethod + def _parse_condition_coverage(cond_str): + m = re.match(r'(\d+)%\s*\((\d+)/(\d+)\)', cond_str) + if m: + return int(m.group(2)), int(m.group(3)) + return 0, 0 + + @staticmethod + def _collapse_line_ranges(lines): + if not lines: + return '' + ranges = [] + start = prev = lines[0] + for num in lines[1:]: + if num == prev + 1: + prev = num + else: + ranges.append(f"{start}-{prev}" if start != prev else str(start)) + start = prev = num + ranges.append(f"{start}-{prev}" if start != prev else str(start)) + return ','.join(ranges) + # ──────────────────── STRUCTURED OUTPUT ──────────────────── def _parse_structured_output(self, text): @@ -252,6 +344,7 @@ def generate_html(self, output_path): html += self._html_pass_rate(pass_rate) html += self._html_coverage_table() html += self._html_test_navigation(by_file) + html += self._html_file_coverage_table() html += self._html_footer() html += self._html_scripts() html += "" @@ -331,6 +424,17 @@ def _html_head(self): .cov-good {{ color: #28a745; }} .cov-warn {{ color: #ffc107; }} .cov-bad {{ color: #dc3545; }} + .file-coverage-section {{ margin-top: 0; border-top: 3px solid #e9ecef; }} + .file-cov-table td {{ font-size: 0.95em; font-weight: 600; padding: 10px 15px; border-bottom: 1px solid #e9ecef; }} + .file-cov-table tr:last-child td {{ border-bottom: none; }} + .file-cov-table tbody tr:hover {{ background: #f8f9fa; }} + .fc-summary-row {{ background: #f0f2ff; }} + .fc-summary-row td {{ border-bottom: 2px solid #667eea !important; }} + .fc-file-col {{ text-align: left !important; }} + .fc-file-cell {{ text-align: left !important; font-family: 'Consolas', 'Monaco', monospace; font-size: 0.88em !important; }} + .fc-dir {{ color: #888; }} + .fc-uncov-col {{ text-align: left !important; }} + .fc-uncov-cell {{ text-align: left !important; font-family: 'Consolas', 'Monaco', monospace; font-size: 0.82em !important; color: #dc3545; font-weight: 400 !important; }} .test-results {{ padding: 40px; }} .test-results > h2 {{ margin-bottom: 30px; font-size: 2em; }} .category {{ margin-bottom: 30px; }} @@ -474,6 +578,69 @@ def cov_class(pct): """ + def _html_file_coverage_table(self): + if not self.file_coverage: + return "" + + def cov_class(pct): + if pct >= 80: return 'cov-good' + if pct >= 50: return 'cov-warn' + return 'cov-bad' + + c = self.coverage + html = """ +
+

File-wise Code Coverage

+ + + + + + + +""" + html += f""" + + + + + + + +""" + + for fc in self.file_coverage: + uncovered = fc['uncovered_lines'] + if len(uncovered) == 0: + uncov_str = '' + elif len(uncovered) == 1: + uncov_str = str(uncovered[0]) + else: + uncov_str = f"{uncovered[0]}-{uncovered[-1]}" + display_name = fc['filename'] + parts = display_name.replace('\\', '/').rsplit('/', 1) + if len(parts) == 2: + dir_part, base = parts + display_name = f'{self._esc(dir_part)}/{self._esc(base)}' + else: + display_name = self._esc(display_name) + + html += f""" + + + + + + + +""" + + html += """ +
File% Stmts% Branch% Funcs% LinesUncovered Line #s
All files{c['statements_pct']:.1f}%{c['branches_pct']:.1f}%{c['functions_pct']:.1f}%{c['lines_pct']:.1f}%
{display_name}{fc['statements_pct']:.1f}%{fc['branches_pct']:.1f}%{fc['functions_pct']:.1f}%{fc['lines_pct']:.1f}%{self._esc(uncov_str)}
+
+""" + return html + def _html_test_navigation(self, by_file): html = '

Test Results by Integration File

' From 3aa868ef5f14a0d83e0c9ec1275b194c60c5e05d Mon Sep 17 00:00:00 2001 From: OMpawar-21 Date: Mon, 16 Mar 2026 10:28:37 +0530 Subject: [PATCH 4/8] feat(5433): Retrieve auth token exclusively via Login API feat: Retrieve auth token exclusively via Login API MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ### Summary - Removed hardcoded `Authtoken` from `appSettings.json` to eliminate the security vulnerability of storing tokens in config files. - All integration tests now obtain the auth token at runtime through the Login API instead of relying on a pre-configured value. - Added comprehensive test coverage for login flows including happy path, sync/async methods, TOTP, and error cases as per acceptance criteria. ### Test Plan - [ ] Login sync/async — happy path - [ ] Login error cases — wrong credentials, null credentials, already logged in - [ ] TOTP flow — valid/invalid MFA secret, explicit token override - [ ] Logout sync/async after login - [ ] All existing integration tests pass with runtime auth --- .../Contentstack.cs | 28 ++- .../Contentstack001_LoginTest.cs | 226 ++++++++++++++++-- .../Contentstack002_OrganisationTest.cs | 48 ++-- .../Contentstack003_StackTest.cs | 40 +++- .../Contentstack004_ReleaseTest.cs | 18 +- .../Contentstack011_GlobalFieldTest.cs | 21 +- .../Contentstack012_ContentTypeTest.cs | 26 +- .../Contentstack012_NestedGlobalFieldTest.cs | 18 +- .../Contentstack013_AssetTest.cs | 18 +- .../Contentstack014_EntryTest.cs | 18 +- .../Contentstack015_BulkOperationTest.cs | 13 +- .../Contentstack016_DeliveryTokenTest.cs | 40 ++-- .../Contentstack017_TaxonomyTest.cs | 18 +- .../Contentstack999_LogoutTest.cs | 63 ++++- 14 files changed, 480 insertions(+), 115 deletions(-) diff --git a/Contentstack.Management.Core.Tests/Contentstack.cs b/Contentstack.Management.Core.Tests/Contentstack.cs index e69153c..7ff2492 100644 --- a/Contentstack.Management.Core.Tests/Contentstack.cs +++ b/Contentstack.Management.Core.Tests/Contentstack.cs @@ -16,17 +16,6 @@ namespace Contentstack.Management.Core.Tests { public class Contentstack { - private static readonly Lazy - client = - new Lazy(() => - { - ContentstackClientOptions options = Config.GetSection("Contentstack").Get(); - var handler = new LoggingHttpHandler(); - var httpClient = new HttpClient(handler); - return new ContentstackClient(httpClient, options); - }); - - private static readonly Lazy config = new Lazy(() => @@ -46,13 +35,28 @@ private static readonly Lazy return Config.GetSection("Contentstack:Organization").Get(); }); - public static ContentstackClient Client { get { return client.Value; } } public static IConfigurationRoot Config{ get { return config.Value; } } public static NetworkCredential Credential { get { return credential.Value; } } public static OrganizationModel Organization { get { return organization.Value; } } public static StackModel Stack { get; set; } + /// + /// Creates a new ContentstackClient, logs in via the Login API (never from config), + /// and returns the authenticated client. Callers are responsible for calling Logout() + /// when done. + /// + public static ContentstackClient CreateAuthenticatedClient() + { + ContentstackClientOptions options = Config.GetSection("Contentstack").Get(); + options.Authtoken = null; + var handler = new LoggingHttpHandler(); + var httpClient = new HttpClient(handler); + var client = new ContentstackClient(httpClient, options); + client.Login(Credential); + return client; + } + public static T serialize(JsonSerializer serializer, string filePath) { string response = GetResourceText(filePath); diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack001_LoginTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack001_LoginTest.cs index eef6538..766dd7b 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack001_LoginTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack001_LoginTest.cs @@ -5,9 +5,6 @@ using Contentstack.Management.Core.Models; using Contentstack.Management.Core.Tests.Helpers; using Microsoft.VisualStudio.TestTools.UnitTesting; -using Microsoft.Extensions.Configuration; -using Microsoft.Extensions.Options; -using System.Threading; using Contentstack.Management.Core.Queryable; using Newtonsoft.Json.Linq; @@ -16,7 +13,6 @@ namespace Contentstack.Management.Core.Tests.IntegrationTest [TestClass] public class Contentstack001_LoginTest { - private readonly IConfigurationRoot _configuration = new ConfigurationBuilder().AddJsonFile("appsettings.json").Build(); private static ContentstackClient CreateClientWithLogging() { @@ -48,25 +44,24 @@ public void Test001_Should_Return_Failuer_On_Wrong_Login_Credentials() [TestMethod] [DoNotParallelize] - public void Test002_Should_Return_Failuer_On_Wrong_Async_Login_Credentials() + public async System.Threading.Tasks.Task Test002_Should_Return_Failuer_On_Wrong_Async_Login_Credentials() { TestOutputLogger.LogContext("TestScenario", "WrongCredentialsAsync"); ContentstackClient client = CreateClientWithLogging(); NetworkCredential credentials = new NetworkCredential("mock_user", "mock_pasword"); - var response = client.LoginAsync(credentials); - - response.ContinueWith((t) => - { - if (t.IsCompleted && t.Status == System.Threading.Tasks.TaskStatus.Faulted) - { - ContentstackErrorException errorException = t.Exception.InnerException as ContentstackErrorException; - AssertLogger.AreEqual(HttpStatusCode.UnprocessableEntity, errorException.StatusCode, "StatusCode"); - AssertLogger.AreEqual("Looks like your email or password is invalid. Please try again or reset your password.", errorException.Message, "Message"); - AssertLogger.AreEqual("Looks like your email or password is invalid. Please try again or reset your password.", errorException.ErrorMessage, "ErrorMessage"); - AssertLogger.AreEqual(104, errorException.ErrorCode, "ErrorCode"); - } - }); - Thread.Sleep(3000); + + try + { + await client.LoginAsync(credentials); + AssertLogger.Fail("Expected exception for wrong credentials"); + } + catch (ContentstackErrorException errorException) + { + AssertLogger.AreEqual(HttpStatusCode.UnprocessableEntity, errorException.StatusCode, "StatusCode"); + AssertLogger.AreEqual("Looks like your email or password is invalid. Please try again or reset your password.", errorException.Message, "Message"); + AssertLogger.AreEqual("Looks like your email or password is invalid. Please try again or reset your password.", errorException.ErrorMessage, "ErrorMessage"); + AssertLogger.AreEqual(104, errorException.ErrorCode, "ErrorCode"); + } } [TestMethod] @@ -304,5 +299,198 @@ public void Test011_Should_Prefer_Explicit_Token_Over_MfaSecret() AssertLogger.Fail($"Unexpected exception type: {e.GetType().Name} - {e.Message}"); } } + + [TestMethod] + [DoNotParallelize] + public void Test012_Should_Throw_InvalidOperation_When_Already_LoggedIn_Sync() + { + TestOutputLogger.LogContext("TestScenario", "AlreadyLoggedInSync"); + ContentstackClient client = CreateClientWithLogging(); + + try + { + client.Login(Contentstack.Credential); + AssertLogger.IsNotNull(client.contentstackOptions.Authtoken, "Authtoken"); + + AssertLogger.ThrowsException(() => + client.Login(Contentstack.Credential), "AlreadyLoggedIn"); + + client.Logout(); + } + catch (Exception e) + { + AssertLogger.Fail($"Unexpected exception: {e.GetType().Name} - {e.Message}"); + } + } + + [TestMethod] + [DoNotParallelize] + public async System.Threading.Tasks.Task Test013_Should_Throw_InvalidOperation_When_Already_LoggedIn_Async() + { + TestOutputLogger.LogContext("TestScenario", "AlreadyLoggedInAsync"); + ContentstackClient client = CreateClientWithLogging(); + + try + { + await client.LoginAsync(Contentstack.Credential); + AssertLogger.IsNotNull(client.contentstackOptions.Authtoken, "Authtoken"); + + await System.Threading.Tasks.Task.Run(() => + AssertLogger.ThrowsException(() => + client.LoginAsync(Contentstack.Credential).GetAwaiter().GetResult(), "AlreadyLoggedInAsync")); + + await client.LogoutAsync(); + } + catch (Exception e) + { + AssertLogger.Fail($"Unexpected exception: {e.GetType().Name} - {e.Message}"); + } + } + + [TestMethod] + [DoNotParallelize] + public void Test014_Should_Throw_ArgumentNullException_For_Null_Credentials_Sync() + { + TestOutputLogger.LogContext("TestScenario", "NullCredentialsSync"); + ContentstackClient client = CreateClientWithLogging(); + + AssertLogger.ThrowsException(() => + client.Login(null), "NullCredentials"); + } + + [TestMethod] + [DoNotParallelize] + public void Test015_Should_Throw_ArgumentNullException_For_Null_Credentials_Async() + { + TestOutputLogger.LogContext("TestScenario", "NullCredentialsAsync"); + ContentstackClient client = CreateClientWithLogging(); + + AssertLogger.ThrowsException(() => + client.LoginAsync(null).GetAwaiter().GetResult(), "NullCredentialsAsync"); + } + + [TestMethod] + [DoNotParallelize] + public async System.Threading.Tasks.Task Test016_Should_Throw_ArgumentException_For_Invalid_MfaSecret_Async() + { + TestOutputLogger.LogContext("TestScenario", "InvalidMfaSecretAsync"); + ContentstackClient client = CreateClientWithLogging(); + NetworkCredential credentials = new NetworkCredential("test_user", "test_password"); + string invalidMfaSecret = "INVALID_BASE32_SECRET!@#"; + + try + { + await client.LoginAsync(credentials, null, invalidMfaSecret); + AssertLogger.Fail("Expected ArgumentException for invalid MFA secret"); + } + catch (ArgumentException) + { + AssertLogger.IsTrue(true, "ArgumentException thrown as expected for async"); + } + catch (Exception e) + { + AssertLogger.Fail($"Unexpected exception type: {e.GetType().Name} - {e.Message}"); + } + } + + [TestMethod] + [DoNotParallelize] + public void Test017_Should_Handle_Valid_Credentials_With_TfaToken_Sync() + { + TestOutputLogger.LogContext("TestScenario", "WrongTfaTokenSync"); + ContentstackClient client = CreateClientWithLogging(); + + try + { + client.Login(Contentstack.Credential, "000000"); + // Account does not have 2FA enabled — tfa_token is ignored by the API and login succeeds. + // This is a valid outcome; assert token is set and clean up. + AssertLogger.IsNotNull(client.contentstackOptions.Authtoken, "Authtoken"); + client.Logout(); + } + catch (ContentstackErrorException errorException) + { + // Account has 2FA enabled — wrong token is correctly rejected with 422. + AssertLogger.AreEqual(HttpStatusCode.UnprocessableEntity, errorException.StatusCode, "StatusCode"); + AssertLogger.IsTrue(errorException.ErrorCode > 0, "TfaErrorCode"); + } + catch (Exception e) + { + AssertLogger.Fail($"Unexpected exception type: {e.GetType().Name} - {e.Message}"); + } + } + + [TestMethod] + [DoNotParallelize] + public async System.Threading.Tasks.Task Test018_Should_Handle_Valid_Credentials_With_TfaToken_Async() + { + TestOutputLogger.LogContext("TestScenario", "WrongTfaTokenAsync"); + ContentstackClient client = CreateClientWithLogging(); + + try + { + await client.LoginAsync(Contentstack.Credential, "000000"); + // Account does not have 2FA enabled — tfa_token is ignored by the API and login succeeds. + // This is a valid outcome; assert token is set and clean up. + AssertLogger.IsNotNull(client.contentstackOptions.Authtoken, "Authtoken"); + await client.LogoutAsync(); + } + catch (ContentstackErrorException errorException) + { + // Account has 2FA enabled — wrong token is correctly rejected with 422. + AssertLogger.AreEqual(HttpStatusCode.UnprocessableEntity, errorException.StatusCode, "StatusCode"); + AssertLogger.IsTrue(errorException.ErrorCode > 0, "TfaErrorCodeAsync"); + } + catch (Exception e) + { + AssertLogger.Fail($"Unexpected exception type: {e.GetType().Name} - {e.Message}"); + } + } + + [TestMethod] + [DoNotParallelize] + public void Test019_Should_Not_Include_TfaToken_When_MfaSecret_Is_Empty_Sync() + { + TestOutputLogger.LogContext("TestScenario", "EmptyMfaSecretSync"); + ContentstackClient client = CreateClientWithLogging(); + NetworkCredential credentials = new NetworkCredential("mock_user", "mock_password"); + + try + { + client.Login(credentials, null, ""); + } + catch (ContentstackErrorException errorException) + { + AssertLogger.AreEqual(HttpStatusCode.UnprocessableEntity, errorException.StatusCode, "StatusCode"); + AssertLogger.AreEqual(104, errorException.ErrorCode, "ErrorCode"); + } + catch (Exception e) + { + AssertLogger.Fail($"Unexpected exception type: {e.GetType().Name} - {e.Message}"); + } + } + + [TestMethod] + [DoNotParallelize] + public async System.Threading.Tasks.Task Test020_Should_Not_Include_TfaToken_When_MfaSecret_Is_Null_Async() + { + TestOutputLogger.LogContext("TestScenario", "NullMfaSecretAsync"); + ContentstackClient client = CreateClientWithLogging(); + NetworkCredential credentials = new NetworkCredential("mock_user", "mock_password"); + + try + { + await client.LoginAsync(credentials, null, null); + } + catch (ContentstackErrorException errorException) + { + AssertLogger.AreEqual(HttpStatusCode.UnprocessableEntity, errorException.StatusCode, "StatusCode"); + AssertLogger.AreEqual(104, errorException.ErrorCode, "ErrorCode"); + } + catch (Exception e) + { + AssertLogger.Fail($"Unexpected exception type: {e.GetType().Name} - {e.Message}"); + } + } } } diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack002_OrganisationTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack002_OrganisationTest.cs index 3d0d1d1..354278a 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack002_OrganisationTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack002_OrganisationTest.cs @@ -13,6 +13,7 @@ namespace Contentstack.Management.Core.Tests.IntegrationTest [TestClass] public class Contentstack002_OrganisationTest { + private static ContentstackClient _client; private double _count; static string RoleUID = ""; static string EmailSync = "testcs@contentstack.com"; @@ -21,6 +22,19 @@ public class Contentstack002_OrganisationTest static string InviteIDAsync = ""; private readonly IFixture _fixture = new Fixture(); + [ClassInitialize] + public static void ClassInitialize(TestContext context) + { + _client = Contentstack.CreateAuthenticatedClient(); + } + + [ClassCleanup] + public static void ClassCleanup() + { + try { _client?.Logout(); } catch { } + _client = null; + } + [TestMethod] [DoNotParallelize] public void Test001_Should_Return_All_Organizations() @@ -28,7 +42,7 @@ public void Test001_Should_Return_All_Organizations() TestOutputLogger.LogContext("TestScenario", "GetAllOrganizations"); try { - Organization organization = Contentstack.Client.Organization(); + Organization organization = _client.Organization(); ContentstackResponse contentstackResponse = organization.GetOrganizations(); @@ -50,7 +64,7 @@ public async System.Threading.Tasks.Task Test002_Should_Return_All_Organizations TestOutputLogger.LogContext("TestScenario", "GetAllOrganizationsAsync"); try { - Organization organization = Contentstack.Client.Organization(); + Organization organization = _client.Organization(); ContentstackResponse contentstackResponse = await organization.GetOrganizationsAsync(); @@ -73,7 +87,7 @@ public void Test003_Should_Return_With_Skipping_Organizations() TestOutputLogger.LogContext("TestScenario", "SkipOrganizations"); try { - Organization organization = Contentstack.Client.Organization(); + Organization organization = _client.Organization(); ParameterCollection collection = new ParameterCollection(); collection.Add("skip", 4); ContentstackResponse contentstackResponse = organization.GetOrganizations(collection); @@ -98,7 +112,7 @@ public void Test004_Should_Return_Organization_With_UID() { var org = Contentstack.Organization; TestOutputLogger.LogContext("OrganizationUid", org.Uid); - Organization organization = Contentstack.Client.Organization(org.Uid); + Organization organization = _client.Organization(org.Uid); ContentstackResponse contentstackResponse = organization.GetOrganizations(); @@ -124,7 +138,7 @@ public void Test005_Should_Return_Organization_With_UID_Include_Plan() try { var org = Contentstack.Organization; - Organization organization = Contentstack.Client.Organization(org.Uid); + Organization organization = _client.Organization(org.Uid); ParameterCollection collection = new ParameterCollection(); collection.Add("include_plan", true); @@ -150,7 +164,7 @@ public void Test006_Should_Return_Organization_Roles() try { var org = Contentstack.Organization; - Organization organization = Contentstack.Client.Organization(org.Uid); + Organization organization = _client.Organization(org.Uid); ContentstackResponse contentstackResponse = organization.Roles(); @@ -175,7 +189,7 @@ public async System.Threading.Tasks.Task Test007_Should_Return_Organization_Role try { var org = Contentstack.Organization; - Organization organization = Contentstack.Client.Organization(org.Uid); + Organization organization = _client.Organization(org.Uid); ContentstackResponse contentstackResponse = await organization.RolesAsync(); @@ -198,7 +212,7 @@ public void Test008_Should_Add_User_To_Organization() try { var org = Contentstack.Organization; - Organization organization = Contentstack.Client.Organization(org.Uid); + Organization organization = _client.Organization(org.Uid); UserInvitation invitation = new UserInvitation() { Email = EmailSync, @@ -230,7 +244,7 @@ public async System.Threading.Tasks.Task Test009_Should_Add_User_To_Organization try { var org = Contentstack.Organization; - Organization organization = Contentstack.Client.Organization(org.Uid); + Organization organization = _client.Organization(org.Uid); UserInvitation invitation = new UserInvitation() { Email = EmailAsync, @@ -261,7 +275,7 @@ public void Test010_Should_Resend_Invite() try { var org = Contentstack.Organization; - Organization organization = Contentstack.Client.Organization(org.Uid); + Organization organization = _client.Organization(org.Uid); ContentstackResponse contentstackResponse = organization.ResendInvitation(InviteID); @@ -284,7 +298,7 @@ public async System.Threading.Tasks.Task Test011_Should_Resend_Invite() try { var org = Contentstack.Organization; - Organization organization = Contentstack.Client.Organization(org.Uid); + Organization organization = _client.Organization(org.Uid); ContentstackResponse contentstackResponse = await organization.ResendInvitationAsync(InviteIDAsync); var response = contentstackResponse.OpenJObjectResponse(); @@ -306,7 +320,7 @@ public void Test012_Should_Remove_User_From_Organization() try { var org = Contentstack.Organization; - Organization organization = Contentstack.Client.Organization(org.Uid); + Organization organization = _client.Organization(org.Uid); ContentstackResponse contentstackResponse = organization.RemoveUser(new System.Collections.Generic.List() { EmailSync } ); @@ -329,7 +343,7 @@ public async System.Threading.Tasks.Task Test013_Should_Remove_User_From_Organiz try { var org = Contentstack.Organization; - Organization organization = Contentstack.Client.Organization(org.Uid); + Organization organization = _client.Organization(org.Uid); ContentstackResponse contentstackResponse = await organization.RemoveUserAsync(new System.Collections.Generic.List() { EmailAsync }); var response = contentstackResponse.OpenJObjectResponse(); @@ -351,7 +365,7 @@ public void Test014_Should_Get_All_Invites() try { var org = Contentstack.Organization; - Organization organization = Contentstack.Client.Organization(org.Uid); + Organization organization = _client.Organization(org.Uid); ContentstackResponse contentstackResponse = organization.GetInvitations(); @@ -376,7 +390,7 @@ public async System.Threading.Tasks.Task Test015_Should_Get_All_Invites_Async() try { var org = Contentstack.Organization; - Organization organization = Contentstack.Client.Organization(org.Uid); + Organization organization = _client.Organization(org.Uid); ContentstackResponse contentstackResponse = await organization.GetInvitationsAsync(); var response = contentstackResponse.OpenJObjectResponse(); @@ -399,7 +413,7 @@ public void Test016_Should_Get_All_Stacks() try { var org = Contentstack.Organization; - Organization organization = Contentstack.Client.Organization(org.Uid); + Organization organization = _client.Organization(org.Uid); ContentstackResponse contentstackResponse = organization.GetStacks(); @@ -424,7 +438,7 @@ public async System.Threading.Tasks.Task Test017_Should_Get_All_Stacks_Async() try { var org = Contentstack.Organization; - Organization organization = Contentstack.Client.Organization(org.Uid); + Organization organization = _client.Organization(org.Uid); ContentstackResponse contentstackResponse = await organization.GetStacksAsync(); var response = contentstackResponse.OpenJObjectResponse(); diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack003_StackTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack003_StackTest.cs index bcfe77b..eb4ba94 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack003_StackTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack003_StackTest.cs @@ -11,6 +11,7 @@ namespace Contentstack.Management.Core.Tests.IntegrationTest [TestClass] public class Contentstack003_StackTest { + private static ContentstackClient _client; private readonly string _locale = "en-us"; private string _stackName = "DotNet Management Stack"; private string _updatestackName = "DotNet Management SDK Stack"; @@ -18,6 +19,19 @@ public class Contentstack003_StackTest private OrganizationModel _org = Contentstack.Organization; + [ClassInitialize] + public static void ClassInitialize(TestContext context) + { + _client = Contentstack.CreateAuthenticatedClient(); + } + + [ClassCleanup] + public static void ClassCleanup() + { + try { _client?.Logout(); } catch { } + _client = null; + } + [TestMethod] [DoNotParallelize] public void Test001_Should_Return_All_Stacks() @@ -25,7 +39,7 @@ public void Test001_Should_Return_All_Stacks() TestOutputLogger.LogContext("TestScenario", "ReturnAllStacks"); try { - Stack stack = Contentstack.Client.Stack(); + Stack stack = _client.Stack(); ContentstackResponse contentstackResponse = stack.GetAll(); @@ -45,7 +59,7 @@ public async System.Threading.Tasks.Task Test002_Should_Return_All_StacksAsync() TestOutputLogger.LogContext("TestScenario", "ReturnAllStacksAsync"); try { - Stack stack = Contentstack.Client.Stack(); + Stack stack = _client.Stack(); ContentstackResponse contentstackResponse = await stack.GetAllAsync(); @@ -66,7 +80,7 @@ public void Test003_Should_Create_Stack() TestOutputLogger.LogContext("TestScenario", "CreateStack"); try { - Stack stack = Contentstack.Client.Stack(); + Stack stack = _client.Stack(); ContentstackResponse contentstackResponse = stack.Create(_stackName, _locale, _org.Uid); var response = contentstackResponse.OpenJObjectResponse(); @@ -94,7 +108,7 @@ public void Test004_Should_Update_Stack() TestOutputLogger.LogContext("StackApiKey", Contentstack.Stack.APIKey); try { - Stack stack = Contentstack.Client.Stack(Contentstack.Stack.APIKey); + Stack stack = _client.Stack(Contentstack.Stack.APIKey); ContentstackResponse contentstackResponse = stack.Update(_updatestackName); var response = contentstackResponse.OpenJObjectResponse(); @@ -124,7 +138,7 @@ public async System.Threading.Tasks.Task Test005_Should_Update_Stack_Async() TestOutputLogger.LogContext("StackApiKey", Contentstack.Stack.APIKey); try { - Stack stack = Contentstack.Client.Stack(Contentstack.Stack.APIKey); + Stack stack = _client.Stack(Contentstack.Stack.APIKey); ContentstackResponse contentstackResponse = await stack.UpdateAsync(_updatestackName, _description); var response = contentstackResponse.OpenJObjectResponse(); @@ -152,7 +166,7 @@ public void Test006_Should_Fetch_Stack() TestOutputLogger.LogContext("StackApiKey", Contentstack.Stack.APIKey); try { - Stack stack = Contentstack.Client.Stack(Contentstack.Stack.APIKey); + Stack stack = _client.Stack(Contentstack.Stack.APIKey); ContentstackResponse contentstackResponse = stack.Fetch(); var response = contentstackResponse.OpenJObjectResponse(); @@ -179,7 +193,7 @@ public async System.Threading.Tasks.Task Test007_Should_Fetch_StackAsync() TestOutputLogger.LogContext("StackApiKey", Contentstack.Stack.APIKey); try { - Stack stack = Contentstack.Client.Stack(Contentstack.Stack.APIKey); + Stack stack = _client.Stack(Contentstack.Stack.APIKey); ContentstackResponse contentstackResponse = await stack.FetchAsync(); var response = contentstackResponse.OpenJObjectResponse(); @@ -206,7 +220,7 @@ public void Test008_Add_Stack_Settings() TestOutputLogger.LogContext("StackApiKey", Contentstack.Stack.APIKey); try { - Stack stack = Contentstack.Client.Stack(Contentstack.Stack.APIKey); + Stack stack = _client.Stack(Contentstack.Stack.APIKey); StackSettings settings = new StackSettings() { StackVariables = new Dictionary() @@ -240,7 +254,7 @@ public void Test009_Stack_Settings() TestOutputLogger.LogContext("StackApiKey", Contentstack.Stack.APIKey); try { - Stack stack = Contentstack.Client.Stack(Contentstack.Stack.APIKey); + Stack stack = _client.Stack(Contentstack.Stack.APIKey); ContentstackResponse contentstackResponse = stack.Settings(); @@ -266,7 +280,7 @@ public void Test010_Reset_Stack_Settings() TestOutputLogger.LogContext("StackApiKey", Contentstack.Stack.APIKey); try { - Stack stack = Contentstack.Client.Stack(Contentstack.Stack.APIKey); + Stack stack = _client.Stack(Contentstack.Stack.APIKey); ContentstackResponse contentstackResponse = stack.ResetSettings(); @@ -292,7 +306,7 @@ public async System.Threading.Tasks.Task Test011_Add_Stack_Settings_Async() TestOutputLogger.LogContext("StackApiKey", Contentstack.Stack.APIKey); try { - Stack stack = Contentstack.Client.Stack(Contentstack.Stack.APIKey); + Stack stack = _client.Stack(Contentstack.Stack.APIKey); StackSettings settings = new StackSettings() { Rte = new Dictionary() @@ -324,7 +338,7 @@ public async System.Threading.Tasks.Task Test012_Reset_Stack_Settings_Async() TestOutputLogger.LogContext("StackApiKey", Contentstack.Stack.APIKey); try { - Stack stack = Contentstack.Client.Stack(Contentstack.Stack.APIKey); + Stack stack = _client.Stack(Contentstack.Stack.APIKey); ContentstackResponse contentstackResponse = await stack.ResetSettingsAsync(); @@ -350,7 +364,7 @@ public async System.Threading.Tasks.Task Test013_Stack_Settings_Async() TestOutputLogger.LogContext("StackApiKey", Contentstack.Stack.APIKey); try { - Stack stack = Contentstack.Client.Stack(Contentstack.Stack.APIKey); + Stack stack = _client.Stack(Contentstack.Stack.APIKey); ContentstackResponse contentstackResponse = await stack.SettingsAsync(); diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack004_ReleaseTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack004_ReleaseTest.cs index 66f9014..cf5cb53 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack004_ReleaseTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack004_ReleaseTest.cs @@ -14,15 +14,29 @@ namespace Contentstack.Management.Core.Tests.IntegrationTest [TestClass] public class Contentstack004_ReleaseTest { + private static ContentstackClient _client; private Stack _stack; private string _testReleaseName = "DotNet SDK Integration Test Release"; private string _testReleaseDescription = "Release created for .NET SDK integration testing"; + [ClassInitialize] + public static void ClassInitialize(TestContext context) + { + _client = Contentstack.CreateAuthenticatedClient(); + } + + [ClassCleanup] + public static void ClassCleanup() + { + try { _client?.Logout(); } catch { } + _client = null; + } + [TestInitialize] public async Task Initialize() { - StackResponse response = StackResponse.getStack(Contentstack.Client.serializer); - _stack = Contentstack.Client.Stack(response.Stack.APIKey); + StackResponse response = StackResponse.getStack(_client.serializer); + _stack = _client.Stack(response.Stack.APIKey); } diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack011_GlobalFieldTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack011_GlobalFieldTest.cs index 08f050b..d2d9f84 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack011_GlobalFieldTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack011_GlobalFieldTest.cs @@ -12,14 +12,29 @@ namespace Contentstack.Management.Core.Tests.IntegrationTest [TestClass] public class Contentstack004_GlobalFieldTest { + private static ContentstackClient _client; private Stack _stack; private ContentModelling _modelling; + + [ClassInitialize] + public static void ClassInitialize(TestContext context) + { + _client = Contentstack.CreateAuthenticatedClient(); + } + + [ClassCleanup] + public static void ClassCleanup() + { + try { _client?.Logout(); } catch { } + _client = null; + } + [TestInitialize] public void Initialize () { - StackResponse response = StackResponse.getStack(Contentstack.Client.serializer); - _stack = Contentstack.Client.Stack(response.Stack.APIKey); - _modelling = Contentstack.serialize(Contentstack.Client.serializer, "globalfield.json"); + StackResponse response = StackResponse.getStack(_client.serializer); + _stack = _client.Stack(response.Stack.APIKey); + _modelling = Contentstack.serialize(_client.serializer, "globalfield.json"); } [TestMethod] diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack012_ContentTypeTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack012_ContentTypeTest.cs index a23d15c..f244d6a 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack012_ContentTypeTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack012_ContentTypeTest.cs @@ -10,17 +10,31 @@ namespace Contentstack.Management.Core.Tests.IntegrationTest [TestClass] public class Contentstack005_ContentTypeTest { + private static ContentstackClient _client; private Stack _stack; private ContentModelling _singlePage; private ContentModelling _multiPage; + [ClassInitialize] + public static void ClassInitialize(TestContext context) + { + _client = Contentstack.CreateAuthenticatedClient(); + } + + [ClassCleanup] + public static void ClassCleanup() + { + try { _client?.Logout(); } catch { } + _client = null; + } + [TestInitialize] public void Initialize () { - StackResponse response = StackResponse.getStack(Contentstack.Client.serializer); - _stack = Contentstack.Client.Stack(response.Stack.APIKey); - _singlePage = Contentstack.serialize(Contentstack.Client.serializer, "singlepageCT.json"); - _multiPage = Contentstack.serialize(Contentstack.Client.serializer, "multiPageCT.json"); + StackResponse response = StackResponse.getStack(_client.serializer); + _stack = _client.Stack(response.Stack.APIKey); + _singlePage = Contentstack.serialize(_client.serializer, "singlepageCT.json"); + _multiPage = Contentstack.serialize(_client.serializer, "multiPageCT.json"); } [TestMethod] @@ -93,7 +107,7 @@ public void Test005_Should_Update_Content_Type() { TestOutputLogger.LogContext("TestScenario", "UpdateContentType"); TestOutputLogger.LogContext("ContentType", _multiPage.Uid); - _multiPage.Schema = Contentstack.serializeArray>(Contentstack.Client.serializer, "contentTypeSchema.json"); ; + _multiPage.Schema = Contentstack.serializeArray>(_client.serializer, "contentTypeSchema.json"); ; ContentstackResponse response = _stack.ContentType(_multiPage.Uid).Update(_multiPage); ContentTypeModel ContentType = response.OpenTResponse(); AssertLogger.IsNotNull(response, "response"); @@ -113,7 +127,7 @@ public async System.Threading.Tasks.Task Test006_Should_Update_Async_Content_Typ try { // Load the existing schema - _multiPage.Schema = Contentstack.serializeArray>(Contentstack.Client.serializer, "contentTypeSchema.json"); + _multiPage.Schema = Contentstack.serializeArray>(_client.serializer, "contentTypeSchema.json"); // Add a new text field to the schema var newTextField = new Models.Fields.TextboxField diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack012_NestedGlobalFieldTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack012_NestedGlobalFieldTest.cs index 545789a..c0e8f1d 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack012_NestedGlobalFieldTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack012_NestedGlobalFieldTest.cs @@ -15,13 +15,27 @@ namespace Contentstack.Management.Core.Tests.IntegrationTest [TestClass] public class Contentstack008_NestedGlobalFieldTest { + private static ContentstackClient _client; private Stack _stack; + [ClassInitialize] + public static void ClassInitialize(TestContext context) + { + _client = Contentstack.CreateAuthenticatedClient(); + } + + [ClassCleanup] + public static void ClassCleanup() + { + try { _client?.Logout(); } catch { } + _client = null; + } + [TestInitialize] public void Initialize() { - StackResponse response = StackResponse.getStack(Contentstack.Client.serializer); - _stack = Contentstack.Client.Stack(response.Stack.APIKey); + StackResponse response = StackResponse.getStack(_client.serializer); + _stack = _client.Stack(response.Stack.APIKey); } private ContentModelling CreateReferencedGlobalFieldModel() diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack013_AssetTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack013_AssetTest.cs index 9d21420..2028a7f 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack013_AssetTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack013_AssetTest.cs @@ -18,13 +18,27 @@ namespace Contentstack.Management.Core.Tests.IntegrationTest [TestClass] public class Contentstack006_AssetTest { + private static ContentstackClient _client; private Stack _stack; + [ClassInitialize] + public static void ClassInitialize(TestContext context) + { + _client = Contentstack.CreateAuthenticatedClient(); + } + + [ClassCleanup] + public static void ClassCleanup() + { + try { _client?.Logout(); } catch { } + _client = null; + } + [TestInitialize] public void Initialize() { - StackResponse response = StackResponse.getStack(Contentstack.Client.serializer); - _stack = Contentstack.Client.Stack(response.Stack.APIKey); + StackResponse response = StackResponse.getStack(_client.serializer); + _stack = _client.Stack(response.Stack.APIKey); } [TestMethod] diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack014_EntryTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack014_EntryTest.cs index 552ba07..93e6b5c 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack014_EntryTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack014_EntryTest.cs @@ -14,13 +14,27 @@ namespace Contentstack.Management.Core.Tests.IntegrationTest [TestClass] public class Contentstack007_EntryTest { + private static ContentstackClient _client; private Stack _stack; + [ClassInitialize] + public static void ClassInitialize(TestContext context) + { + _client = Contentstack.CreateAuthenticatedClient(); + } + + [ClassCleanup] + public static void ClassCleanup() + { + try { _client?.Logout(); } catch { } + _client = null; + } + [TestInitialize] public void Initialize() { - StackResponse response = StackResponse.getStack(Contentstack.Client.serializer); - _stack = Contentstack.Client.Stack(response.Stack.APIKey); + StackResponse response = StackResponse.getStack(_client.serializer); + _stack = _client.Stack(response.Stack.APIKey); } [TestMethod] diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack015_BulkOperationTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack015_BulkOperationTest.cs index 6d9e573..9c61f86 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack015_BulkOperationTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack015_BulkOperationTest.cs @@ -60,18 +60,21 @@ private static void AssertWorkflowCreated() AssertLogger.IsFalse(string.IsNullOrEmpty(_bulkTestWorkflowStage2Uid), "Workflow Stage 2 (New stage 2) was not set. " + reason, "WorkflowStage2Uid"); } + private static ContentstackClient _client; + /// /// Returns a Stack instance for the test run (used by ClassInitialize/ClassCleanup). /// private static Stack GetStack() { - StackResponse response = StackResponse.getStack(Contentstack.Client.serializer); - return Contentstack.Client.Stack(response.Stack.APIKey); + StackResponse response = StackResponse.getStack(_client.serializer); + return _client.Stack(response.Stack.APIKey); } [ClassInitialize] public static void ClassInitialize(TestContext context) { + _client = Contentstack.CreateAuthenticatedClient(); try { Stack stack = GetStack(); @@ -87,13 +90,15 @@ public static void ClassInitialize(TestContext context) public static void ClassCleanup() { // Intentionally no cleanup: workflow, publish rules, and entries are left so you can verify them in the UI. + try { _client?.Logout(); } catch { } + _client = null; } [TestInitialize] public async Task Initialize() { - StackResponse response = StackResponse.getStack(Contentstack.Client.serializer); - _stack = Contentstack.Client.Stack(response.Stack.APIKey); + StackResponse response = StackResponse.getStack(_client.serializer); + _stack = _client.Stack(response.Stack.APIKey); // Create test environment and release for bulk operations (for new stack) try diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack016_DeliveryTokenTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack016_DeliveryTokenTest.cs index 9af15ba..fc30861 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack016_DeliveryTokenTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack016_DeliveryTokenTest.cs @@ -15,40 +15,32 @@ namespace Contentstack.Management.Core.Tests.IntegrationTest [TestClass] public class Contentstack016_DeliveryTokenTest { + private static ContentstackClient _client; private Stack _stack; private string _deliveryTokenUid; private string _testEnvironmentUid = "test_delivery_environment"; private DeliveryTokenModel _testTokenModel; + [ClassInitialize] + public static void ClassInitialize(TestContext context) + { + _client = Contentstack.CreateAuthenticatedClient(); + } + + [ClassCleanup] + public static void ClassCleanup() + { + try { _client?.Logout(); } catch { } + _client = null; + } + [TestInitialize] public async Task Initialize() { try { - // First, ensure the client is logged in - try - { - ContentstackResponse loginResponse = Contentstack.Client.Login(Contentstack.Credential); - if (!loginResponse.IsSuccessStatusCode) - { - AssertLogger.Fail($"Login failed: {loginResponse.OpenResponse()}"); - } - } - catch (Exception loginEx) - { - // If already logged in, that's fine - continue with the test - if (loginEx.Message.Contains("already logged in")) - { - Console.WriteLine("Client already logged in, continuing with test"); - } - else - { - throw; // Re-throw if it's a different error - } - } - - StackResponse response = StackResponse.getStack(Contentstack.Client.serializer); - _stack = Contentstack.Client.Stack(response.Stack.APIKey); + StackResponse response = StackResponse.getStack(_client.serializer); + _stack = _client.Stack(response.Stack.APIKey); await CreateTestEnvironment(); diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs index ba8cf83..ba34b4c 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs @@ -17,6 +17,7 @@ namespace Contentstack.Management.Core.Tests.IntegrationTest [TestClass] public class Contentstack017_TaxonomyTest { + private static ContentstackClient _client; private static string _taxonomyUid; private static string _asyncCreatedTaxonomyUid; private static string _importedTaxonomyUid; @@ -30,11 +31,17 @@ public class Contentstack017_TaxonomyTest private Stack _stack; private TaxonomyModel _createModel; + [ClassInitialize] + public static void ClassInitialize(TestContext context) + { + _client = Contentstack.CreateAuthenticatedClient(); + } + [TestInitialize] public void Initialize() { - StackResponse response = StackResponse.getStack(Contentstack.Client.serializer); - _stack = Contentstack.Client.Stack(response.Stack.APIKey); + StackResponse response = StackResponse.getStack(_client.serializer); + _stack = _client.Stack(response.Stack.APIKey); if (_taxonomyUid == null) _taxonomyUid = "taxonomy_integration_test_" + Guid.NewGuid().ToString("N").Substring(0, 8); _createdTermUids = _createdTermUids ?? new List(); @@ -796,8 +803,8 @@ public void Test042_Should_Throw_When_Delete_NonExistent_Term() private static Stack GetStack() { - StackResponse response = StackResponse.getStack(Contentstack.Client.serializer); - return Contentstack.Client.Stack(response.Stack.APIKey); + StackResponse response = StackResponse.getStack(_client.serializer); + return _client.Stack(response.Stack.APIKey); } [ClassCleanup] @@ -900,6 +907,9 @@ public static void Cleanup() { Console.WriteLine($"[Cleanup] Cleanup failed: {ex.Message}"); } + + try { _client?.Logout(); } catch { } + _client = null; } } } diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack999_LogoutTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack999_LogoutTest.cs index cf8a4ca..538387b 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack999_LogoutTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack999_LogoutTest.cs @@ -1,4 +1,5 @@ using System; +using System.Net.Http; using Contentstack.Management.Core.Tests.Helpers; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -7,24 +8,76 @@ namespace Contentstack.Management.Core.Tests.IntegrationTest [TestClass] public class Contentstack999_LogoutTest { + private static ContentstackClient CreateClientWithLogging() + { + var handler = new LoggingHttpHandler(); + var httpClient = new HttpClient(handler); + return new ContentstackClient(httpClient, new ContentstackClientOptions()); + } + [TestMethod] [DoNotParallelize] - public void Test001_Should_Return_Success_On_Logout() + public void Test001_Should_Return_Success_On_Sync_Logout() { - TestOutputLogger.LogContext("TestScenario", "Logout"); + TestOutputLogger.LogContext("TestScenario", "SyncLogout"); try { - ContentstackClient client = Contentstack.Client; + ContentstackClient client = Contentstack.CreateAuthenticatedClient(); + AssertLogger.IsNotNull(client.contentstackOptions.Authtoken, "AuthtokenBeforeLogout"); + ContentstackResponse contentstackResponse = client.Logout(); string loginResponse = contentstackResponse.OpenResponse(); - AssertLogger.IsNull(client.contentstackOptions.Authtoken, "Authtoken"); - AssertLogger.IsNotNull(loginResponse, "loginResponse"); + AssertLogger.IsNull(client.contentstackOptions.Authtoken, "AuthtokenAfterLogout"); + AssertLogger.IsNotNull(loginResponse, "LogoutResponse"); } catch (Exception e) { AssertLogger.Fail(e.Message); } } + + [TestMethod] + [DoNotParallelize] + public async System.Threading.Tasks.Task Test002_Should_Return_Success_On_Async_Logout() + { + TestOutputLogger.LogContext("TestScenario", "AsyncLogout"); + try + { + ContentstackClient client = Contentstack.CreateAuthenticatedClient(); + AssertLogger.IsNotNull(client.contentstackOptions.Authtoken, "AuthtokenBeforeLogout"); + + ContentstackResponse contentstackResponse = await client.LogoutAsync(); + string logoutResponse = contentstackResponse.OpenResponse(); + + AssertLogger.IsNull(client.contentstackOptions.Authtoken, "AuthtokenAfterLogout"); + AssertLogger.IsNotNull(logoutResponse, "LogoutResponse"); + } + catch (Exception e) + { + AssertLogger.Fail(e.Message); + } + } + + [TestMethod] + [DoNotParallelize] + public void Test003_Should_Handle_Logout_When_Not_LoggedIn() + { + TestOutputLogger.LogContext("TestScenario", "LogoutWhenNotLoggedIn"); + ContentstackClient client = CreateClientWithLogging(); + + AssertLogger.IsNull(client.contentstackOptions.Authtoken, "AuthtokenNotSet"); + + try + { + client.Logout(); + } + catch (Exception e) + { + AssertLogger.IsTrue( + e.Message.Contains("token") || e.Message.Contains("Authentication") || e.Message.Contains("not logged in"), + "LogoutNotLoggedInError"); + } + } } } From dc85c14a6a77f4f3b0dba6a1426fd317a3817a45 Mon Sep 17 00:00:00 2001 From: OMpawar-21 Date: Wed, 18 Mar 2026 10:06:02 +0530 Subject: [PATCH 5/8] fix: resolve Snyk CWE-798 hardcoded-credentials false positive in TestDataHelper Rename parameter 'key' to 'configKey' in GetRequiredConfig and GetOptionalConfig so the scanner no longer treats it as a secret key. Values still come from config. --- .../Contentstack017_TaxonomyTest.cs | 214 ++++++++++++++++++ 1 file changed, 214 insertions(+) diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs index ba34b4c..3690419 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs @@ -801,6 +801,220 @@ public void Test042_Should_Throw_When_Delete_NonExistent_Term() _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Delete(), "DeleteNonExistentTerm"); } + [TestMethod] + [DoNotParallelize] + public void Test043_Should_Throw_When_Ancestors_NonExistent_Term() + { + TestOutputLogger.LogContext("TestScenario", "Test043_Should_Throw_When_Ancestors_NonExistent_Term"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + AssertLogger.ThrowsException(() => + _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Ancestors(), "AncestorsNonExistentTerm"); + } + + [TestMethod] + [DoNotParallelize] + public void Test044_Should_Throw_When_Descendants_NonExistent_Term() + { + TestOutputLogger.LogContext("TestScenario", "Test044_Should_Throw_When_Descendants_NonExistent_Term"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + AssertLogger.ThrowsException(() => + _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Descendants(), "DescendantsNonExistentTerm"); + } + + [TestMethod] + [DoNotParallelize] + public void Test045_Should_Throw_When_Locales_NonExistent_Term() + { + TestOutputLogger.LogContext("TestScenario", "Test045_Should_Throw_When_Locales_NonExistent_Term"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + AssertLogger.ThrowsException(() => + _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Locales(), "LocalesNonExistentTerm"); + } + + [TestMethod] + [DoNotParallelize] + public void Test046_Should_Throw_When_Move_NonExistent_Term() + { + TestOutputLogger.LogContext("TestScenario", "Test047_Should_Throw_When_Move_NonExistent_Term"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); + if (string.IsNullOrEmpty(_rootTermUid)) + { + AssertLogger.Inconclusive("Root term not available, skipping move non-existent term test."); + return; + } + var moveModel = new TermMoveModel + { + ParentUid = _rootTermUid, + Order = 1 + }; + var coll = new ParameterCollection(); + coll.Add("force", true); + AssertLogger.ThrowsException(() => + _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Move(moveModel, coll), "MoveNonExistentTerm"); + } + + [TestMethod] + [DoNotParallelize] + public void Test047_Should_Throw_When_Create_Term_NonExistent_Taxonomy() + { + TestOutputLogger.LogContext("TestScenario", "Test048_Should_Throw_When_Create_Term_NonExistent_Taxonomy"); + var termModel = new TermModel + { + Uid = "some_term_uid", + Name = "No" + }; + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms().Create(termModel), "CreateTermNonExistentTaxonomy"); + } + + [TestMethod] + [DoNotParallelize] + public void Test048_Should_Throw_When_Fetch_Term_NonExistent_Taxonomy() + { + TestOutputLogger.LogContext("TestScenario", "Test049_Should_Throw_When_Fetch_Term_NonExistent_Taxonomy"); + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Fetch(), "FetchTermNonExistentTaxonomy"); + } + + [TestMethod] + [DoNotParallelize] + public void Test049_Should_Throw_When_Query_Terms_NonExistent_Taxonomy() + { + TestOutputLogger.LogContext("TestScenario", "Test050_Should_Throw_When_Query_Terms_NonExistent_Taxonomy"); + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms().Query().Find(), "QueryTermsNonExistentTaxonomy"); + } + + [TestMethod] + [DoNotParallelize] + public void Test050_Should_Throw_When_Update_Term_NonExistent_Taxonomy() + { + TestOutputLogger.LogContext("TestScenario", "Test051_Should_Throw_When_Update_Term_NonExistent_Taxonomy"); + var updateModel = new TermModel { Name = "No" }; + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Update(updateModel), "UpdateTermNonExistentTaxonomy"); + } + + [TestMethod] + [DoNotParallelize] + public void Test051_Should_Throw_When_Delete_Term_NonExistent_Taxonomy() + { + TestOutputLogger.LogContext("TestScenario", "Test052_Should_Throw_When_Delete_Term_NonExistent_Taxonomy"); + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Delete(), "DeleteTermNonExistentTaxonomy"); + } + + [TestMethod] + [DoNotParallelize] + public void Test052_Should_Throw_When_Ancestors_Term_NonExistent_Taxonomy() + { + TestOutputLogger.LogContext("TestScenario", "Test053_Should_Throw_When_Ancestors_Term_NonExistent_Taxonomy"); + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Ancestors(), "AncestorsTermNonExistentTaxonomy"); + } + + [TestMethod] + [DoNotParallelize] + public void Test053_Should_Throw_When_Descendants_Term_NonExistent_Taxonomy() + { + TestOutputLogger.LogContext("TestScenario", "Test054_Should_Throw_When_Descendants_Term_NonExistent_Taxonomy"); + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Descendants(), "DescendantsTermNonExistentTaxonomy"); + } + + [TestMethod] + [DoNotParallelize] + public void Test054_Should_Throw_When_Locales_Term_NonExistent_Taxonomy() + { + TestOutputLogger.LogContext("TestScenario", "Test055_Should_Throw_When_Locales_Term_NonExistent_Taxonomy"); + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Locales(), "LocalesTermNonExistentTaxonomy"); + } + + [TestMethod] + [DoNotParallelize] + public void Test055_Should_Throw_When_Localize_Term_NonExistent_Taxonomy() + { + TestOutputLogger.LogContext("TestScenario", "Test056_Should_Throw_When_Localize_Term_NonExistent_Taxonomy"); + var localizeModel = new TermModel { Name = "No" }; + var coll = new ParameterCollection(); + coll.Add("locale", "en-us"); + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Localize(localizeModel, coll), "LocalizeTermNonExistentTaxonomy"); + } + + [TestMethod] + [DoNotParallelize] + public void Test056_Should_Throw_When_Move_Term_NonExistent_Taxonomy() + { + TestOutputLogger.LogContext("TestScenario", "Test057_Should_Throw_When_Move_Term_NonExistent_Taxonomy"); + var moveModel = new TermMoveModel + { + ParentUid = "x", + Order = 1 + }; + var coll = new ParameterCollection(); + coll.Add("force", true); + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Move(moveModel, coll), "MoveTermNonExistentTaxonomy"); + } + + [TestMethod] + [DoNotParallelize] + public void Test057_Should_Throw_When_Create_Term_Duplicate_Uid() + { + TestOutputLogger.LogContext("TestScenario", "Test058_Should_Throw_When_Create_Term_Duplicate_Uid"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); + var termModel = new TermModel + { + Uid = _rootTermUid, + Name = "Duplicate" + }; + AssertLogger.ThrowsException(() => + _stack.Taxonomy(_taxonomyUid).Terms().Create(termModel), "CreateTermDuplicateUid"); + } + + [TestMethod] + [DoNotParallelize] + public void Test058_Should_Throw_When_Create_Term_Invalid_ParentUid() + { + TestOutputLogger.LogContext("TestScenario", "Test059_Should_Throw_When_Create_Term_Invalid_ParentUid"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + var termModel = new TermModel + { + Uid = "term_bad_parent_12345", + Name = "Bad Parent", + ParentUid = "non_existent_parent_uid_12345" + }; + AssertLogger.ThrowsException(() => + _stack.Taxonomy(_taxonomyUid).Terms().Create(termModel), "CreateTermInvalidParentUid"); + } + + [TestMethod] + [DoNotParallelize] + public void Test059_Should_Throw_When_Move_Term_To_Itself() + { + TestOutputLogger.LogContext("TestScenario", "Test060_Should_Throw_When_Move_Term_To_Itself"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); + if (string.IsNullOrEmpty(_rootTermUid)) + { + AssertLogger.Inconclusive("Root term not available, skipping self-referential move test."); + return; + } + var moveModel = new TermMoveModel + { + ParentUid = _rootTermUid, + Order = 1 + }; + var coll = new ParameterCollection(); + coll.Add("force", true); + AssertLogger.ThrowsException(() => + _stack.Taxonomy(_taxonomyUid).Terms(_rootTermUid).Move(moveModel, coll), "MoveTermToItself"); + } + private static Stack GetStack() { StackResponse response = StackResponse.getStack(_client.serializer); From 9752bcb21bd90a8959be76ddc83ff8253bd941b0 Mon Sep 17 00:00:00 2001 From: OMpawar-21 Date: Wed, 18 Mar 2026 10:06:41 +0530 Subject: [PATCH 6/8] Revert "fix: resolve Snyk CWE-798 hardcoded-credentials false positive in TestDataHelper" This reverts commit dc85c14a6a77f4f3b0dba6a1426fd317a3817a45. --- .../Contentstack017_TaxonomyTest.cs | 214 ------------------ 1 file changed, 214 deletions(-) diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs index 3690419..ba34b4c 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs @@ -801,220 +801,6 @@ public void Test042_Should_Throw_When_Delete_NonExistent_Term() _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Delete(), "DeleteNonExistentTerm"); } - [TestMethod] - [DoNotParallelize] - public void Test043_Should_Throw_When_Ancestors_NonExistent_Term() - { - TestOutputLogger.LogContext("TestScenario", "Test043_Should_Throw_When_Ancestors_NonExistent_Term"); - TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); - AssertLogger.ThrowsException(() => - _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Ancestors(), "AncestorsNonExistentTerm"); - } - - [TestMethod] - [DoNotParallelize] - public void Test044_Should_Throw_When_Descendants_NonExistent_Term() - { - TestOutputLogger.LogContext("TestScenario", "Test044_Should_Throw_When_Descendants_NonExistent_Term"); - TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); - AssertLogger.ThrowsException(() => - _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Descendants(), "DescendantsNonExistentTerm"); - } - - [TestMethod] - [DoNotParallelize] - public void Test045_Should_Throw_When_Locales_NonExistent_Term() - { - TestOutputLogger.LogContext("TestScenario", "Test045_Should_Throw_When_Locales_NonExistent_Term"); - TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); - AssertLogger.ThrowsException(() => - _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Locales(), "LocalesNonExistentTerm"); - } - - [TestMethod] - [DoNotParallelize] - public void Test046_Should_Throw_When_Move_NonExistent_Term() - { - TestOutputLogger.LogContext("TestScenario", "Test047_Should_Throw_When_Move_NonExistent_Term"); - TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); - TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); - if (string.IsNullOrEmpty(_rootTermUid)) - { - AssertLogger.Inconclusive("Root term not available, skipping move non-existent term test."); - return; - } - var moveModel = new TermMoveModel - { - ParentUid = _rootTermUid, - Order = 1 - }; - var coll = new ParameterCollection(); - coll.Add("force", true); - AssertLogger.ThrowsException(() => - _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Move(moveModel, coll), "MoveNonExistentTerm"); - } - - [TestMethod] - [DoNotParallelize] - public void Test047_Should_Throw_When_Create_Term_NonExistent_Taxonomy() - { - TestOutputLogger.LogContext("TestScenario", "Test048_Should_Throw_When_Create_Term_NonExistent_Taxonomy"); - var termModel = new TermModel - { - Uid = "some_term_uid", - Name = "No" - }; - AssertLogger.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms().Create(termModel), "CreateTermNonExistentTaxonomy"); - } - - [TestMethod] - [DoNotParallelize] - public void Test048_Should_Throw_When_Fetch_Term_NonExistent_Taxonomy() - { - TestOutputLogger.LogContext("TestScenario", "Test049_Should_Throw_When_Fetch_Term_NonExistent_Taxonomy"); - AssertLogger.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Fetch(), "FetchTermNonExistentTaxonomy"); - } - - [TestMethod] - [DoNotParallelize] - public void Test049_Should_Throw_When_Query_Terms_NonExistent_Taxonomy() - { - TestOutputLogger.LogContext("TestScenario", "Test050_Should_Throw_When_Query_Terms_NonExistent_Taxonomy"); - AssertLogger.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms().Query().Find(), "QueryTermsNonExistentTaxonomy"); - } - - [TestMethod] - [DoNotParallelize] - public void Test050_Should_Throw_When_Update_Term_NonExistent_Taxonomy() - { - TestOutputLogger.LogContext("TestScenario", "Test051_Should_Throw_When_Update_Term_NonExistent_Taxonomy"); - var updateModel = new TermModel { Name = "No" }; - AssertLogger.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Update(updateModel), "UpdateTermNonExistentTaxonomy"); - } - - [TestMethod] - [DoNotParallelize] - public void Test051_Should_Throw_When_Delete_Term_NonExistent_Taxonomy() - { - TestOutputLogger.LogContext("TestScenario", "Test052_Should_Throw_When_Delete_Term_NonExistent_Taxonomy"); - AssertLogger.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Delete(), "DeleteTermNonExistentTaxonomy"); - } - - [TestMethod] - [DoNotParallelize] - public void Test052_Should_Throw_When_Ancestors_Term_NonExistent_Taxonomy() - { - TestOutputLogger.LogContext("TestScenario", "Test053_Should_Throw_When_Ancestors_Term_NonExistent_Taxonomy"); - AssertLogger.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Ancestors(), "AncestorsTermNonExistentTaxonomy"); - } - - [TestMethod] - [DoNotParallelize] - public void Test053_Should_Throw_When_Descendants_Term_NonExistent_Taxonomy() - { - TestOutputLogger.LogContext("TestScenario", "Test054_Should_Throw_When_Descendants_Term_NonExistent_Taxonomy"); - AssertLogger.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Descendants(), "DescendantsTermNonExistentTaxonomy"); - } - - [TestMethod] - [DoNotParallelize] - public void Test054_Should_Throw_When_Locales_Term_NonExistent_Taxonomy() - { - TestOutputLogger.LogContext("TestScenario", "Test055_Should_Throw_When_Locales_Term_NonExistent_Taxonomy"); - AssertLogger.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Locales(), "LocalesTermNonExistentTaxonomy"); - } - - [TestMethod] - [DoNotParallelize] - public void Test055_Should_Throw_When_Localize_Term_NonExistent_Taxonomy() - { - TestOutputLogger.LogContext("TestScenario", "Test056_Should_Throw_When_Localize_Term_NonExistent_Taxonomy"); - var localizeModel = new TermModel { Name = "No" }; - var coll = new ParameterCollection(); - coll.Add("locale", "en-us"); - AssertLogger.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Localize(localizeModel, coll), "LocalizeTermNonExistentTaxonomy"); - } - - [TestMethod] - [DoNotParallelize] - public void Test056_Should_Throw_When_Move_Term_NonExistent_Taxonomy() - { - TestOutputLogger.LogContext("TestScenario", "Test057_Should_Throw_When_Move_Term_NonExistent_Taxonomy"); - var moveModel = new TermMoveModel - { - ParentUid = "x", - Order = 1 - }; - var coll = new ParameterCollection(); - coll.Add("force", true); - AssertLogger.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Move(moveModel, coll), "MoveTermNonExistentTaxonomy"); - } - - [TestMethod] - [DoNotParallelize] - public void Test057_Should_Throw_When_Create_Term_Duplicate_Uid() - { - TestOutputLogger.LogContext("TestScenario", "Test058_Should_Throw_When_Create_Term_Duplicate_Uid"); - TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); - TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); - var termModel = new TermModel - { - Uid = _rootTermUid, - Name = "Duplicate" - }; - AssertLogger.ThrowsException(() => - _stack.Taxonomy(_taxonomyUid).Terms().Create(termModel), "CreateTermDuplicateUid"); - } - - [TestMethod] - [DoNotParallelize] - public void Test058_Should_Throw_When_Create_Term_Invalid_ParentUid() - { - TestOutputLogger.LogContext("TestScenario", "Test059_Should_Throw_When_Create_Term_Invalid_ParentUid"); - TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); - var termModel = new TermModel - { - Uid = "term_bad_parent_12345", - Name = "Bad Parent", - ParentUid = "non_existent_parent_uid_12345" - }; - AssertLogger.ThrowsException(() => - _stack.Taxonomy(_taxonomyUid).Terms().Create(termModel), "CreateTermInvalidParentUid"); - } - - [TestMethod] - [DoNotParallelize] - public void Test059_Should_Throw_When_Move_Term_To_Itself() - { - TestOutputLogger.LogContext("TestScenario", "Test060_Should_Throw_When_Move_Term_To_Itself"); - TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); - TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); - if (string.IsNullOrEmpty(_rootTermUid)) - { - AssertLogger.Inconclusive("Root term not available, skipping self-referential move test."); - return; - } - var moveModel = new TermMoveModel - { - ParentUid = _rootTermUid, - Order = 1 - }; - var coll = new ParameterCollection(); - coll.Add("force", true); - AssertLogger.ThrowsException(() => - _stack.Taxonomy(_taxonomyUid).Terms(_rootTermUid).Move(moveModel, coll), "MoveTermToItself"); - } - private static Stack GetStack() { StackResponse response = StackResponse.getStack(_client.serializer); From 51ae63fcb52b99f5701b7bce97832a5d76b35e92 Mon Sep 17 00:00:00 2001 From: OMpawar-21 Date: Wed, 18 Mar 2026 10:14:52 +0530 Subject: [PATCH 7/8] feat: Added the negative path test cases for the terms support --- .../Contentstack017_TaxonomyTest.cs | 214 ++++++++++++++++++ 1 file changed, 214 insertions(+) diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs index ba34b4c..3690419 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs @@ -801,6 +801,220 @@ public void Test042_Should_Throw_When_Delete_NonExistent_Term() _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Delete(), "DeleteNonExistentTerm"); } + [TestMethod] + [DoNotParallelize] + public void Test043_Should_Throw_When_Ancestors_NonExistent_Term() + { + TestOutputLogger.LogContext("TestScenario", "Test043_Should_Throw_When_Ancestors_NonExistent_Term"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + AssertLogger.ThrowsException(() => + _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Ancestors(), "AncestorsNonExistentTerm"); + } + + [TestMethod] + [DoNotParallelize] + public void Test044_Should_Throw_When_Descendants_NonExistent_Term() + { + TestOutputLogger.LogContext("TestScenario", "Test044_Should_Throw_When_Descendants_NonExistent_Term"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + AssertLogger.ThrowsException(() => + _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Descendants(), "DescendantsNonExistentTerm"); + } + + [TestMethod] + [DoNotParallelize] + public void Test045_Should_Throw_When_Locales_NonExistent_Term() + { + TestOutputLogger.LogContext("TestScenario", "Test045_Should_Throw_When_Locales_NonExistent_Term"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + AssertLogger.ThrowsException(() => + _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Locales(), "LocalesNonExistentTerm"); + } + + [TestMethod] + [DoNotParallelize] + public void Test046_Should_Throw_When_Move_NonExistent_Term() + { + TestOutputLogger.LogContext("TestScenario", "Test047_Should_Throw_When_Move_NonExistent_Term"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); + if (string.IsNullOrEmpty(_rootTermUid)) + { + AssertLogger.Inconclusive("Root term not available, skipping move non-existent term test."); + return; + } + var moveModel = new TermMoveModel + { + ParentUid = _rootTermUid, + Order = 1 + }; + var coll = new ParameterCollection(); + coll.Add("force", true); + AssertLogger.ThrowsException(() => + _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Move(moveModel, coll), "MoveNonExistentTerm"); + } + + [TestMethod] + [DoNotParallelize] + public void Test047_Should_Throw_When_Create_Term_NonExistent_Taxonomy() + { + TestOutputLogger.LogContext("TestScenario", "Test048_Should_Throw_When_Create_Term_NonExistent_Taxonomy"); + var termModel = new TermModel + { + Uid = "some_term_uid", + Name = "No" + }; + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms().Create(termModel), "CreateTermNonExistentTaxonomy"); + } + + [TestMethod] + [DoNotParallelize] + public void Test048_Should_Throw_When_Fetch_Term_NonExistent_Taxonomy() + { + TestOutputLogger.LogContext("TestScenario", "Test049_Should_Throw_When_Fetch_Term_NonExistent_Taxonomy"); + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Fetch(), "FetchTermNonExistentTaxonomy"); + } + + [TestMethod] + [DoNotParallelize] + public void Test049_Should_Throw_When_Query_Terms_NonExistent_Taxonomy() + { + TestOutputLogger.LogContext("TestScenario", "Test050_Should_Throw_When_Query_Terms_NonExistent_Taxonomy"); + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms().Query().Find(), "QueryTermsNonExistentTaxonomy"); + } + + [TestMethod] + [DoNotParallelize] + public void Test050_Should_Throw_When_Update_Term_NonExistent_Taxonomy() + { + TestOutputLogger.LogContext("TestScenario", "Test051_Should_Throw_When_Update_Term_NonExistent_Taxonomy"); + var updateModel = new TermModel { Name = "No" }; + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Update(updateModel), "UpdateTermNonExistentTaxonomy"); + } + + [TestMethod] + [DoNotParallelize] + public void Test051_Should_Throw_When_Delete_Term_NonExistent_Taxonomy() + { + TestOutputLogger.LogContext("TestScenario", "Test052_Should_Throw_When_Delete_Term_NonExistent_Taxonomy"); + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Delete(), "DeleteTermNonExistentTaxonomy"); + } + + [TestMethod] + [DoNotParallelize] + public void Test052_Should_Throw_When_Ancestors_Term_NonExistent_Taxonomy() + { + TestOutputLogger.LogContext("TestScenario", "Test053_Should_Throw_When_Ancestors_Term_NonExistent_Taxonomy"); + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Ancestors(), "AncestorsTermNonExistentTaxonomy"); + } + + [TestMethod] + [DoNotParallelize] + public void Test053_Should_Throw_When_Descendants_Term_NonExistent_Taxonomy() + { + TestOutputLogger.LogContext("TestScenario", "Test054_Should_Throw_When_Descendants_Term_NonExistent_Taxonomy"); + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Descendants(), "DescendantsTermNonExistentTaxonomy"); + } + + [TestMethod] + [DoNotParallelize] + public void Test054_Should_Throw_When_Locales_Term_NonExistent_Taxonomy() + { + TestOutputLogger.LogContext("TestScenario", "Test055_Should_Throw_When_Locales_Term_NonExistent_Taxonomy"); + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Locales(), "LocalesTermNonExistentTaxonomy"); + } + + [TestMethod] + [DoNotParallelize] + public void Test055_Should_Throw_When_Localize_Term_NonExistent_Taxonomy() + { + TestOutputLogger.LogContext("TestScenario", "Test056_Should_Throw_When_Localize_Term_NonExistent_Taxonomy"); + var localizeModel = new TermModel { Name = "No" }; + var coll = new ParameterCollection(); + coll.Add("locale", "en-us"); + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Localize(localizeModel, coll), "LocalizeTermNonExistentTaxonomy"); + } + + [TestMethod] + [DoNotParallelize] + public void Test056_Should_Throw_When_Move_Term_NonExistent_Taxonomy() + { + TestOutputLogger.LogContext("TestScenario", "Test057_Should_Throw_When_Move_Term_NonExistent_Taxonomy"); + var moveModel = new TermMoveModel + { + ParentUid = "x", + Order = 1 + }; + var coll = new ParameterCollection(); + coll.Add("force", true); + AssertLogger.ThrowsException(() => + _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Move(moveModel, coll), "MoveTermNonExistentTaxonomy"); + } + + [TestMethod] + [DoNotParallelize] + public void Test057_Should_Throw_When_Create_Term_Duplicate_Uid() + { + TestOutputLogger.LogContext("TestScenario", "Test058_Should_Throw_When_Create_Term_Duplicate_Uid"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); + var termModel = new TermModel + { + Uid = _rootTermUid, + Name = "Duplicate" + }; + AssertLogger.ThrowsException(() => + _stack.Taxonomy(_taxonomyUid).Terms().Create(termModel), "CreateTermDuplicateUid"); + } + + [TestMethod] + [DoNotParallelize] + public void Test058_Should_Throw_When_Create_Term_Invalid_ParentUid() + { + TestOutputLogger.LogContext("TestScenario", "Test059_Should_Throw_When_Create_Term_Invalid_ParentUid"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + var termModel = new TermModel + { + Uid = "term_bad_parent_12345", + Name = "Bad Parent", + ParentUid = "non_existent_parent_uid_12345" + }; + AssertLogger.ThrowsException(() => + _stack.Taxonomy(_taxonomyUid).Terms().Create(termModel), "CreateTermInvalidParentUid"); + } + + [TestMethod] + [DoNotParallelize] + public void Test059_Should_Throw_When_Move_Term_To_Itself() + { + TestOutputLogger.LogContext("TestScenario", "Test060_Should_Throw_When_Move_Term_To_Itself"); + TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); + TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); + if (string.IsNullOrEmpty(_rootTermUid)) + { + AssertLogger.Inconclusive("Root term not available, skipping self-referential move test."); + return; + } + var moveModel = new TermMoveModel + { + ParentUid = _rootTermUid, + Order = 1 + }; + var coll = new ParameterCollection(); + coll.Add("force", true); + AssertLogger.ThrowsException(() => + _stack.Taxonomy(_taxonomyUid).Terms(_rootTermUid).Move(moveModel, coll), "MoveTermToItself"); + } + private static Stack GetStack() { StackResponse response = StackResponse.getStack(_client.serializer); From fe30677297aafcd6907d01d781c1278a11f7c703 Mon Sep 17 00:00:00 2001 From: OMpawar-21 Date: Wed, 18 Mar 2026 11:09:10 +0530 Subject: [PATCH 8/8] Revert "feat: Added the negative path test cases for the terms support" This reverts commit 51ae63fcb52b99f5701b7bce97832a5d76b35e92. --- .../Contentstack017_TaxonomyTest.cs | 214 ------------------ 1 file changed, 214 deletions(-) diff --git a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs index 3690419..ba34b4c 100644 --- a/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs +++ b/Contentstack.Management.Core.Tests/IntegrationTest/Contentstack017_TaxonomyTest.cs @@ -801,220 +801,6 @@ public void Test042_Should_Throw_When_Delete_NonExistent_Term() _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Delete(), "DeleteNonExistentTerm"); } - [TestMethod] - [DoNotParallelize] - public void Test043_Should_Throw_When_Ancestors_NonExistent_Term() - { - TestOutputLogger.LogContext("TestScenario", "Test043_Should_Throw_When_Ancestors_NonExistent_Term"); - TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); - AssertLogger.ThrowsException(() => - _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Ancestors(), "AncestorsNonExistentTerm"); - } - - [TestMethod] - [DoNotParallelize] - public void Test044_Should_Throw_When_Descendants_NonExistent_Term() - { - TestOutputLogger.LogContext("TestScenario", "Test044_Should_Throw_When_Descendants_NonExistent_Term"); - TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); - AssertLogger.ThrowsException(() => - _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Descendants(), "DescendantsNonExistentTerm"); - } - - [TestMethod] - [DoNotParallelize] - public void Test045_Should_Throw_When_Locales_NonExistent_Term() - { - TestOutputLogger.LogContext("TestScenario", "Test045_Should_Throw_When_Locales_NonExistent_Term"); - TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); - AssertLogger.ThrowsException(() => - _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Locales(), "LocalesNonExistentTerm"); - } - - [TestMethod] - [DoNotParallelize] - public void Test046_Should_Throw_When_Move_NonExistent_Term() - { - TestOutputLogger.LogContext("TestScenario", "Test047_Should_Throw_When_Move_NonExistent_Term"); - TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); - TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); - if (string.IsNullOrEmpty(_rootTermUid)) - { - AssertLogger.Inconclusive("Root term not available, skipping move non-existent term test."); - return; - } - var moveModel = new TermMoveModel - { - ParentUid = _rootTermUid, - Order = 1 - }; - var coll = new ParameterCollection(); - coll.Add("force", true); - AssertLogger.ThrowsException(() => - _stack.Taxonomy(_taxonomyUid).Terms("non_existent_term_uid_12345").Move(moveModel, coll), "MoveNonExistentTerm"); - } - - [TestMethod] - [DoNotParallelize] - public void Test047_Should_Throw_When_Create_Term_NonExistent_Taxonomy() - { - TestOutputLogger.LogContext("TestScenario", "Test048_Should_Throw_When_Create_Term_NonExistent_Taxonomy"); - var termModel = new TermModel - { - Uid = "some_term_uid", - Name = "No" - }; - AssertLogger.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms().Create(termModel), "CreateTermNonExistentTaxonomy"); - } - - [TestMethod] - [DoNotParallelize] - public void Test048_Should_Throw_When_Fetch_Term_NonExistent_Taxonomy() - { - TestOutputLogger.LogContext("TestScenario", "Test049_Should_Throw_When_Fetch_Term_NonExistent_Taxonomy"); - AssertLogger.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Fetch(), "FetchTermNonExistentTaxonomy"); - } - - [TestMethod] - [DoNotParallelize] - public void Test049_Should_Throw_When_Query_Terms_NonExistent_Taxonomy() - { - TestOutputLogger.LogContext("TestScenario", "Test050_Should_Throw_When_Query_Terms_NonExistent_Taxonomy"); - AssertLogger.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms().Query().Find(), "QueryTermsNonExistentTaxonomy"); - } - - [TestMethod] - [DoNotParallelize] - public void Test050_Should_Throw_When_Update_Term_NonExistent_Taxonomy() - { - TestOutputLogger.LogContext("TestScenario", "Test051_Should_Throw_When_Update_Term_NonExistent_Taxonomy"); - var updateModel = new TermModel { Name = "No" }; - AssertLogger.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Update(updateModel), "UpdateTermNonExistentTaxonomy"); - } - - [TestMethod] - [DoNotParallelize] - public void Test051_Should_Throw_When_Delete_Term_NonExistent_Taxonomy() - { - TestOutputLogger.LogContext("TestScenario", "Test052_Should_Throw_When_Delete_Term_NonExistent_Taxonomy"); - AssertLogger.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Delete(), "DeleteTermNonExistentTaxonomy"); - } - - [TestMethod] - [DoNotParallelize] - public void Test052_Should_Throw_When_Ancestors_Term_NonExistent_Taxonomy() - { - TestOutputLogger.LogContext("TestScenario", "Test053_Should_Throw_When_Ancestors_Term_NonExistent_Taxonomy"); - AssertLogger.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Ancestors(), "AncestorsTermNonExistentTaxonomy"); - } - - [TestMethod] - [DoNotParallelize] - public void Test053_Should_Throw_When_Descendants_Term_NonExistent_Taxonomy() - { - TestOutputLogger.LogContext("TestScenario", "Test054_Should_Throw_When_Descendants_Term_NonExistent_Taxonomy"); - AssertLogger.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Descendants(), "DescendantsTermNonExistentTaxonomy"); - } - - [TestMethod] - [DoNotParallelize] - public void Test054_Should_Throw_When_Locales_Term_NonExistent_Taxonomy() - { - TestOutputLogger.LogContext("TestScenario", "Test055_Should_Throw_When_Locales_Term_NonExistent_Taxonomy"); - AssertLogger.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Locales(), "LocalesTermNonExistentTaxonomy"); - } - - [TestMethod] - [DoNotParallelize] - public void Test055_Should_Throw_When_Localize_Term_NonExistent_Taxonomy() - { - TestOutputLogger.LogContext("TestScenario", "Test056_Should_Throw_When_Localize_Term_NonExistent_Taxonomy"); - var localizeModel = new TermModel { Name = "No" }; - var coll = new ParameterCollection(); - coll.Add("locale", "en-us"); - AssertLogger.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Localize(localizeModel, coll), "LocalizeTermNonExistentTaxonomy"); - } - - [TestMethod] - [DoNotParallelize] - public void Test056_Should_Throw_When_Move_Term_NonExistent_Taxonomy() - { - TestOutputLogger.LogContext("TestScenario", "Test057_Should_Throw_When_Move_Term_NonExistent_Taxonomy"); - var moveModel = new TermMoveModel - { - ParentUid = "x", - Order = 1 - }; - var coll = new ParameterCollection(); - coll.Add("force", true); - AssertLogger.ThrowsException(() => - _stack.Taxonomy("non_existent_taxonomy_uid_12345").Terms("non_existent_term_uid_12345").Move(moveModel, coll), "MoveTermNonExistentTaxonomy"); - } - - [TestMethod] - [DoNotParallelize] - public void Test057_Should_Throw_When_Create_Term_Duplicate_Uid() - { - TestOutputLogger.LogContext("TestScenario", "Test058_Should_Throw_When_Create_Term_Duplicate_Uid"); - TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); - TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); - var termModel = new TermModel - { - Uid = _rootTermUid, - Name = "Duplicate" - }; - AssertLogger.ThrowsException(() => - _stack.Taxonomy(_taxonomyUid).Terms().Create(termModel), "CreateTermDuplicateUid"); - } - - [TestMethod] - [DoNotParallelize] - public void Test058_Should_Throw_When_Create_Term_Invalid_ParentUid() - { - TestOutputLogger.LogContext("TestScenario", "Test059_Should_Throw_When_Create_Term_Invalid_ParentUid"); - TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); - var termModel = new TermModel - { - Uid = "term_bad_parent_12345", - Name = "Bad Parent", - ParentUid = "non_existent_parent_uid_12345" - }; - AssertLogger.ThrowsException(() => - _stack.Taxonomy(_taxonomyUid).Terms().Create(termModel), "CreateTermInvalidParentUid"); - } - - [TestMethod] - [DoNotParallelize] - public void Test059_Should_Throw_When_Move_Term_To_Itself() - { - TestOutputLogger.LogContext("TestScenario", "Test060_Should_Throw_When_Move_Term_To_Itself"); - TestOutputLogger.LogContext("TaxonomyUid", _taxonomyUid ?? ""); - TestOutputLogger.LogContext("RootTermUid", _rootTermUid ?? ""); - if (string.IsNullOrEmpty(_rootTermUid)) - { - AssertLogger.Inconclusive("Root term not available, skipping self-referential move test."); - return; - } - var moveModel = new TermMoveModel - { - ParentUid = _rootTermUid, - Order = 1 - }; - var coll = new ParameterCollection(); - coll.Add("force", true); - AssertLogger.ThrowsException(() => - _stack.Taxonomy(_taxonomyUid).Terms(_rootTermUid).Move(moveModel, coll), "MoveTermToItself"); - } - private static Stack GetStack() { StackResponse response = StackResponse.getStack(_client.serializer);