From a12171a1fb5987ddeb1bec3588358f9d7218641b Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 10 Jul 2025 20:58:02 +0000 Subject: [PATCH 1/2] feat(api): api update --- .stats.yml | 4 +- .../increase/api/models/cards/CardDetails.kt | 42 +++++++++++++++++-- .../api/models/cards/CardDetailsTest.kt | 3 ++ 3 files changed, 44 insertions(+), 5 deletions(-) diff --git a/.stats.yml b/.stats.yml index 18daa6ba3..083e8155e 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 202 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/increase%2Fincrease-a7e0e17a385ddfb049d0fe4e5d05785901cf40f464c51399d7c2cd1f863696c0.yml -openapi_spec_hash: b4bca6edf466e9061a72c98207f92c6d +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/increase%2Fincrease-f0b14ed0b6857930b2bbb80a8a0580dff2aad5510240f608ea9385a8b1d1b66b.yml +openapi_spec_hash: ea869bb98167424f60f8ef006da70945 config_hash: a185e9a72778cc4658ea73fb3a7f1354 diff --git a/increase-java-core/src/main/kotlin/com/increase/api/models/cards/CardDetails.kt b/increase-java-core/src/main/kotlin/com/increase/api/models/cards/CardDetails.kt index 562ebddd8..eea7b68c4 100644 --- a/increase-java-core/src/main/kotlin/com/increase/api/models/cards/CardDetails.kt +++ b/increase-java-core/src/main/kotlin/com/increase/api/models/cards/CardDetails.kt @@ -23,6 +23,7 @@ private constructor( private val cardId: JsonField, private val expirationMonth: JsonField, private val expirationYear: JsonField, + private val pin: JsonField, private val primaryAccountNumber: JsonField, private val type: JsonField, private val verificationCode: JsonField, @@ -38,6 +39,7 @@ private constructor( @JsonProperty("expiration_year") @ExcludeMissing expirationYear: JsonField = JsonMissing.of(), + @JsonProperty("pin") @ExcludeMissing pin: JsonField = JsonMissing.of(), @JsonProperty("primary_account_number") @ExcludeMissing primaryAccountNumber: JsonField = JsonMissing.of(), @@ -49,6 +51,7 @@ private constructor( cardId, expirationMonth, expirationYear, + pin, primaryAccountNumber, type, verificationCode, @@ -79,6 +82,14 @@ private constructor( */ fun expirationYear(): Long = expirationYear.getRequired("expiration_year") + /** + * The 4-digit PIN for the card, for use with ATMs. + * + * @throws IncreaseInvalidDataException if the JSON field has an unexpected type or is + * unexpectedly missing or null (e.g. if the server responded with an unexpected value). + */ + fun pin(): String = pin.getRequired("pin") + /** * The card number. * @@ -130,6 +141,13 @@ private constructor( @ExcludeMissing fun _expirationYear(): JsonField = expirationYear + /** + * Returns the raw JSON value of [pin]. + * + * Unlike [pin], this method doesn't throw if the JSON field has an unexpected type. + */ + @JsonProperty("pin") @ExcludeMissing fun _pin(): JsonField = pin + /** * Returns the raw JSON value of [primaryAccountNumber]. * @@ -179,6 +197,7 @@ private constructor( * .cardId() * .expirationMonth() * .expirationYear() + * .pin() * .primaryAccountNumber() * .type() * .verificationCode() @@ -193,6 +212,7 @@ private constructor( private var cardId: JsonField? = null private var expirationMonth: JsonField? = null private var expirationYear: JsonField? = null + private var pin: JsonField? = null private var primaryAccountNumber: JsonField? = null private var type: JsonField? = null private var verificationCode: JsonField? = null @@ -203,6 +223,7 @@ private constructor( cardId = cardDetails.cardId expirationMonth = cardDetails.expirationMonth expirationYear = cardDetails.expirationYear + pin = cardDetails.pin primaryAccountNumber = cardDetails.primaryAccountNumber type = cardDetails.type verificationCode = cardDetails.verificationCode @@ -248,6 +269,17 @@ private constructor( this.expirationYear = expirationYear } + /** The 4-digit PIN for the card, for use with ATMs. */ + fun pin(pin: String) = pin(JsonField.of(pin)) + + /** + * Sets [Builder.pin] to an arbitrary JSON value. + * + * You should usually call [Builder.pin] with a well-typed [String] value instead. This + * method is primarily for setting the field to an undocumented or not yet supported value. + */ + fun pin(pin: JsonField) = apply { this.pin = pin } + /** The card number. */ fun primaryAccountNumber(primaryAccountNumber: String) = primaryAccountNumber(JsonField.of(primaryAccountNumber)) @@ -324,6 +356,7 @@ private constructor( * .cardId() * .expirationMonth() * .expirationYear() + * .pin() * .primaryAccountNumber() * .type() * .verificationCode() @@ -336,6 +369,7 @@ private constructor( checkRequired("cardId", cardId), checkRequired("expirationMonth", expirationMonth), checkRequired("expirationYear", expirationYear), + checkRequired("pin", pin), checkRequired("primaryAccountNumber", primaryAccountNumber), checkRequired("type", type), checkRequired("verificationCode", verificationCode), @@ -353,6 +387,7 @@ private constructor( cardId() expirationMonth() expirationYear() + pin() primaryAccountNumber() type().validate() verificationCode() @@ -377,6 +412,7 @@ private constructor( (if (cardId.asKnown().isPresent) 1 else 0) + (if (expirationMonth.asKnown().isPresent) 1 else 0) + (if (expirationYear.asKnown().isPresent) 1 else 0) + + (if (pin.asKnown().isPresent) 1 else 0) + (if (primaryAccountNumber.asKnown().isPresent) 1 else 0) + (type.asKnown().getOrNull()?.validity() ?: 0) + (if (verificationCode.asKnown().isPresent) 1 else 0) @@ -511,15 +547,15 @@ private constructor( return true } - return /* spotless:off */ other is CardDetails && cardId == other.cardId && expirationMonth == other.expirationMonth && expirationYear == other.expirationYear && primaryAccountNumber == other.primaryAccountNumber && type == other.type && verificationCode == other.verificationCode && additionalProperties == other.additionalProperties /* spotless:on */ + return /* spotless:off */ other is CardDetails && cardId == other.cardId && expirationMonth == other.expirationMonth && expirationYear == other.expirationYear && pin == other.pin && primaryAccountNumber == other.primaryAccountNumber && type == other.type && verificationCode == other.verificationCode && additionalProperties == other.additionalProperties /* spotless:on */ } /* spotless:off */ - private val hashCode: Int by lazy { Objects.hash(cardId, expirationMonth, expirationYear, primaryAccountNumber, type, verificationCode, additionalProperties) } + private val hashCode: Int by lazy { Objects.hash(cardId, expirationMonth, expirationYear, pin, primaryAccountNumber, type, verificationCode, additionalProperties) } /* spotless:on */ override fun hashCode(): Int = hashCode override fun toString() = - "CardDetails{cardId=$cardId, expirationMonth=$expirationMonth, expirationYear=$expirationYear, primaryAccountNumber=$primaryAccountNumber, type=$type, verificationCode=$verificationCode, additionalProperties=$additionalProperties}" + "CardDetails{cardId=$cardId, expirationMonth=$expirationMonth, expirationYear=$expirationYear, pin=$pin, primaryAccountNumber=$primaryAccountNumber, type=$type, verificationCode=$verificationCode, additionalProperties=$additionalProperties}" } diff --git a/increase-java-core/src/test/kotlin/com/increase/api/models/cards/CardDetailsTest.kt b/increase-java-core/src/test/kotlin/com/increase/api/models/cards/CardDetailsTest.kt index 2a78ebd9a..45b492e2f 100644 --- a/increase-java-core/src/test/kotlin/com/increase/api/models/cards/CardDetailsTest.kt +++ b/increase-java-core/src/test/kotlin/com/increase/api/models/cards/CardDetailsTest.kt @@ -16,6 +16,7 @@ internal class CardDetailsTest { .cardId("card_oubs0hwk5rn6knuecxg2") .expirationMonth(7L) .expirationYear(2025L) + .pin("1234") .primaryAccountNumber("4242424242424242") .type(CardDetails.Type.CARD_DETAILS) .verificationCode("123") @@ -24,6 +25,7 @@ internal class CardDetailsTest { assertThat(cardDetails.cardId()).isEqualTo("card_oubs0hwk5rn6knuecxg2") assertThat(cardDetails.expirationMonth()).isEqualTo(7L) assertThat(cardDetails.expirationYear()).isEqualTo(2025L) + assertThat(cardDetails.pin()).isEqualTo("1234") assertThat(cardDetails.primaryAccountNumber()).isEqualTo("4242424242424242") assertThat(cardDetails.type()).isEqualTo(CardDetails.Type.CARD_DETAILS) assertThat(cardDetails.verificationCode()).isEqualTo("123") @@ -37,6 +39,7 @@ internal class CardDetailsTest { .cardId("card_oubs0hwk5rn6knuecxg2") .expirationMonth(7L) .expirationYear(2025L) + .pin("1234") .primaryAccountNumber("4242424242424242") .type(CardDetails.Type.CARD_DETAILS) .verificationCode("123") From 8f02767f18ad7e406e5f1a702e5374ba428dd42d Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 10 Jul 2025 20:58:26 +0000 Subject: [PATCH 2/2] release: 0.260.0 --- .release-please-manifest.json | 2 +- CHANGELOG.md | 8 ++++++++ README.md | 10 +++++----- build.gradle.kts | 2 +- 4 files changed, 15 insertions(+), 7 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 8d6ed7aed..1e9a53acd 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.259.0" + ".": "0.260.0" } \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 8f14bba58..20c3b17c7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## 0.260.0 (2025-07-10) + +Full Changelog: [v0.259.0...v0.260.0](https://github.com/Increase/increase-java/compare/v0.259.0...v0.260.0) + +### Features + +* **api:** api update ([a12171a](https://github.com/Increase/increase-java/commit/a12171a1fb5987ddeb1bec3588358f9d7218641b)) + ## 0.259.0 (2025-07-09) Full Changelog: [v0.258.0...v0.259.0](https://github.com/Increase/increase-java/compare/v0.258.0...v0.259.0) diff --git a/README.md b/README.md index 7738c1f13..d5c2cfa68 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,8 @@ -[![Maven Central](https://img.shields.io/maven-central/v/com.increase.api/increase-java)](https://central.sonatype.com/artifact/com.increase.api/increase-java/0.259.0) -[![javadoc](https://javadoc.io/badge2/com.increase.api/increase-java/0.259.0/javadoc.svg)](https://javadoc.io/doc/com.increase.api/increase-java/0.259.0) +[![Maven Central](https://img.shields.io/maven-central/v/com.increase.api/increase-java)](https://central.sonatype.com/artifact/com.increase.api/increase-java/0.260.0) +[![javadoc](https://javadoc.io/badge2/com.increase.api/increase-java/0.260.0/javadoc.svg)](https://javadoc.io/doc/com.increase.api/increase-java/0.260.0) @@ -13,7 +13,7 @@ The Increase Java SDK is similar to the Increase Kotlin SDK but with minor diffe -The REST API documentation can be found on [increase.com](https://increase.com/documentation). Javadocs are available on [javadoc.io](https://javadoc.io/doc/com.increase.api/increase-java/0.259.0). +The REST API documentation can be found on [increase.com](https://increase.com/documentation). Javadocs are available on [javadoc.io](https://javadoc.io/doc/com.increase.api/increase-java/0.260.0). @@ -24,7 +24,7 @@ The REST API documentation can be found on [increase.com](https://increase.com/d ### Gradle ```kotlin -implementation("com.increase.api:increase-java:0.259.0") +implementation("com.increase.api:increase-java:0.260.0") ``` ### Maven @@ -33,7 +33,7 @@ implementation("com.increase.api:increase-java:0.259.0") com.increase.api increase-java - 0.259.0 + 0.260.0 ``` diff --git a/build.gradle.kts b/build.gradle.kts index b577b14ff..8b71fb90c 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -8,7 +8,7 @@ repositories { allprojects { group = "com.increase.api" - version = "0.259.0" // x-release-please-version + version = "0.260.0" // x-release-please-version } subprojects {