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

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
.env
.env.local
**/.speakeasy/temp/
**/.speakeasy/logs/
.speakeasy/reports
Expand Down
91 changes: 83 additions & 8 deletions .speakeasy/gen.lock

Large diffs are not rendered by default.

6 changes: 4 additions & 2 deletions .speakeasy/gen.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,13 @@ generation:
auth:
oAuth2ClientCredentialsEnabled: true
oAuth2PasswordEnabled: false
hoistGlobalSecurity: true
tests:
generateTests: true
generateNewTests: false
skipResponseBodyAssertions: false
java:
version: 3.2.0
version: 3.3.0
additionalDependencies: []
additionalPlugins: []
artifactID: backend-api
Expand All @@ -31,9 +32,10 @@ java:
companyName: My Company
companyURL: www.mycompany.com
defaultErrorName: SDKError
enableAsync: false
enableCustomCodeRegions: false
enableStreamingUploads: false
flattenGlobalSecurity: true
generateSpringBootStarter: true
githubURL: github.com/owner/repo
groupID: com.clerk
imports:
Expand Down
14 changes: 7 additions & 7 deletions .speakeasy/workflow.lock
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
speakeasyVersion: 1.606.9
speakeasyVersion: 1.622.1
sources:
clerk-java-sdk:
sourceNamespace: clerk-java-sdk
sourceRevisionDigest: sha256:50ec69cb208a504bcf1098f28817af6691e8e924eb4349d141989a927680dfe8
sourceBlobDigest: sha256:f8e89b57ae783aa6cc659bdc7c1d7955947b0c989a2224290169d25eb18c65df
sourceRevisionDigest: sha256:8a0bb9b60d98538847fe03fb23a22241be19f7f0bf3ced7c017bf1172723ad99
sourceBlobDigest: sha256:dee56d92678973315fec5204a6f0aaad530965513edfbbc97723f50f669977ab
tags:
- latest
- speakeasy-sdk-regen-1753143080
- speakeasy-sdk-regen-1756771797
- "2025-04-10"
targets:
clerk-java:
source: clerk-java-sdk
sourceNamespace: clerk-java-sdk
sourceRevisionDigest: sha256:50ec69cb208a504bcf1098f28817af6691e8e924eb4349d141989a927680dfe8
sourceBlobDigest: sha256:f8e89b57ae783aa6cc659bdc7c1d7955947b0c989a2224290169d25eb18c65df
sourceRevisionDigest: sha256:8a0bb9b60d98538847fe03fb23a22241be19f7f0bf3ced7c017bf1172723ad99
sourceBlobDigest: sha256:dee56d92678973315fec5204a6f0aaad530965513edfbbc97723f50f669977ab
codeSamplesNamespace: clerk-java-sdk-code-samples
codeSamplesRevisionDigest: sha256:ce2a259ab2e8d16332425f8ffa3e5d352574ad828ec574b02ed47ab8c262a028
codeSamplesRevisionDigest: sha256:7b87ee86f6ab03307f336d56cdda6c99cf06a868f61086a75bd616bbcaf4fab1
my-first-target:
source: clerk-java-sdk
sourceNamespace: clerk-java-sdk
Expand Down
7 changes: 5 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,15 +51,15 @@ The samples below show how a published SDK artifact is used:

Gradle:
```groovy
implementation 'com.clerk:backend-api:3.2.0'
implementation 'com.clerk:backend-api:3.3.0'
```

Maven:
```xml
<dependency>
<groupId>com.clerk</groupId>
<artifactId>backend-api</artifactId>
<version>3.2.0</version>
<version>3.3.0</version>
</dependency>
```

Expand Down Expand Up @@ -238,6 +238,7 @@ public class MachineAuthentication {
* [listPlans](docs/sdks/commerce/README.md#listplans) - List all commerce plans
* [listSubscriptionItems](docs/sdks/commerce/README.md#listsubscriptionitems) - List all subscription items
* [cancelSubscriptionItem](docs/sdks/commerce/README.md#cancelsubscriptionitem) - Cancel a subscription item
* [extendSubscriptionItemFreeTrial](docs/sdks/commerce/README.md#extendsubscriptionitemfreetrial) - Extend free trial for a subscription item

### [domains()](docs/sdks/domains/README.md)

Expand Down Expand Up @@ -311,6 +312,7 @@ public class MachineAuthentication {
* [update](docs/sdks/machines/README.md#update) - Update a machine
* [delete](docs/sdks/machines/README.md#delete) - Delete a machine
* [getSecretKey](docs/sdks/machines/README.md#getsecretkey) - Retrieve a machine secret key
* [rotateSecretKey](docs/sdks/machines/README.md#rotatesecretkey) - Rotate a machine's secret key
* [createScope](docs/sdks/machines/README.md#createscope) - Create a machine scope
* [deleteScope](docs/sdks/machines/README.md#deletescope) - Delete a machine scope

Expand Down Expand Up @@ -458,6 +460,7 @@ public class MachineAuthentication {

* [list](docs/sdks/waitlistentries/README.md#list) - List all waitlist entries
* [create](docs/sdks/waitlistentries/README.md#create) - Create a waitlist entry
* [delete](docs/sdks/waitlistentries/README.md#delete) - Delete a pending waitlist entry
* [invite](docs/sdks/waitlistentries/README.md#invite) - Invite a waitlist entry
* [reject](docs/sdks/waitlistentries/README.md#reject) - Reject a waitlist entry

Expand Down
12 changes: 11 additions & 1 deletion RELEASES.md
Original file line number Diff line number Diff line change
Expand Up @@ -348,4 +348,14 @@ Based on:
### Generated
- [java v3.2.0] .
### Releases
- [Maven Central v3.2.0] https://central.sonatype.com/artifact/com.clerk/backend-api/3.2.0 - .
- [Maven Central v3.2.0] https://central.sonatype.com/artifact/com.clerk/backend-api/3.2.0 - .

## 2025-09-23 00:09:25
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.622.1 (2.709.0) https://github.com/speakeasy-api/speakeasy
### Generated
- [java v3.3.0] .
### Releases
- [Maven Central v3.3.0] https://central.sonatype.com/artifact/com.clerk/backend-api/3.3.0 - .
141 changes: 59 additions & 82 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@

////////////////////////////////////////////////////////////////////////////////////////////
// This file is generated by Speakeasy and any edits will be lost in generation updates.
//
Expand All @@ -9,12 +8,15 @@
// of string where each string value is an additional line in the block) in gen.yaml.
////////////////////////////////////////////////////////////////////////////////////////////


plugins {
// Apply the java-library plugin for API and implementation separation.
id 'java-library'
id 'maven-publish'
id 'signing'
// V2 publishing plugin (Sonatype Central Portal)
id 'cl.franciscosolis.sonatype-central-upload' version '1.0.3'
id "io.spring.dependency-management" version "1.1.6" apply false
}

compileJava.options.encoding = "UTF-8"
Expand All @@ -33,7 +35,7 @@ java {

model {
tasks.generatePomFileForMavenPublication {
destination = file("$buildDir/pom.xml")
destination = file(layout.buildDirectory.file("pom.xml"))
}
}

Expand All @@ -45,7 +47,7 @@ jar {
archiveBaseName = "${artifactId}"

into("META-INF/maven/com.clerk/backend-api") {
from("$buildDir/pom.xml")
from(layout.buildDirectory.file("pom.xml"))
}
}

Expand All @@ -58,7 +60,7 @@ javadoc {
options.addStringOption('Xdoclint:none', '-quiet')
}

tasks.withType(Javadoc) {
tasks.withType(Javadoc).configureEach {
failOnError = false
options.addStringOption('Xdoclint:none', '-quiet')
}
Expand All @@ -74,93 +76,68 @@ sourcesJar {
javadocJar {
archiveBaseName = "${artifactId}"
}
sonatypeCentralUpload {
// This is your Sonatype generated username
username = System.getenv("SONATYPE_USERNAME")
// This is your sonatype generated password
password = System.getenv("SONATYPE_PASSWORD")

// This is a list of files to upload. Ideally you would point to your jar file, source and javadoc jar (required by central)
archives = files(
"$buildDir/libs/${artifactId}-${version}.jar",
"$buildDir/libs/${artifactId}-${version}-sources.jar",
"$buildDir/libs/${artifactId}-${version}-javadoc.jar"
)

// This is the pom file to upload. This is required by central
pom = file("$buildDir/pom.xml")

// This is your PGP private key. This is required to sign your files
signingKey = System.getenv("SONATYPE_SIGNING_KEY")
// This is your PGP private key passphrase to decrypt your private key
signingKeyPassphrase = System.getenv("SIGNING_KEY_PASSPHRASE")

dependencies {
api 'com.fasterxml.jackson.core:jackson-annotations:2.18.2'
implementation 'com.fasterxml.jackson.core:jackson-databind:2.18.2'
implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.18.2'
implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.18.2'
api('org.openapitools:jackson-databind-nullable:0.2.6') {exclude group: 'com.fasterxml.jackson.core', module: 'jackson-databind'}
implementation 'commons-io:commons-io:2.18.0'
}

ext {
springBootVersion = '2.7.18'
}

publishing {

publications {
maven(MavenPublication) {
// note that properties can't yet be used below!
// https://github.com/gradle/gradle/issues/18619
groupId = "com.clerk"
artifactId = "backend-api"
version = "3.2.0"

from components.java

pom {
properties = [
'maven.compiler.source': '11',
'maven.compiler.target': '11',
]
name = 'My Company Java SDK'
description = 'SDK enabling Java developers to easily integrate with the My Company API.'
url = 'https://github.com/owner/repo'
scm {
url = 'github.com/owner/repo'
connection = 'scm:git:ssh://[email protected]/owner/repo.git'
}
licenses {
license {
name = 'The MIT License (MIT)'
url = 'https://mit-license.org/'
}
}
developers {
developer {
name = 'My Company'
organization = 'My Company'
email = '[email protected]'
}
}
organization {
name = 'My Company'
url = 'www.mycompany.com'
}
}
subprojects {
// Ensure subprojects use the same group and version as root project
group = rootProject.group
version = rootProject.version

apply {
plugin "java-library"
plugin "io.spring.dependency-management"
plugin "maven-publish"
plugin "signing"
plugin "cl.franciscosolis.sonatype-central-upload"
}
dependencyManagement {
imports {
mavenBom "org.springframework.boot:spring-boot-dependencies:${rootProject.springBootVersion}"
}
}
}
repositories {
mavenCentral()
}
java {
withSourcesJar()
withJavadocJar()
}
tasks.withType(JavaCompile).configureEach {
options.release = 11
}

if (!project.hasProperty('skip.signing')) {
signing {
def signingKey = findProperty("signingKey")
def signingPassphrase = findProperty("signingPassphrase")
useInMemoryPgpKeys(signingKey, signingPassphrase)
sign publishing.publications.maven
model {
tasks.generatePomFileForMavenPublication {
destination = file(layout.buildDirectory.file("pom.xml"))
}
}
// Apply publishing configuration to all subprojects - they'll check for publishingConfig internally
apply from: rootProject.file('publishing.gradle')
}



dependencies {
api 'com.fasterxml.jackson.core:jackson-annotations:2.18.2'
implementation 'com.fasterxml.jackson.core:jackson-databind:2.18.2'
implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.18.2'
implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.18.2'
api('org.openapitools:jackson-databind-nullable:0.2.6') {exclude group: 'com.fasterxml.jackson.core', module: 'jackson-databind'}
implementation 'commons-io:commons-io:2.18.0'
ext {
publishingConfig = [
groupId: group,
artifactId: artifactId,
version: version,
name: "My Company Java SDK",
description: "SDK enabling Java developers to easily integrate with the My Company API.",
publicationName: "maven"
]
}

apply from: 'publishing.gradle'

apply from: 'build-extras.gradle'
8 changes: 8 additions & 0 deletions docs/models/components/ExtendFreeTrialRequest.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# ExtendFreeTrialRequest


## Fields

| Field | Type | Required | Description | Example |
| --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| `extendTo` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_check_mark: | RFC3339 timestamp to extend the free trial to.<br/>Must be in the future and not more than 365 days from now. | 2026-01-08T00:00:00Z |
8 changes: 8 additions & 0 deletions docs/models/operations/DeleteWaitlistEntryRequest.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# DeleteWaitlistEntryRequest


## Fields

| Field | Type | Required | Description |
| -------------------------------------- | -------------------------------------- | -------------------------------------- | -------------------------------------- |
| `waitlistEntryId` | *String* | :heavy_check_mark: | The ID of the waitlist entry to delete |
11 changes: 11 additions & 0 deletions docs/models/operations/DeleteWaitlistEntryResponse.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# DeleteWaitlistEntryResponse


## Fields

| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation |
| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation |
| `rawResponse` | [HttpResponse\<InputStream>](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
| `deletedObject` | [Optional\<DeletedObject>](../../models/components/DeletedObject.md) | :heavy_minus_sign: | Deleted Object |
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# ExtendCommerceSubscriptionItemFreeTrialRequest


## Fields

| Field | Type | Required | Description |
| --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- |
| `subscriptionItemId` | *String* | :heavy_check_mark: | The ID of the subscription item to extend the free trial for |
| `extendFreeTrialRequest` | [ExtendFreeTrialRequest](../../models/components/ExtendFreeTrialRequest.md) | :heavy_check_mark: | Parameters for extending the free trial |
Loading
Loading