From 1a137afb5587c8276d8026ef7c203728091da2be Mon Sep 17 00:00:00 2001 From: fern-api <115122769+fern-api[bot]@users.noreply.github.com> Date: Fri, 14 Jun 2024 21:30:17 +0000 Subject: [PATCH 1/3] SDK regeneration --- build.gradle | 2 +- .../com/assemblyai/api/core/Environment.java | 1 - .../api/resources/lemur/LemurClient.java | 42 ++ .../lemur/types/ILemurBaseResponse.java | 2 + .../lemur/types/LemurActionItemsResponse.java | 45 +- .../lemur/types/LemurBaseResponse.java | 44 +- .../types/LemurQuestionAnswerResponse.java | 47 +- .../resources/lemur/types/LemurResponse.java | 118 +++++ .../lemur/types/LemurSummaryResponse.java | 45 +- .../lemur/types/LemurTaskResponse.java | 45 +- .../api/resources/lemur/types/LemurUsage.java | 137 ++++++ .../types/ReceiveMessage.java | 8 +- .../types/SendMessage.java | 5 +- .../resources/streaming/types/Streaming.java | 82 ++++ .../transcripts/types/EntityType.java | 84 ++-- .../transcripts/types/PiiPolicy.java | 456 ++++++++++++------ 16 files changed, 939 insertions(+), 224 deletions(-) create mode 100644 src/main/java/com/assemblyai/api/resources/lemur/types/LemurResponse.java create mode 100644 src/main/java/com/assemblyai/api/resources/lemur/types/LemurUsage.java rename src/main/java/com/assemblyai/api/resources/{realtime => streaming}/types/ReceiveMessage.java (90%) rename src/main/java/com/assemblyai/api/resources/{realtime => streaming}/types/SendMessage.java (92%) create mode 100644 src/main/java/com/assemblyai/api/resources/streaming/types/Streaming.java diff --git a/build.gradle b/build.gradle index cfddae8b..f1bdc3f0 100644 --- a/build.gradle +++ b/build.gradle @@ -47,7 +47,7 @@ publishing { maven(MavenPublication) { groupId = 'com.assemblyai' artifactId = 'assemblyai-java' - version = '1.1.3' + version = '1.2.0' from components.java pom { scm { diff --git a/src/main/java/com/assemblyai/api/core/Environment.java b/src/main/java/com/assemblyai/api/core/Environment.java index dfd12624..bab09468 100644 --- a/src/main/java/com/assemblyai/api/core/Environment.java +++ b/src/main/java/com/assemblyai/api/core/Environment.java @@ -16,7 +16,6 @@ public String getUrl() { return this.url; } - public static Environment custom(String url) { return new Environment(url); } diff --git a/src/main/java/com/assemblyai/api/resources/lemur/LemurClient.java b/src/main/java/com/assemblyai/api/resources/lemur/LemurClient.java index 1960eb08..5a23cf0e 100644 --- a/src/main/java/com/assemblyai/api/resources/lemur/LemurClient.java +++ b/src/main/java/com/assemblyai/api/resources/lemur/LemurClient.java @@ -14,6 +14,7 @@ import com.assemblyai.api.resources.lemur.requests.LemurTaskParams; import com.assemblyai.api.resources.lemur.types.LemurActionItemsResponse; import com.assemblyai.api.resources.lemur.types.LemurQuestionAnswerResponse; +import com.assemblyai.api.resources.lemur.types.LemurResponse; import com.assemblyai.api.resources.lemur.types.LemurSummaryResponse; import com.assemblyai.api.resources.lemur.types.LemurTaskResponse; import com.assemblyai.api.resources.lemur.types.PurgeLemurRequestDataResponse; @@ -241,6 +242,47 @@ public LemurActionItemsResponse actionItems(LemurActionItemsParams request, Requ } } + /** + * Retrieve a LeMUR response that was previously generated. + */ + public LemurResponse getResponse(String requestId) { + return getResponse(requestId, null); + } + + /** + * Retrieve a LeMUR response that was previously generated. + */ + public LemurResponse getResponse(String requestId, RequestOptions requestOptions) { + HttpUrl httpUrl = HttpUrl.parse(this.clientOptions.environment().getUrl()) + .newBuilder() + .addPathSegments("lemur/v3") + .addPathSegment(requestId) + .build(); + Request okhttpRequest = new Request.Builder() + .url(httpUrl) + .method("GET", null) + .headers(Headers.of(clientOptions.headers(requestOptions))) + .addHeader("Content-Type", "application/json") + .build(); + try { + OkHttpClient client = clientOptions.httpClient(); + if (requestOptions != null && requestOptions.getTimeout().isPresent()) { + client = clientOptions.httpClientWithTimeout(requestOptions); + } + Response response = client.newCall(okhttpRequest).execute(); + ResponseBody responseBody = response.body(); + if (response.isSuccessful()) { + return ObjectMappers.JSON_MAPPER.readValue(responseBody.string(), LemurResponse.class); + } + throw new ApiError( + response.code(), + ObjectMappers.JSON_MAPPER.readValue( + responseBody != null ? responseBody.string() : "{}", Object.class)); + } catch (IOException e) { + throw new RuntimeException(e); + } + } + /** * Delete the data for a previously submitted LeMUR request. * The LLM response data, as well as any context provided in the original request will be removed. diff --git a/src/main/java/com/assemblyai/api/resources/lemur/types/ILemurBaseResponse.java b/src/main/java/com/assemblyai/api/resources/lemur/types/ILemurBaseResponse.java index b752dca1..294d08e5 100644 --- a/src/main/java/com/assemblyai/api/resources/lemur/types/ILemurBaseResponse.java +++ b/src/main/java/com/assemblyai/api/resources/lemur/types/ILemurBaseResponse.java @@ -5,4 +5,6 @@ public interface ILemurBaseResponse { String getRequestId(); + + LemurUsage getUsage(); } diff --git a/src/main/java/com/assemblyai/api/resources/lemur/types/LemurActionItemsResponse.java b/src/main/java/com/assemblyai/api/resources/lemur/types/LemurActionItemsResponse.java index 5bf9bdeb..50491450 100644 --- a/src/main/java/com/assemblyai/api/resources/lemur/types/LemurActionItemsResponse.java +++ b/src/main/java/com/assemblyai/api/resources/lemur/types/LemurActionItemsResponse.java @@ -20,12 +20,16 @@ public final class LemurActionItemsResponse implements ILemurBaseResponse { private final String requestId; + private final LemurUsage usage; + private final String response; private final Map additionalProperties; - private LemurActionItemsResponse(String requestId, String response, Map additionalProperties) { + private LemurActionItemsResponse( + String requestId, LemurUsage usage, String response, Map additionalProperties) { this.requestId = requestId; + this.usage = usage; this.response = response; this.additionalProperties = additionalProperties; } @@ -39,6 +43,15 @@ public String getRequestId() { return requestId; } + /** + * @return The usage numbers for the LeMUR request + */ + @JsonProperty("usage") + @java.lang.Override + public LemurUsage getUsage() { + return usage; + } + /** * @return The response generated by LeMUR */ @@ -59,12 +72,12 @@ public Map getAdditionalProperties() { } private boolean equalTo(LemurActionItemsResponse other) { - return requestId.equals(other.requestId) && response.equals(other.response); + return requestId.equals(other.requestId) && usage.equals(other.usage) && response.equals(other.response); } @java.lang.Override public int hashCode() { - return Objects.hash(this.requestId, this.response); + return Objects.hash(this.requestId, this.usage, this.response); } @java.lang.Override @@ -77,11 +90,15 @@ public static RequestIdStage builder() { } public interface RequestIdStage { - ResponseStage requestId(String requestId); + UsageStage requestId(String requestId); Builder from(LemurActionItemsResponse other); } + public interface UsageStage { + ResponseStage usage(LemurUsage usage); + } + public interface ResponseStage { _FinalStage response(String response); } @@ -91,9 +108,11 @@ public interface _FinalStage { } @JsonIgnoreProperties(ignoreUnknown = true) - public static final class Builder implements RequestIdStage, ResponseStage, _FinalStage { + public static final class Builder implements RequestIdStage, UsageStage, ResponseStage, _FinalStage { private String requestId; + private LemurUsage usage; + private String response; @JsonAnySetter @@ -104,6 +123,7 @@ private Builder() {} @java.lang.Override public Builder from(LemurActionItemsResponse other) { requestId(other.getRequestId()); + usage(other.getUsage()); response(other.getResponse()); return this; } @@ -114,11 +134,22 @@ public Builder from(LemurActionItemsResponse other) { */ @java.lang.Override @JsonSetter("request_id") - public ResponseStage requestId(String requestId) { + public UsageStage requestId(String requestId) { this.requestId = requestId; return this; } + /** + *

The usage numbers for the LeMUR request

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + @JsonSetter("usage") + public ResponseStage usage(LemurUsage usage) { + this.usage = usage; + return this; + } + /** *

The response generated by LeMUR

* @return Reference to {@code this} so that method calls can be chained together. @@ -132,7 +163,7 @@ public _FinalStage response(String response) { @java.lang.Override public LemurActionItemsResponse build() { - return new LemurActionItemsResponse(requestId, response, additionalProperties); + return new LemurActionItemsResponse(requestId, usage, response, additionalProperties); } } } diff --git a/src/main/java/com/assemblyai/api/resources/lemur/types/LemurBaseResponse.java b/src/main/java/com/assemblyai/api/resources/lemur/types/LemurBaseResponse.java index 2a56b982..4ddcc518 100644 --- a/src/main/java/com/assemblyai/api/resources/lemur/types/LemurBaseResponse.java +++ b/src/main/java/com/assemblyai/api/resources/lemur/types/LemurBaseResponse.java @@ -20,10 +20,13 @@ public final class LemurBaseResponse implements ILemurBaseResponse { private final String requestId; + private final LemurUsage usage; + private final Map additionalProperties; - private LemurBaseResponse(String requestId, Map additionalProperties) { + private LemurBaseResponse(String requestId, LemurUsage usage, Map additionalProperties) { this.requestId = requestId; + this.usage = usage; this.additionalProperties = additionalProperties; } @@ -36,6 +39,15 @@ public String getRequestId() { return requestId; } + /** + * @return The usage numbers for the LeMUR request + */ + @JsonProperty("usage") + @java.lang.Override + public LemurUsage getUsage() { + return usage; + } + @java.lang.Override public boolean equals(Object other) { if (this == other) return true; @@ -48,12 +60,12 @@ public Map getAdditionalProperties() { } private boolean equalTo(LemurBaseResponse other) { - return requestId.equals(other.requestId); + return requestId.equals(other.requestId) && usage.equals(other.usage); } @java.lang.Override public int hashCode() { - return Objects.hash(this.requestId); + return Objects.hash(this.requestId, this.usage); } @java.lang.Override @@ -66,19 +78,25 @@ public static RequestIdStage builder() { } public interface RequestIdStage { - _FinalStage requestId(String requestId); + UsageStage requestId(String requestId); Builder from(LemurBaseResponse other); } + public interface UsageStage { + _FinalStage usage(LemurUsage usage); + } + public interface _FinalStage { LemurBaseResponse build(); } @JsonIgnoreProperties(ignoreUnknown = true) - public static final class Builder implements RequestIdStage, _FinalStage { + public static final class Builder implements RequestIdStage, UsageStage, _FinalStage { private String requestId; + private LemurUsage usage; + @JsonAnySetter private Map additionalProperties = new HashMap<>(); @@ -87,6 +105,7 @@ private Builder() {} @java.lang.Override public Builder from(LemurBaseResponse other) { requestId(other.getRequestId()); + usage(other.getUsage()); return this; } @@ -96,14 +115,25 @@ public Builder from(LemurBaseResponse other) { */ @java.lang.Override @JsonSetter("request_id") - public _FinalStage requestId(String requestId) { + public UsageStage requestId(String requestId) { this.requestId = requestId; return this; } + /** + *

The usage numbers for the LeMUR request

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + @JsonSetter("usage") + public _FinalStage usage(LemurUsage usage) { + this.usage = usage; + return this; + } + @java.lang.Override public LemurBaseResponse build() { - return new LemurBaseResponse(requestId, additionalProperties); + return new LemurBaseResponse(requestId, usage, additionalProperties); } } } diff --git a/src/main/java/com/assemblyai/api/resources/lemur/types/LemurQuestionAnswerResponse.java b/src/main/java/com/assemblyai/api/resources/lemur/types/LemurQuestionAnswerResponse.java index df9e09fa..a09a97d7 100644 --- a/src/main/java/com/assemblyai/api/resources/lemur/types/LemurQuestionAnswerResponse.java +++ b/src/main/java/com/assemblyai/api/resources/lemur/types/LemurQuestionAnswerResponse.java @@ -23,13 +23,19 @@ public final class LemurQuestionAnswerResponse implements ILemurBaseResponse { private final String requestId; + private final LemurUsage usage; + private final List response; private final Map additionalProperties; private LemurQuestionAnswerResponse( - String requestId, List response, Map additionalProperties) { + String requestId, + LemurUsage usage, + List response, + Map additionalProperties) { this.requestId = requestId; + this.usage = usage; this.response = response; this.additionalProperties = additionalProperties; } @@ -43,6 +49,15 @@ public String getRequestId() { return requestId; } + /** + * @return The usage numbers for the LeMUR request + */ + @JsonProperty("usage") + @java.lang.Override + public LemurUsage getUsage() { + return usage; + } + /** * @return The answers generated by LeMUR and their questions */ @@ -63,12 +78,12 @@ public Map getAdditionalProperties() { } private boolean equalTo(LemurQuestionAnswerResponse other) { - return requestId.equals(other.requestId) && response.equals(other.response); + return requestId.equals(other.requestId) && usage.equals(other.usage) && response.equals(other.response); } @java.lang.Override public int hashCode() { - return Objects.hash(this.requestId, this.response); + return Objects.hash(this.requestId, this.usage, this.response); } @java.lang.Override @@ -81,11 +96,15 @@ public static RequestIdStage builder() { } public interface RequestIdStage { - _FinalStage requestId(String requestId); + UsageStage requestId(String requestId); Builder from(LemurQuestionAnswerResponse other); } + public interface UsageStage { + _FinalStage usage(LemurUsage usage); + } + public interface _FinalStage { LemurQuestionAnswerResponse build(); @@ -97,9 +116,11 @@ public interface _FinalStage { } @JsonIgnoreProperties(ignoreUnknown = true) - public static final class Builder implements RequestIdStage, _FinalStage { + public static final class Builder implements RequestIdStage, UsageStage, _FinalStage { private String requestId; + private LemurUsage usage; + private List response = new ArrayList<>(); @JsonAnySetter @@ -110,6 +131,7 @@ private Builder() {} @java.lang.Override public Builder from(LemurQuestionAnswerResponse other) { requestId(other.getRequestId()); + usage(other.getUsage()); response(other.getResponse()); return this; } @@ -120,11 +142,22 @@ public Builder from(LemurQuestionAnswerResponse other) { */ @java.lang.Override @JsonSetter("request_id") - public _FinalStage requestId(String requestId) { + public UsageStage requestId(String requestId) { this.requestId = requestId; return this; } + /** + *

The usage numbers for the LeMUR request

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + @JsonSetter("usage") + public _FinalStage usage(LemurUsage usage) { + this.usage = usage; + return this; + } + /** *

The answers generated by LeMUR and their questions

* @return Reference to {@code this} so that method calls can be chained together. @@ -155,7 +188,7 @@ public _FinalStage response(List response) { @java.lang.Override public LemurQuestionAnswerResponse build() { - return new LemurQuestionAnswerResponse(requestId, response, additionalProperties); + return new LemurQuestionAnswerResponse(requestId, usage, response, additionalProperties); } } } diff --git a/src/main/java/com/assemblyai/api/resources/lemur/types/LemurResponse.java b/src/main/java/com/assemblyai/api/resources/lemur/types/LemurResponse.java new file mode 100644 index 00000000..97d809cf --- /dev/null +++ b/src/main/java/com/assemblyai/api/resources/lemur/types/LemurResponse.java @@ -0,0 +1,118 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ +package com.assemblyai.api.resources.lemur.types; + +import com.assemblyai.api.core.ObjectMappers; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fasterxml.jackson.core.JsonParseException; +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import com.fasterxml.jackson.databind.deser.std.StdDeserializer; +import java.io.IOException; +import java.util.Objects; + +@JsonDeserialize(using = LemurResponse.Deserializer.class) +public final class LemurResponse { + private final Object value; + + private final int type; + + private LemurResponse(Object value, int type) { + this.value = value; + this.type = type; + } + + @JsonValue + public Object get() { + return this.value; + } + + public T visit(Visitor visitor) { + if (this.type == 0) { + return visitor.visit((LemurTaskResponse) this.value); + } else if (this.type == 1) { + return visitor.visit((LemurSummaryResponse) this.value); + } else if (this.type == 2) { + return visitor.visit((LemurQuestionAnswerResponse) this.value); + } else if (this.type == 3) { + return visitor.visit((LemurActionItemsResponse) this.value); + } + throw new IllegalStateException("Failed to visit value. This should never happen."); + } + + @java.lang.Override + public boolean equals(Object other) { + if (this == other) return true; + return other instanceof LemurResponse && equalTo((LemurResponse) other); + } + + private boolean equalTo(LemurResponse other) { + return value.equals(other.value); + } + + @java.lang.Override + public int hashCode() { + return Objects.hash(this.value); + } + + @java.lang.Override + public String toString() { + return this.value.toString(); + } + + public static LemurResponse of(LemurTaskResponse value) { + return new LemurResponse(value, 0); + } + + public static LemurResponse of(LemurSummaryResponse value) { + return new LemurResponse(value, 1); + } + + public static LemurResponse of(LemurQuestionAnswerResponse value) { + return new LemurResponse(value, 2); + } + + public static LemurResponse of(LemurActionItemsResponse value) { + return new LemurResponse(value, 3); + } + + public interface Visitor { + T visit(LemurTaskResponse value); + + T visit(LemurSummaryResponse value); + + T visit(LemurQuestionAnswerResponse value); + + T visit(LemurActionItemsResponse value); + } + + static final class Deserializer extends StdDeserializer { + Deserializer() { + super(LemurResponse.class); + } + + @java.lang.Override + public LemurResponse deserialize(JsonParser p, DeserializationContext ctxt) throws IOException { + Object value = p.readValueAs(Object.class); + try { + return of(ObjectMappers.JSON_MAPPER.convertValue(value, LemurTaskResponse.class)); + } catch (IllegalArgumentException e) { + } + try { + return of(ObjectMappers.JSON_MAPPER.convertValue(value, LemurSummaryResponse.class)); + } catch (IllegalArgumentException e) { + } + try { + return of(ObjectMappers.JSON_MAPPER.convertValue(value, LemurQuestionAnswerResponse.class)); + } catch (IllegalArgumentException e) { + } + try { + return of(ObjectMappers.JSON_MAPPER.convertValue(value, LemurActionItemsResponse.class)); + } catch (IllegalArgumentException e) { + } + throw new JsonParseException(p, "Failed to deserialize"); + } + } +} diff --git a/src/main/java/com/assemblyai/api/resources/lemur/types/LemurSummaryResponse.java b/src/main/java/com/assemblyai/api/resources/lemur/types/LemurSummaryResponse.java index 6e3f9e10..f2204d22 100644 --- a/src/main/java/com/assemblyai/api/resources/lemur/types/LemurSummaryResponse.java +++ b/src/main/java/com/assemblyai/api/resources/lemur/types/LemurSummaryResponse.java @@ -20,12 +20,16 @@ public final class LemurSummaryResponse implements ILemurBaseResponse { private final String requestId; + private final LemurUsage usage; + private final String response; private final Map additionalProperties; - private LemurSummaryResponse(String requestId, String response, Map additionalProperties) { + private LemurSummaryResponse( + String requestId, LemurUsage usage, String response, Map additionalProperties) { this.requestId = requestId; + this.usage = usage; this.response = response; this.additionalProperties = additionalProperties; } @@ -39,6 +43,15 @@ public String getRequestId() { return requestId; } + /** + * @return The usage numbers for the LeMUR request + */ + @JsonProperty("usage") + @java.lang.Override + public LemurUsage getUsage() { + return usage; + } + /** * @return The response generated by LeMUR */ @@ -59,12 +72,12 @@ public Map getAdditionalProperties() { } private boolean equalTo(LemurSummaryResponse other) { - return requestId.equals(other.requestId) && response.equals(other.response); + return requestId.equals(other.requestId) && usage.equals(other.usage) && response.equals(other.response); } @java.lang.Override public int hashCode() { - return Objects.hash(this.requestId, this.response); + return Objects.hash(this.requestId, this.usage, this.response); } @java.lang.Override @@ -77,11 +90,15 @@ public static RequestIdStage builder() { } public interface RequestIdStage { - ResponseStage requestId(String requestId); + UsageStage requestId(String requestId); Builder from(LemurSummaryResponse other); } + public interface UsageStage { + ResponseStage usage(LemurUsage usage); + } + public interface ResponseStage { _FinalStage response(String response); } @@ -91,9 +108,11 @@ public interface _FinalStage { } @JsonIgnoreProperties(ignoreUnknown = true) - public static final class Builder implements RequestIdStage, ResponseStage, _FinalStage { + public static final class Builder implements RequestIdStage, UsageStage, ResponseStage, _FinalStage { private String requestId; + private LemurUsage usage; + private String response; @JsonAnySetter @@ -104,6 +123,7 @@ private Builder() {} @java.lang.Override public Builder from(LemurSummaryResponse other) { requestId(other.getRequestId()); + usage(other.getUsage()); response(other.getResponse()); return this; } @@ -114,11 +134,22 @@ public Builder from(LemurSummaryResponse other) { */ @java.lang.Override @JsonSetter("request_id") - public ResponseStage requestId(String requestId) { + public UsageStage requestId(String requestId) { this.requestId = requestId; return this; } + /** + *

The usage numbers for the LeMUR request

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + @JsonSetter("usage") + public ResponseStage usage(LemurUsage usage) { + this.usage = usage; + return this; + } + /** *

The response generated by LeMUR

* @return Reference to {@code this} so that method calls can be chained together. @@ -132,7 +163,7 @@ public _FinalStage response(String response) { @java.lang.Override public LemurSummaryResponse build() { - return new LemurSummaryResponse(requestId, response, additionalProperties); + return new LemurSummaryResponse(requestId, usage, response, additionalProperties); } } } diff --git a/src/main/java/com/assemblyai/api/resources/lemur/types/LemurTaskResponse.java b/src/main/java/com/assemblyai/api/resources/lemur/types/LemurTaskResponse.java index 2f237ee1..31bf467c 100644 --- a/src/main/java/com/assemblyai/api/resources/lemur/types/LemurTaskResponse.java +++ b/src/main/java/com/assemblyai/api/resources/lemur/types/LemurTaskResponse.java @@ -20,12 +20,16 @@ public final class LemurTaskResponse implements ILemurBaseResponse { private final String requestId; + private final LemurUsage usage; + private final String response; private final Map additionalProperties; - private LemurTaskResponse(String requestId, String response, Map additionalProperties) { + private LemurTaskResponse( + String requestId, LemurUsage usage, String response, Map additionalProperties) { this.requestId = requestId; + this.usage = usage; this.response = response; this.additionalProperties = additionalProperties; } @@ -39,6 +43,15 @@ public String getRequestId() { return requestId; } + /** + * @return The usage numbers for the LeMUR request + */ + @JsonProperty("usage") + @java.lang.Override + public LemurUsage getUsage() { + return usage; + } + /** * @return The response generated by LeMUR. */ @@ -59,12 +72,12 @@ public Map getAdditionalProperties() { } private boolean equalTo(LemurTaskResponse other) { - return requestId.equals(other.requestId) && response.equals(other.response); + return requestId.equals(other.requestId) && usage.equals(other.usage) && response.equals(other.response); } @java.lang.Override public int hashCode() { - return Objects.hash(this.requestId, this.response); + return Objects.hash(this.requestId, this.usage, this.response); } @java.lang.Override @@ -77,11 +90,15 @@ public static RequestIdStage builder() { } public interface RequestIdStage { - ResponseStage requestId(String requestId); + UsageStage requestId(String requestId); Builder from(LemurTaskResponse other); } + public interface UsageStage { + ResponseStage usage(LemurUsage usage); + } + public interface ResponseStage { _FinalStage response(String response); } @@ -91,9 +108,11 @@ public interface _FinalStage { } @JsonIgnoreProperties(ignoreUnknown = true) - public static final class Builder implements RequestIdStage, ResponseStage, _FinalStage { + public static final class Builder implements RequestIdStage, UsageStage, ResponseStage, _FinalStage { private String requestId; + private LemurUsage usage; + private String response; @JsonAnySetter @@ -104,6 +123,7 @@ private Builder() {} @java.lang.Override public Builder from(LemurTaskResponse other) { requestId(other.getRequestId()); + usage(other.getUsage()); response(other.getResponse()); return this; } @@ -114,11 +134,22 @@ public Builder from(LemurTaskResponse other) { */ @java.lang.Override @JsonSetter("request_id") - public ResponseStage requestId(String requestId) { + public UsageStage requestId(String requestId) { this.requestId = requestId; return this; } + /** + *

The usage numbers for the LeMUR request

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + @JsonSetter("usage") + public ResponseStage usage(LemurUsage usage) { + this.usage = usage; + return this; + } + /** *

The response generated by LeMUR.

* @return Reference to {@code this} so that method calls can be chained together. @@ -132,7 +163,7 @@ public _FinalStage response(String response) { @java.lang.Override public LemurTaskResponse build() { - return new LemurTaskResponse(requestId, response, additionalProperties); + return new LemurTaskResponse(requestId, usage, response, additionalProperties); } } } diff --git a/src/main/java/com/assemblyai/api/resources/lemur/types/LemurUsage.java b/src/main/java/com/assemblyai/api/resources/lemur/types/LemurUsage.java new file mode 100644 index 00000000..b1a80ac1 --- /dev/null +++ b/src/main/java/com/assemblyai/api/resources/lemur/types/LemurUsage.java @@ -0,0 +1,137 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ +package com.assemblyai.api.resources.lemur.types; + +import com.assemblyai.api.core.ObjectMappers; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonSetter; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +@JsonInclude(JsonInclude.Include.NON_EMPTY) +@JsonDeserialize(builder = LemurUsage.Builder.class) +public final class LemurUsage { + private final int inputTokens; + + private final int outputTokens; + + private final Map additionalProperties; + + private LemurUsage(int inputTokens, int outputTokens, Map additionalProperties) { + this.inputTokens = inputTokens; + this.outputTokens = outputTokens; + this.additionalProperties = additionalProperties; + } + + /** + * @return The number of input tokens used by the model + */ + @JsonProperty("input_tokens") + public int getInputTokens() { + return inputTokens; + } + + /** + * @return The number of output tokens generated by the model + */ + @JsonProperty("output_tokens") + public int getOutputTokens() { + return outputTokens; + } + + @java.lang.Override + public boolean equals(Object other) { + if (this == other) return true; + return other instanceof LemurUsage && equalTo((LemurUsage) other); + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + private boolean equalTo(LemurUsage other) { + return inputTokens == other.inputTokens && outputTokens == other.outputTokens; + } + + @java.lang.Override + public int hashCode() { + return Objects.hash(this.inputTokens, this.outputTokens); + } + + @java.lang.Override + public String toString() { + return ObjectMappers.stringify(this); + } + + public static InputTokensStage builder() { + return new Builder(); + } + + public interface InputTokensStage { + OutputTokensStage inputTokens(int inputTokens); + + Builder from(LemurUsage other); + } + + public interface OutputTokensStage { + _FinalStage outputTokens(int outputTokens); + } + + public interface _FinalStage { + LemurUsage build(); + } + + @JsonIgnoreProperties(ignoreUnknown = true) + public static final class Builder implements InputTokensStage, OutputTokensStage, _FinalStage { + private int inputTokens; + + private int outputTokens; + + @JsonAnySetter + private Map additionalProperties = new HashMap<>(); + + private Builder() {} + + @java.lang.Override + public Builder from(LemurUsage other) { + inputTokens(other.getInputTokens()); + outputTokens(other.getOutputTokens()); + return this; + } + + /** + *

The number of input tokens used by the model

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + @JsonSetter("input_tokens") + public OutputTokensStage inputTokens(int inputTokens) { + this.inputTokens = inputTokens; + return this; + } + + /** + *

The number of output tokens generated by the model

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + @JsonSetter("output_tokens") + public _FinalStage outputTokens(int outputTokens) { + this.outputTokens = outputTokens; + return this; + } + + @java.lang.Override + public LemurUsage build() { + return new LemurUsage(inputTokens, outputTokens, additionalProperties); + } + } +} diff --git a/src/main/java/com/assemblyai/api/resources/realtime/types/ReceiveMessage.java b/src/main/java/com/assemblyai/api/resources/streaming/types/ReceiveMessage.java similarity index 90% rename from src/main/java/com/assemblyai/api/resources/realtime/types/ReceiveMessage.java rename to src/main/java/com/assemblyai/api/resources/streaming/types/ReceiveMessage.java index 5d4de6af..81be332d 100644 --- a/src/main/java/com/assemblyai/api/resources/realtime/types/ReceiveMessage.java +++ b/src/main/java/com/assemblyai/api/resources/streaming/types/ReceiveMessage.java @@ -1,9 +1,15 @@ /** * This file was auto-generated by Fern from our API Definition. */ -package com.assemblyai.api.resources.realtime.types; +package com.assemblyai.api.resources.streaming.types; import com.assemblyai.api.core.ObjectMappers; +import com.assemblyai.api.resources.realtime.types.FinalTranscript; +import com.assemblyai.api.resources.realtime.types.PartialTranscript; +import com.assemblyai.api.resources.realtime.types.RealtimeError; +import com.assemblyai.api.resources.realtime.types.SessionBegins; +import com.assemblyai.api.resources.realtime.types.SessionInformation; +import com.assemblyai.api.resources.realtime.types.SessionTerminated; import com.fasterxml.jackson.annotation.JsonValue; import com.fasterxml.jackson.core.JsonParseException; import com.fasterxml.jackson.core.JsonParser; diff --git a/src/main/java/com/assemblyai/api/resources/realtime/types/SendMessage.java b/src/main/java/com/assemblyai/api/resources/streaming/types/SendMessage.java similarity index 92% rename from src/main/java/com/assemblyai/api/resources/realtime/types/SendMessage.java rename to src/main/java/com/assemblyai/api/resources/streaming/types/SendMessage.java index 48c4e671..bb67e715 100644 --- a/src/main/java/com/assemblyai/api/resources/realtime/types/SendMessage.java +++ b/src/main/java/com/assemblyai/api/resources/streaming/types/SendMessage.java @@ -1,9 +1,12 @@ /** * This file was auto-generated by Fern from our API Definition. */ -package com.assemblyai.api.resources.realtime.types; +package com.assemblyai.api.resources.streaming.types; import com.assemblyai.api.core.ObjectMappers; +import com.assemblyai.api.resources.realtime.types.ConfigureEndUtteranceSilenceThreshold; +import com.assemblyai.api.resources.realtime.types.ForceEndUtterance; +import com.assemblyai.api.resources.realtime.types.TerminateSession; import com.fasterxml.jackson.annotation.JsonValue; import com.fasterxml.jackson.core.JsonParseException; import com.fasterxml.jackson.core.JsonParser; diff --git a/src/main/java/com/assemblyai/api/resources/streaming/types/Streaming.java b/src/main/java/com/assemblyai/api/resources/streaming/types/Streaming.java new file mode 100644 index 00000000..4cef0401 --- /dev/null +++ b/src/main/java/com/assemblyai/api/resources/streaming/types/Streaming.java @@ -0,0 +1,82 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ +package com.assemblyai.api.resources.streaming.types; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +public final class Streaming { + public static final Streaming PCM_S16LE = new Streaming(Value.PCM_S16LE, "pcm_s16le"); + + public static final Streaming PCM_MULAW = new Streaming(Value.PCM_MULAW, "pcm_mulaw"); + + private final Value value; + + private final String string; + + Streaming(Value value, String string) { + this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; + } + + @java.lang.Override + @JsonValue + public String toString() { + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof Streaming && this.string.equals(((Streaming) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PCM_S16LE: + return visitor.visitPcmS16le(); + case PCM_MULAW: + return visitor.visitPcmMulaw(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static Streaming valueOf(String value) { + switch (value) { + case "pcm_s16le": + return PCM_S16LE; + case "pcm_mulaw": + return PCM_MULAW; + default: + return new Streaming(Value.UNKNOWN, value); + } + } + + public enum Value { + PCM_S16LE, + + PCM_MULAW, + + UNKNOWN + } + + public interface Visitor { + T visitPcmS16le(); + + T visitPcmMulaw(); + + T visitUnknown(String unknownType); + } +} diff --git a/src/main/java/com/assemblyai/api/resources/transcripts/types/EntityType.java b/src/main/java/com/assemblyai/api/resources/transcripts/types/EntityType.java index a962c14f..ae748bc9 100644 --- a/src/main/java/com/assemblyai/api/resources/transcripts/types/EntityType.java +++ b/src/main/java/com/assemblyai/api/resources/transcripts/types/EntityType.java @@ -7,6 +7,8 @@ import com.fasterxml.jackson.annotation.JsonValue; public final class EntityType { + public static final EntityType ACCOUNT_NUMBER = new EntityType(Value.ACCOUNT_NUMBER, "account_number"); + public static final EntityType CREDIT_CARD_CVV = new EntityType(Value.CREDIT_CARD_CVV, "credit_card_cvv"); public static final EntityType DRUG = new EntityType(Value.DRUG, "drug"); @@ -17,6 +19,8 @@ public final class EntityType { public static final EntityType MONEY_AMOUNT = new EntityType(Value.MONEY_AMOUNT, "money_amount"); + public static final EntityType TIME = new EntityType(Value.TIME, "time"); + public static final EntityType PHONE_NUMBER = new EntityType(Value.PHONE_NUMBER, "phone_number"); public static final EntityType DATE_INTERVAL = new EntityType(Value.DATE_INTERVAL, "date_interval"); @@ -25,13 +29,15 @@ public final class EntityType { public static final EntityType IP_ADDRESS = new EntityType(Value.IP_ADDRESS, "ip_address"); - public static final EntityType DURATION = new EntityType(Value.DURATION, "duration"); - public static final EntityType PERSON_NAME = new EntityType(Value.PERSON_NAME, "person_name"); public static final EntityType CREDIT_CARD_EXPIRATION = new EntityType(Value.CREDIT_CARD_EXPIRATION, "credit_card_expiration"); + public static final EntityType VEHICLE_ID = new EntityType(Value.VEHICLE_ID, "vehicle_id"); + + public static final EntityType GENDER_SEXUALITY = new EntityType(Value.GENDER_SEXUALITY, "gender_sexuality"); + public static final EntityType OCCUPATION = new EntityType(Value.OCCUPATION, "occupation"); public static final EntityType EVENT = new EntityType(Value.EVENT, "event"); @@ -42,20 +48,16 @@ public final class EntityType { public static final EntityType LANGUAGE = new EntityType(Value.LANGUAGE, "language"); - public static final EntityType TIME = new EntityType(Value.TIME, "time"); - public static final EntityType BLOOD_TYPE = new EntityType(Value.BLOOD_TYPE, "blood_type"); + public static final EntityType DURATION = new EntityType(Value.DURATION, "duration"); + public static final EntityType DRIVERS_LICENSE = new EntityType(Value.DRIVERS_LICENSE, "drivers_license"); public static final EntityType USERNAME = new EntityType(Value.USERNAME, "username"); - public static final EntityType MARITAL_STATUS = new EntityType(Value.MARITAL_STATUS, "marital_status"); - public static final EntityType MEDICAL_PROCESS = new EntityType(Value.MEDICAL_PROCESS, "medical_process"); - public static final EntityType VEHICLE_ID = new EntityType(Value.VEHICLE_ID, "vehicle_id"); - public static final EntityType EMAIL_ADDRESS = new EntityType(Value.EMAIL_ADDRESS, "email_address"); public static final EntityType ZODIAC_SIGN = new EntityType(Value.ZODIAC_SIGN, "zodiac_sign"); @@ -67,17 +69,15 @@ public final class EntityType { public static final EntityType NATIONALITY = new EntityType(Value.NATIONALITY, "nationality"); - public static final EntityType ACCOUNT_NUMBER = new EntityType(Value.ACCOUNT_NUMBER, "account_number"); - public static final EntityType US_SOCIAL_SECURITY_NUMBER = new EntityType(Value.US_SOCIAL_SECURITY_NUMBER, "us_social_security_number"); public static final EntityType INJURY = new EntityType(Value.INJURY, "injury"); - public static final EntityType NUMBER_SEQUENCE = new EntityType(Value.NUMBER_SEQUENCE, "number_sequence"); - public static final EntityType PASSPORT_NUMBER = new EntityType(Value.PASSPORT_NUMBER, "passport_number"); + public static final EntityType NUMBER_SEQUENCE = new EntityType(Value.NUMBER_SEQUENCE, "number_sequence"); + public static final EntityType POLITICAL_AFFILIATION = new EntityType(Value.POLITICAL_AFFILIATION, "political_affiliation"); @@ -85,8 +85,6 @@ public final class EntityType { public static final EntityType STATISTICS = new EntityType(Value.STATISTICS, "statistics"); - public static final EntityType GENDER_SEXUALITY = new EntityType(Value.GENDER_SEXUALITY, "gender_sexuality"); - public static final EntityType MEDICAL_CONDITION = new EntityType(Value.MEDICAL_CONDITION, "medical_condition"); public static final EntityType PASSWORD = new EntityType(Value.PASSWORD, "password"); @@ -95,6 +93,8 @@ public final class EntityType { public static final EntityType CREDIT_CARD_NUMBER = new EntityType(Value.CREDIT_CARD_NUMBER, "credit_card_number"); + public static final EntityType MARITAL_STATUS = new EntityType(Value.MARITAL_STATUS, "marital_status"); + public static final EntityType LOCATION = new EntityType(Value.LOCATION, "location"); public static final EntityType DATE = new EntityType(Value.DATE, "date"); @@ -130,6 +130,8 @@ public int hashCode() { public T visit(Visitor visitor) { switch (value) { + case ACCOUNT_NUMBER: + return visitor.visitAccountNumber(); case CREDIT_CARD_CVV: return visitor.visitCreditCardCvv(); case DRUG: @@ -140,6 +142,8 @@ public T visit(Visitor visitor) { return visitor.visitPersonAge(); case MONEY_AMOUNT: return visitor.visitMoneyAmount(); + case TIME: + return visitor.visitTime(); case PHONE_NUMBER: return visitor.visitPhoneNumber(); case DATE_INTERVAL: @@ -148,12 +152,14 @@ public T visit(Visitor visitor) { return visitor.visitPhysicalAttribute(); case IP_ADDRESS: return visitor.visitIpAddress(); - case DURATION: - return visitor.visitDuration(); case PERSON_NAME: return visitor.visitPersonName(); case CREDIT_CARD_EXPIRATION: return visitor.visitCreditCardExpiration(); + case VEHICLE_ID: + return visitor.visitVehicleId(); + case GENDER_SEXUALITY: + return visitor.visitGenderSexuality(); case OCCUPATION: return visitor.visitOccupation(); case EVENT: @@ -164,20 +170,16 @@ public T visit(Visitor visitor) { return visitor.visitOrganization(); case LANGUAGE: return visitor.visitLanguage(); - case TIME: - return visitor.visitTime(); case BLOOD_TYPE: return visitor.visitBloodType(); + case DURATION: + return visitor.visitDuration(); case DRIVERS_LICENSE: return visitor.visitDriversLicense(); case USERNAME: return visitor.visitUsername(); - case MARITAL_STATUS: - return visitor.visitMaritalStatus(); case MEDICAL_PROCESS: return visitor.visitMedicalProcess(); - case VEHICLE_ID: - return visitor.visitVehicleId(); case EMAIL_ADDRESS: return visitor.visitEmailAddress(); case ZODIAC_SIGN: @@ -188,24 +190,20 @@ public T visit(Visitor visitor) { return visitor.visitDateOfBirth(); case NATIONALITY: return visitor.visitNationality(); - case ACCOUNT_NUMBER: - return visitor.visitAccountNumber(); case US_SOCIAL_SECURITY_NUMBER: return visitor.visitUsSocialSecurityNumber(); case INJURY: return visitor.visitInjury(); - case NUMBER_SEQUENCE: - return visitor.visitNumberSequence(); case PASSPORT_NUMBER: return visitor.visitPassportNumber(); + case NUMBER_SEQUENCE: + return visitor.visitNumberSequence(); case POLITICAL_AFFILIATION: return visitor.visitPoliticalAffiliation(); case RELIGION: return visitor.visitReligion(); case STATISTICS: return visitor.visitStatistics(); - case GENDER_SEXUALITY: - return visitor.visitGenderSexuality(); case MEDICAL_CONDITION: return visitor.visitMedicalCondition(); case PASSWORD: @@ -214,6 +212,8 @@ public T visit(Visitor visitor) { return visitor.visitUrl(); case CREDIT_CARD_NUMBER: return visitor.visitCreditCardNumber(); + case MARITAL_STATUS: + return visitor.visitMaritalStatus(); case LOCATION: return visitor.visitLocation(); case DATE: @@ -227,6 +227,8 @@ public T visit(Visitor visitor) { @JsonCreator(mode = JsonCreator.Mode.DELEGATING) public static EntityType valueOf(String value) { switch (value) { + case "account_number": + return ACCOUNT_NUMBER; case "credit_card_cvv": return CREDIT_CARD_CVV; case "drug": @@ -237,6 +239,8 @@ public static EntityType valueOf(String value) { return PERSON_AGE; case "money_amount": return MONEY_AMOUNT; + case "time": + return TIME; case "phone_number": return PHONE_NUMBER; case "date_interval": @@ -245,12 +249,14 @@ public static EntityType valueOf(String value) { return PHYSICAL_ATTRIBUTE; case "ip_address": return IP_ADDRESS; - case "duration": - return DURATION; case "person_name": return PERSON_NAME; case "credit_card_expiration": return CREDIT_CARD_EXPIRATION; + case "vehicle_id": + return VEHICLE_ID; + case "gender_sexuality": + return GENDER_SEXUALITY; case "occupation": return OCCUPATION; case "event": @@ -261,20 +267,16 @@ public static EntityType valueOf(String value) { return ORGANIZATION; case "language": return LANGUAGE; - case "time": - return TIME; case "blood_type": return BLOOD_TYPE; + case "duration": + return DURATION; case "drivers_license": return DRIVERS_LICENSE; case "username": return USERNAME; - case "marital_status": - return MARITAL_STATUS; case "medical_process": return MEDICAL_PROCESS; - case "vehicle_id": - return VEHICLE_ID; case "email_address": return EMAIL_ADDRESS; case "zodiac_sign": @@ -285,24 +287,20 @@ public static EntityType valueOf(String value) { return DATE_OF_BIRTH; case "nationality": return NATIONALITY; - case "account_number": - return ACCOUNT_NUMBER; case "us_social_security_number": return US_SOCIAL_SECURITY_NUMBER; case "injury": return INJURY; - case "number_sequence": - return NUMBER_SEQUENCE; case "passport_number": return PASSPORT_NUMBER; + case "number_sequence": + return NUMBER_SEQUENCE; case "political_affiliation": return POLITICAL_AFFILIATION; case "religion": return RELIGION; case "statistics": return STATISTICS; - case "gender_sexuality": - return GENDER_SEXUALITY; case "medical_condition": return MEDICAL_CONDITION; case "password": @@ -311,6 +309,8 @@ public static EntityType valueOf(String value) { return URL; case "credit_card_number": return CREDIT_CARD_NUMBER; + case "marital_status": + return MARITAL_STATUS; case "location": return LOCATION; case "date": diff --git a/src/main/java/com/assemblyai/api/resources/transcripts/types/PiiPolicy.java b/src/main/java/com/assemblyai/api/resources/transcripts/types/PiiPolicy.java index a5b92eed..583a0145 100644 --- a/src/main/java/com/assemblyai/api/resources/transcripts/types/PiiPolicy.java +++ b/src/main/java/com/assemblyai/api/resources/transcripts/types/PiiPolicy.java @@ -7,62 +7,96 @@ import com.fasterxml.jackson.annotation.JsonValue; public final class PiiPolicy { - public static final PiiPolicy MEDICAL_CONDITION = new PiiPolicy(Value.MEDICAL_CONDITION, "medical_condition"); + public static final PiiPolicy ACCOUNT_NUMBER = new PiiPolicy(Value.ACCOUNT_NUMBER, "account_number"); - public static final PiiPolicy BLOOD_TYPE = new PiiPolicy(Value.BLOOD_TYPE, "blood_type"); + public static final PiiPolicy CREDIT_CARD_CVV = new PiiPolicy(Value.CREDIT_CARD_CVV, "credit_card_cvv"); - public static final PiiPolicy CREDIT_CARD_NUMBER = new PiiPolicy(Value.CREDIT_CARD_NUMBER, "credit_card_number"); + public static final PiiPolicy DRUG = new PiiPolicy(Value.DRUG, "drug"); - public static final PiiPolicy RELIGION = new PiiPolicy(Value.RELIGION, "religion"); + public static final PiiPolicy FILENAME = new PiiPolicy(Value.FILENAME, "filename"); - public static final PiiPolicy US_SOCIAL_SECURITY_NUMBER = - new PiiPolicy(Value.US_SOCIAL_SECURITY_NUMBER, "us_social_security_number"); + public static final PiiPolicy PERSON_AGE = new PiiPolicy(Value.PERSON_AGE, "person_age"); - public static final PiiPolicy LOCATION = new PiiPolicy(Value.LOCATION, "location"); + public static final PiiPolicy MONEY_AMOUNT = new PiiPolicy(Value.MONEY_AMOUNT, "money_amount"); - public static final PiiPolicy EVENT = new PiiPolicy(Value.EVENT, "event"); + public static final PiiPolicy TIME = new PiiPolicy(Value.TIME, "time"); + + public static final PiiPolicy PHONE_NUMBER = new PiiPolicy(Value.PHONE_NUMBER, "phone_number"); + + public static final PiiPolicy DATE_INTERVAL = new PiiPolicy(Value.DATE_INTERVAL, "date_interval"); + + public static final PiiPolicy PHYSICAL_ATTRIBUTE = new PiiPolicy(Value.PHYSICAL_ATTRIBUTE, "physical_attribute"); + + public static final PiiPolicy IP_ADDRESS = new PiiPolicy(Value.IP_ADDRESS, "ip_address"); public static final PiiPolicy PERSON_NAME = new PiiPolicy(Value.PERSON_NAME, "person_name"); + public static final PiiPolicy CREDIT_CARD_EXPIRATION = + new PiiPolicy(Value.CREDIT_CARD_EXPIRATION, "credit_card_expiration"); + + public static final PiiPolicy VEHICLE_ID = new PiiPolicy(Value.VEHICLE_ID, "vehicle_id"); + + public static final PiiPolicy GENDER_SEXUALITY = new PiiPolicy(Value.GENDER_SEXUALITY, "gender_sexuality"); + + public static final PiiPolicy OCCUPATION = new PiiPolicy(Value.OCCUPATION, "occupation"); + + public static final PiiPolicy EVENT = new PiiPolicy(Value.EVENT, "event"); + + public static final PiiPolicy HEALTHCARE_NUMBER = new PiiPolicy(Value.HEALTHCARE_NUMBER, "healthcare_number"); + public static final PiiPolicy ORGANIZATION = new PiiPolicy(Value.ORGANIZATION, "organization"); + public static final PiiPolicy LANGUAGE = new PiiPolicy(Value.LANGUAGE, "language"); + + public static final PiiPolicy BLOOD_TYPE = new PiiPolicy(Value.BLOOD_TYPE, "blood_type"); + + public static final PiiPolicy DURATION = new PiiPolicy(Value.DURATION, "duration"); + public static final PiiPolicy DRIVERS_LICENSE = new PiiPolicy(Value.DRIVERS_LICENSE, "drivers_license"); - public static final PiiPolicy LANGUAGE = new PiiPolicy(Value.LANGUAGE, "language"); + public static final PiiPolicy USERNAME = new PiiPolicy(Value.USERNAME, "username"); - public static final PiiPolicy CREDIT_CARD_EXPIRATION = - new PiiPolicy(Value.CREDIT_CARD_EXPIRATION, "credit_card_expiration"); + public static final PiiPolicy MEDICAL_PROCESS = new PiiPolicy(Value.MEDICAL_PROCESS, "medical_process"); - public static final PiiPolicy MONEY_AMOUNT = new PiiPolicy(Value.MONEY_AMOUNT, "money_amount"); + public static final PiiPolicy EMAIL_ADDRESS = new PiiPolicy(Value.EMAIL_ADDRESS, "email_address"); - public static final PiiPolicy PHONE_NUMBER = new PiiPolicy(Value.PHONE_NUMBER, "phone_number"); + public static final PiiPolicy ZODIAC_SIGN = new PiiPolicy(Value.ZODIAC_SIGN, "zodiac_sign"); - public static final PiiPolicy DRUG = new PiiPolicy(Value.DRUG, "drug"); + public static final PiiPolicy BANKING_INFORMATION = new PiiPolicy(Value.BANKING_INFORMATION, "banking_information"); + + public static final PiiPolicy DATE_OF_BIRTH = new PiiPolicy(Value.DATE_OF_BIRTH, "date_of_birth"); + + public static final PiiPolicy NATIONALITY = new PiiPolicy(Value.NATIONALITY, "nationality"); + + public static final PiiPolicy US_SOCIAL_SECURITY_NUMBER = + new PiiPolicy(Value.US_SOCIAL_SECURITY_NUMBER, "us_social_security_number"); public static final PiiPolicy INJURY = new PiiPolicy(Value.INJURY, "injury"); + public static final PiiPolicy PASSPORT_NUMBER = new PiiPolicy(Value.PASSPORT_NUMBER, "passport_number"); + public static final PiiPolicy NUMBER_SEQUENCE = new PiiPolicy(Value.NUMBER_SEQUENCE, "number_sequence"); public static final PiiPolicy POLITICAL_AFFILIATION = new PiiPolicy(Value.POLITICAL_AFFILIATION, "political_affiliation"); - public static final PiiPolicy DATE_OF_BIRTH = new PiiPolicy(Value.DATE_OF_BIRTH, "date_of_birth"); + public static final PiiPolicy RELIGION = new PiiPolicy(Value.RELIGION, "religion"); - public static final PiiPolicy EMAIL_ADDRESS = new PiiPolicy(Value.EMAIL_ADDRESS, "email_address"); + public static final PiiPolicy STATISTICS = new PiiPolicy(Value.STATISTICS, "statistics"); - public static final PiiPolicy NATIONALITY = new PiiPolicy(Value.NATIONALITY, "nationality"); + public static final PiiPolicy MEDICAL_CONDITION = new PiiPolicy(Value.MEDICAL_CONDITION, "medical_condition"); - public static final PiiPolicy MEDICAL_PROCESS = new PiiPolicy(Value.MEDICAL_PROCESS, "medical_process"); + public static final PiiPolicy PASSWORD = new PiiPolicy(Value.PASSWORD, "password"); - public static final PiiPolicy DATE = new PiiPolicy(Value.DATE, "date"); + public static final PiiPolicy URL = new PiiPolicy(Value.URL, "url"); - public static final PiiPolicy PERSON_AGE = new PiiPolicy(Value.PERSON_AGE, "person_age"); + public static final PiiPolicy CREDIT_CARD_NUMBER = new PiiPolicy(Value.CREDIT_CARD_NUMBER, "credit_card_number"); - public static final PiiPolicy BANKING_INFORMATION = new PiiPolicy(Value.BANKING_INFORMATION, "banking_information"); + public static final PiiPolicy MARITAL_STATUS = new PiiPolicy(Value.MARITAL_STATUS, "marital_status"); - public static final PiiPolicy CREDIT_CARD_CVV = new PiiPolicy(Value.CREDIT_CARD_CVV, "credit_card_cvv"); + public static final PiiPolicy LOCATION = new PiiPolicy(Value.LOCATION, "location"); - public static final PiiPolicy OCCUPATION = new PiiPolicy(Value.OCCUPATION, "occupation"); + public static final PiiPolicy DATE = new PiiPolicy(Value.DATE, "date"); private final Value value; @@ -95,60 +129,94 @@ public int hashCode() { public T visit(Visitor visitor) { switch (value) { - case MEDICAL_CONDITION: - return visitor.visitMedicalCondition(); - case BLOOD_TYPE: - return visitor.visitBloodType(); - case CREDIT_CARD_NUMBER: - return visitor.visitCreditCardNumber(); - case RELIGION: - return visitor.visitReligion(); - case US_SOCIAL_SECURITY_NUMBER: - return visitor.visitUsSocialSecurityNumber(); - case LOCATION: - return visitor.visitLocation(); - case EVENT: - return visitor.visitEvent(); + case ACCOUNT_NUMBER: + return visitor.visitAccountNumber(); + case CREDIT_CARD_CVV: + return visitor.visitCreditCardCvv(); + case DRUG: + return visitor.visitDrug(); + case FILENAME: + return visitor.visitFilename(); + case PERSON_AGE: + return visitor.visitPersonAge(); + case MONEY_AMOUNT: + return visitor.visitMoneyAmount(); + case TIME: + return visitor.visitTime(); + case PHONE_NUMBER: + return visitor.visitPhoneNumber(); + case DATE_INTERVAL: + return visitor.visitDateInterval(); + case PHYSICAL_ATTRIBUTE: + return visitor.visitPhysicalAttribute(); + case IP_ADDRESS: + return visitor.visitIpAddress(); case PERSON_NAME: return visitor.visitPersonName(); + case CREDIT_CARD_EXPIRATION: + return visitor.visitCreditCardExpiration(); + case VEHICLE_ID: + return visitor.visitVehicleId(); + case GENDER_SEXUALITY: + return visitor.visitGenderSexuality(); + case OCCUPATION: + return visitor.visitOccupation(); + case EVENT: + return visitor.visitEvent(); + case HEALTHCARE_NUMBER: + return visitor.visitHealthcareNumber(); case ORGANIZATION: return visitor.visitOrganization(); - case DRIVERS_LICENSE: - return visitor.visitDriversLicense(); case LANGUAGE: return visitor.visitLanguage(); - case CREDIT_CARD_EXPIRATION: - return visitor.visitCreditCardExpiration(); - case MONEY_AMOUNT: - return visitor.visitMoneyAmount(); - case PHONE_NUMBER: - return visitor.visitPhoneNumber(); - case DRUG: - return visitor.visitDrug(); + case BLOOD_TYPE: + return visitor.visitBloodType(); + case DURATION: + return visitor.visitDuration(); + case DRIVERS_LICENSE: + return visitor.visitDriversLicense(); + case USERNAME: + return visitor.visitUsername(); + case MEDICAL_PROCESS: + return visitor.visitMedicalProcess(); + case EMAIL_ADDRESS: + return visitor.visitEmailAddress(); + case ZODIAC_SIGN: + return visitor.visitZodiacSign(); + case BANKING_INFORMATION: + return visitor.visitBankingInformation(); + case DATE_OF_BIRTH: + return visitor.visitDateOfBirth(); + case NATIONALITY: + return visitor.visitNationality(); + case US_SOCIAL_SECURITY_NUMBER: + return visitor.visitUsSocialSecurityNumber(); case INJURY: return visitor.visitInjury(); + case PASSPORT_NUMBER: + return visitor.visitPassportNumber(); case NUMBER_SEQUENCE: return visitor.visitNumberSequence(); case POLITICAL_AFFILIATION: return visitor.visitPoliticalAffiliation(); - case DATE_OF_BIRTH: - return visitor.visitDateOfBirth(); - case EMAIL_ADDRESS: - return visitor.visitEmailAddress(); - case NATIONALITY: - return visitor.visitNationality(); - case MEDICAL_PROCESS: - return visitor.visitMedicalProcess(); + case RELIGION: + return visitor.visitReligion(); + case STATISTICS: + return visitor.visitStatistics(); + case MEDICAL_CONDITION: + return visitor.visitMedicalCondition(); + case PASSWORD: + return visitor.visitPassword(); + case URL: + return visitor.visitUrl(); + case CREDIT_CARD_NUMBER: + return visitor.visitCreditCardNumber(); + case MARITAL_STATUS: + return visitor.visitMaritalStatus(); + case LOCATION: + return visitor.visitLocation(); case DATE: return visitor.visitDate(); - case PERSON_AGE: - return visitor.visitPersonAge(); - case BANKING_INFORMATION: - return visitor.visitBankingInformation(); - case CREDIT_CARD_CVV: - return visitor.visitCreditCardCvv(); - case OCCUPATION: - return visitor.visitOccupation(); case UNKNOWN: default: return visitor.visitUnknown(string); @@ -158,177 +226,279 @@ public T visit(Visitor visitor) { @JsonCreator(mode = JsonCreator.Mode.DELEGATING) public static PiiPolicy valueOf(String value) { switch (value) { - case "medical_condition": - return MEDICAL_CONDITION; - case "blood_type": - return BLOOD_TYPE; - case "credit_card_number": - return CREDIT_CARD_NUMBER; - case "religion": - return RELIGION; - case "us_social_security_number": - return US_SOCIAL_SECURITY_NUMBER; - case "location": - return LOCATION; - case "event": - return EVENT; + case "account_number": + return ACCOUNT_NUMBER; + case "credit_card_cvv": + return CREDIT_CARD_CVV; + case "drug": + return DRUG; + case "filename": + return FILENAME; + case "person_age": + return PERSON_AGE; + case "money_amount": + return MONEY_AMOUNT; + case "time": + return TIME; + case "phone_number": + return PHONE_NUMBER; + case "date_interval": + return DATE_INTERVAL; + case "physical_attribute": + return PHYSICAL_ATTRIBUTE; + case "ip_address": + return IP_ADDRESS; case "person_name": return PERSON_NAME; + case "credit_card_expiration": + return CREDIT_CARD_EXPIRATION; + case "vehicle_id": + return VEHICLE_ID; + case "gender_sexuality": + return GENDER_SEXUALITY; + case "occupation": + return OCCUPATION; + case "event": + return EVENT; + case "healthcare_number": + return HEALTHCARE_NUMBER; case "organization": return ORGANIZATION; - case "drivers_license": - return DRIVERS_LICENSE; case "language": return LANGUAGE; - case "credit_card_expiration": - return CREDIT_CARD_EXPIRATION; - case "money_amount": - return MONEY_AMOUNT; - case "phone_number": - return PHONE_NUMBER; - case "drug": - return DRUG; + case "blood_type": + return BLOOD_TYPE; + case "duration": + return DURATION; + case "drivers_license": + return DRIVERS_LICENSE; + case "username": + return USERNAME; + case "medical_process": + return MEDICAL_PROCESS; + case "email_address": + return EMAIL_ADDRESS; + case "zodiac_sign": + return ZODIAC_SIGN; + case "banking_information": + return BANKING_INFORMATION; + case "date_of_birth": + return DATE_OF_BIRTH; + case "nationality": + return NATIONALITY; + case "us_social_security_number": + return US_SOCIAL_SECURITY_NUMBER; case "injury": return INJURY; + case "passport_number": + return PASSPORT_NUMBER; case "number_sequence": return NUMBER_SEQUENCE; case "political_affiliation": return POLITICAL_AFFILIATION; - case "date_of_birth": - return DATE_OF_BIRTH; - case "email_address": - return EMAIL_ADDRESS; - case "nationality": - return NATIONALITY; - case "medical_process": - return MEDICAL_PROCESS; + case "religion": + return RELIGION; + case "statistics": + return STATISTICS; + case "medical_condition": + return MEDICAL_CONDITION; + case "password": + return PASSWORD; + case "url": + return URL; + case "credit_card_number": + return CREDIT_CARD_NUMBER; + case "marital_status": + return MARITAL_STATUS; + case "location": + return LOCATION; case "date": return DATE; - case "person_age": - return PERSON_AGE; - case "banking_information": - return BANKING_INFORMATION; - case "credit_card_cvv": - return CREDIT_CARD_CVV; - case "occupation": - return OCCUPATION; default: return new PiiPolicy(Value.UNKNOWN, value); } } public enum Value { - MEDICAL_PROCESS, + ACCOUNT_NUMBER, - MEDICAL_CONDITION, + BANKING_INFORMATION, BLOOD_TYPE, - DRUG, + CREDIT_CARD_CVV, - INJURY, + CREDIT_CARD_EXPIRATION, - NUMBER_SEQUENCE, + CREDIT_CARD_NUMBER, - EMAIL_ADDRESS, + DATE, + + DATE_INTERVAL, DATE_OF_BIRTH, - PHONE_NUMBER, + DRIVERS_LICENSE, - US_SOCIAL_SECURITY_NUMBER, + DRUG, - CREDIT_CARD_NUMBER, + DURATION, - CREDIT_CARD_EXPIRATION, + EMAIL_ADDRESS, - CREDIT_CARD_CVV, + EVENT, - DATE, + FILENAME, - NATIONALITY, + GENDER_SEXUALITY, - EVENT, + HEALTHCARE_NUMBER, + + INJURY, + + IP_ADDRESS, LANGUAGE, LOCATION, + MARITAL_STATUS, + + MEDICAL_CONDITION, + + MEDICAL_PROCESS, + MONEY_AMOUNT, - PERSON_NAME, + NATIONALITY, - PERSON_AGE, + NUMBER_SEQUENCE, + + OCCUPATION, ORGANIZATION, - POLITICAL_AFFILIATION, + PASSPORT_NUMBER, - OCCUPATION, + PASSWORD, + + PERSON_AGE, + + PERSON_NAME, + + PHONE_NUMBER, + + PHYSICAL_ATTRIBUTE, + + POLITICAL_AFFILIATION, RELIGION, - DRIVERS_LICENSE, + STATISTICS, - BANKING_INFORMATION, + TIME, + + URL, + + US_SOCIAL_SECURITY_NUMBER, + + USERNAME, + + VEHICLE_ID, + + ZODIAC_SIGN, UNKNOWN } public interface Visitor { - T visitMedicalProcess(); + T visitAccountNumber(); - T visitMedicalCondition(); + T visitBankingInformation(); T visitBloodType(); - T visitDrug(); + T visitCreditCardCvv(); - T visitInjury(); + T visitCreditCardExpiration(); - T visitNumberSequence(); + T visitCreditCardNumber(); - T visitEmailAddress(); + T visitDate(); + + T visitDateInterval(); T visitDateOfBirth(); - T visitPhoneNumber(); + T visitDriversLicense(); - T visitUsSocialSecurityNumber(); + T visitDrug(); - T visitCreditCardNumber(); + T visitDuration(); - T visitCreditCardExpiration(); + T visitEmailAddress(); - T visitCreditCardCvv(); + T visitEvent(); - T visitDate(); + T visitFilename(); - T visitNationality(); + T visitGenderSexuality(); - T visitEvent(); + T visitHealthcareNumber(); + + T visitInjury(); + + T visitIpAddress(); T visitLanguage(); T visitLocation(); + T visitMaritalStatus(); + + T visitMedicalCondition(); + + T visitMedicalProcess(); + T visitMoneyAmount(); - T visitPersonName(); + T visitNationality(); - T visitPersonAge(); + T visitNumberSequence(); + + T visitOccupation(); T visitOrganization(); - T visitPoliticalAffiliation(); + T visitPassportNumber(); - T visitOccupation(); + T visitPassword(); + + T visitPersonAge(); + + T visitPersonName(); + + T visitPhoneNumber(); + + T visitPhysicalAttribute(); + + T visitPoliticalAffiliation(); T visitReligion(); - T visitDriversLicense(); + T visitStatistics(); - T visitBankingInformation(); + T visitTime(); + + T visitUrl(); + + T visitUsSocialSecurityNumber(); + + T visitUsername(); + + T visitVehicleId(); + + T visitZodiacSign(); T visitUnknown(String unknownType); } From 3323e5d953b3a13e4d3cf9e1be150302c883b939 Mon Sep 17 00:00:00 2001 From: Niels Swimberghe <3382717+Swimburger@users.noreply.github.com> Date: Fri, 14 Jun 2024 23:38:23 +0200 Subject: [PATCH 2/3] Revert unwanted changes --- .../types/ReceiveMessage.java | 8 +- .../types/SendMessage.java | 5 +- .../resources/streaming/types/Streaming.java | 82 ------------------- 3 files changed, 2 insertions(+), 93 deletions(-) rename src/main/java/com/assemblyai/api/resources/{streaming => realtime}/types/ReceiveMessage.java (90%) rename src/main/java/com/assemblyai/api/resources/{streaming => realtime}/types/SendMessage.java (92%) delete mode 100644 src/main/java/com/assemblyai/api/resources/streaming/types/Streaming.java diff --git a/src/main/java/com/assemblyai/api/resources/streaming/types/ReceiveMessage.java b/src/main/java/com/assemblyai/api/resources/realtime/types/ReceiveMessage.java similarity index 90% rename from src/main/java/com/assemblyai/api/resources/streaming/types/ReceiveMessage.java rename to src/main/java/com/assemblyai/api/resources/realtime/types/ReceiveMessage.java index 81be332d..5d4de6af 100644 --- a/src/main/java/com/assemblyai/api/resources/streaming/types/ReceiveMessage.java +++ b/src/main/java/com/assemblyai/api/resources/realtime/types/ReceiveMessage.java @@ -1,15 +1,9 @@ /** * This file was auto-generated by Fern from our API Definition. */ -package com.assemblyai.api.resources.streaming.types; +package com.assemblyai.api.resources.realtime.types; import com.assemblyai.api.core.ObjectMappers; -import com.assemblyai.api.resources.realtime.types.FinalTranscript; -import com.assemblyai.api.resources.realtime.types.PartialTranscript; -import com.assemblyai.api.resources.realtime.types.RealtimeError; -import com.assemblyai.api.resources.realtime.types.SessionBegins; -import com.assemblyai.api.resources.realtime.types.SessionInformation; -import com.assemblyai.api.resources.realtime.types.SessionTerminated; import com.fasterxml.jackson.annotation.JsonValue; import com.fasterxml.jackson.core.JsonParseException; import com.fasterxml.jackson.core.JsonParser; diff --git a/src/main/java/com/assemblyai/api/resources/streaming/types/SendMessage.java b/src/main/java/com/assemblyai/api/resources/realtime/types/SendMessage.java similarity index 92% rename from src/main/java/com/assemblyai/api/resources/streaming/types/SendMessage.java rename to src/main/java/com/assemblyai/api/resources/realtime/types/SendMessage.java index bb67e715..48c4e671 100644 --- a/src/main/java/com/assemblyai/api/resources/streaming/types/SendMessage.java +++ b/src/main/java/com/assemblyai/api/resources/realtime/types/SendMessage.java @@ -1,12 +1,9 @@ /** * This file was auto-generated by Fern from our API Definition. */ -package com.assemblyai.api.resources.streaming.types; +package com.assemblyai.api.resources.realtime.types; import com.assemblyai.api.core.ObjectMappers; -import com.assemblyai.api.resources.realtime.types.ConfigureEndUtteranceSilenceThreshold; -import com.assemblyai.api.resources.realtime.types.ForceEndUtterance; -import com.assemblyai.api.resources.realtime.types.TerminateSession; import com.fasterxml.jackson.annotation.JsonValue; import com.fasterxml.jackson.core.JsonParseException; import com.fasterxml.jackson.core.JsonParser; diff --git a/src/main/java/com/assemblyai/api/resources/streaming/types/Streaming.java b/src/main/java/com/assemblyai/api/resources/streaming/types/Streaming.java deleted file mode 100644 index 4cef0401..00000000 --- a/src/main/java/com/assemblyai/api/resources/streaming/types/Streaming.java +++ /dev/null @@ -1,82 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ -package com.assemblyai.api.resources.streaming.types; - -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonValue; - -public final class Streaming { - public static final Streaming PCM_S16LE = new Streaming(Value.PCM_S16LE, "pcm_s16le"); - - public static final Streaming PCM_MULAW = new Streaming(Value.PCM_MULAW, "pcm_mulaw"); - - private final Value value; - - private final String string; - - Streaming(Value value, String string) { - this.value = value; - this.string = string; - } - - public Value getEnumValue() { - return value; - } - - @java.lang.Override - @JsonValue - public String toString() { - return this.string; - } - - @java.lang.Override - public boolean equals(Object other) { - return (this == other) || (other instanceof Streaming && this.string.equals(((Streaming) other).string)); - } - - @java.lang.Override - public int hashCode() { - return this.string.hashCode(); - } - - public T visit(Visitor visitor) { - switch (value) { - case PCM_S16LE: - return visitor.visitPcmS16le(); - case PCM_MULAW: - return visitor.visitPcmMulaw(); - case UNKNOWN: - default: - return visitor.visitUnknown(string); - } - } - - @JsonCreator(mode = JsonCreator.Mode.DELEGATING) - public static Streaming valueOf(String value) { - switch (value) { - case "pcm_s16le": - return PCM_S16LE; - case "pcm_mulaw": - return PCM_MULAW; - default: - return new Streaming(Value.UNKNOWN, value); - } - } - - public enum Value { - PCM_S16LE, - - PCM_MULAW, - - UNKNOWN - } - - public interface Visitor { - T visitPcmS16le(); - - T visitPcmMulaw(); - - T visitUnknown(String unknownType); - } -} From 22cae2ff8ed6d4b13c6cb5d0d32d97fc13ea999e Mon Sep 17 00:00:00 2001 From: Niels Swimberghe <3382717+Swimburger@users.noreply.github.com> Date: Fri, 14 Jun 2024 23:45:16 +0200 Subject: [PATCH 3/3] Update sample --- sample-app/src/main/java/sample/App.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sample-app/src/main/java/sample/App.java b/sample-app/src/main/java/sample/App.java index b1d703ad..e01dbbc5 100644 --- a/sample-app/src/main/java/sample/App.java +++ b/sample-app/src/main/java/sample/App.java @@ -4,7 +4,7 @@ import com.assemblyai.api.RealtimeTranscriber; import com.assemblyai.api.resources.files.types.UploadedFile; import com.assemblyai.api.resources.lemur.requests.LemurTaskParams; -import com.assemblyai.api.resources.lemur.types.LemurTaskResponse; +import com.assemblyai.api.resources.lemur.types.*; import com.assemblyai.api.resources.realtime.requests.CreateRealtimeTemporaryTokenParams; import com.assemblyai.api.resources.realtime.types.AudioEncoding; import com.assemblyai.api.resources.realtime.types.RealtimeTemporaryTokenResponse; @@ -70,6 +70,10 @@ public static void main(String... args) throws IOException, InterruptedException System.out.println("Summary: " + response.getResponse()); + LemurResponse response2 = client.lemur().getResponse(response.getRequestId()); + + System.out.println("Summary 2: " + ((LemurTaskResponse)response2.get()).getResponse()); + transcript = client.transcripts().delete(transcript.getId()); System.out.println("Delete transcript. " + transcript);