Skip to content
Merged
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
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .sdk-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v4.54.0
v4.60.1
47 changes: 45 additions & 2 deletions README.md

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ apply plugin: 'java'
apply plugin: 'com.diffplug.spotless'

group = 'ai.reveng'
version = '4.54.0'
version = '4.60.1'



Expand Down Expand Up @@ -174,7 +174,7 @@ mavenPublishing {
// key, and signing without one fails the build.
if (project.hasProperty("signingInMemoryKey")) signAllPublications()

coordinates("ai.reveng", "sdk", "4.54.0")
coordinates("ai.reveng", "sdk", "4.60.1")

pom {
name = "sdk"
Expand Down
2 changes: 1 addition & 1 deletion build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ lazy val root = (project in file(".")).
settings(
organization := "ai.reveng",
name := "sdk",
version := "4.54.0",
version := "4.60.1",
scalaVersion := "2.11.12",
scalacOptions ++= Seq("-feature"),
compile / javacOptions ++= Seq("-Xlint:deprecation"),
Expand Down
13 changes: 13 additions & 0 deletions docs/AcceptTypeSuggestionsInputBody.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@


# AcceptTypeSuggestionsInputBody


## Properties

| Name | Type | Description | Notes |
|------------ | ------------- | ------------- | -------------|
|**keys** | **List<String>** | Keys of the suggestions to store, as the type suggestions endpoint returns them. A key repeated in one request is stored once. | |



14 changes: 14 additions & 0 deletions docs/AcceptTypeSuggestionsOutputBody.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@


# AcceptTypeSuggestionsOutputBody


## Properties

| Name | Type | Description | Notes |
|------------ | ------------- | ------------- | -------------|
|**accepted** | **List<AcceptedType>** | One entry per requested suggestion, in request order. | |
|**dataTypes** | [**List<DataTypeEntry>**](DataTypeEntry.md) | The type each requested suggestion resolved to, plus every type minted to satisfy one, ordered by data_type_id. | |



16 changes: 16 additions & 0 deletions docs/AcceptedType.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@


# AcceptedType


## Properties

| Name | Type | Description | Notes |
|------------ | ------------- | ------------- | -------------|
|**created** | **Boolean** | False when the analysis already held a type under this name and kind, which this request resolved to rather than replaced. | |
|**dataTypeId** | **Long** | The data type the suggestion is now stored as. | |
|**key** | **String** | The suggestion this entry answers. | |
|**skippedMembers** | **Long** | Members left out of the stored type because no offset or width was established for them. | |



13 changes: 13 additions & 0 deletions docs/AgentWorkflowUsageOutputBody.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@


# AgentWorkflowUsageOutputBody


## Properties

| Name | Type | Description | Notes |
|------------ | ------------- | ------------- | -------------|
|**report** | **List<WorkflowDayBody>** | One entry per day in the requested window, oldest first | |



13 changes: 13 additions & 0 deletions docs/AnalyseCapabilitiesBody.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@


# AnalyseCapabilitiesBody


## Properties

| Name | Type | Description | Notes |
|------------ | ------------- | ------------- | -------------|
|**completed** | **Long** | ANALYSE_CAPABILITIES agent tasks completed that day | |



78 changes: 78 additions & 0 deletions docs/AnalysesBulkActionsApi.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ All URIs are relative to *https://api.reveng.ai*
|------------- | ------------- | -------------|
| [**bulkAddAnalysisTags**](AnalysesBulkActionsApi.md#bulkAddAnalysisTags) | **PATCH** /v2/analyses/tags/add | Bulk Add Analysis Tags |
| [**bulkDeleteAnalyses**](AnalysesBulkActionsApi.md#bulkDeleteAnalyses) | **PATCH** /v2/analyses/delete | Bulk Delete Analyses |
| [**v3BatchAddAnalysisTags**](AnalysesBulkActionsApi.md#v3BatchAddAnalysisTags) | **POST** /v3/analyses:batchAddTags | Add tags to multiple analyses. |
| [**v3BatchDeleteAnalyses**](AnalysesBulkActionsApi.md#v3BatchDeleteAnalyses) | **POST** /v3/analyses:batchDelete | Delete multiple analyses. |


Expand Down Expand Up @@ -159,6 +160,83 @@ public class Example {
| **404** | Not Found | - |
| **403** | Forbidden | - |

<a id="v3BatchAddAnalysisTags"></a>
# **v3BatchAddAnalysisTags**
> BulkAddTagsOutputBody v3BatchAddAnalysisTags(bulkAddTagsInputBody)

Add tags to multiple analyses.

Adds tags (origin RevEng) to every given analysis&#39; binary. The caller must own every analysis, or none are changed. **Error codes:** - &#x60;404&#x60; [&#x60;NOT_FOUND&#x60;](/errors/NOT_FOUND) β€” Not Found - &#x60;403&#x60; [&#x60;ACCESS_DENIED&#x60;](/errors/ACCESS_DENIED) β€” Access Denied

### Example
```java
// Import classes:
import ai.reveng.invoker.ApiClient;
import ai.reveng.invoker.ApiException;
import ai.reveng.invoker.Configuration;
import ai.reveng.invoker.auth.*;
import ai.reveng.invoker.models.*;
import ai.reveng.api.AnalysesBulkActionsApi;

public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
defaultClient.setBasePath("https://api.reveng.ai");

// Configure API key authorization: APIKey
ApiKeyAuth APIKey = (ApiKeyAuth) defaultClient.getAuthentication("APIKey");
APIKey.setApiKey("YOUR API KEY");
// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
//APIKey.setApiKeyPrefix("Token");

// Configure HTTP bearer authorization: bearerAuth
HttpBearerAuth bearerAuth = (HttpBearerAuth) defaultClient.getAuthentication("bearerAuth");
bearerAuth.setBearerToken("BEARER TOKEN");

AnalysesBulkActionsApi apiInstance = new AnalysesBulkActionsApi(defaultClient);
BulkAddTagsInputBody bulkAddTagsInputBody = new BulkAddTagsInputBody(); // BulkAddTagsInputBody |
try {
BulkAddTagsOutputBody result = apiInstance.v3BatchAddAnalysisTags(bulkAddTagsInputBody);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling AnalysesBulkActionsApi#v3BatchAddAnalysisTags");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
```

### Parameters

| Name | Type | Description | Notes |
|------------- | ------------- | ------------- | -------------|
| **bulkAddTagsInputBody** | [**BulkAddTagsInputBody**](BulkAddTagsInputBody.md)| | |

### Return type

[**BulkAddTagsOutputBody**](BulkAddTagsOutputBody.md)

### Authorization

[APIKey](../README.md#APIKey), [bearerAuth](../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: application/json
- **Accept**: application/json

### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
| **200** | OK | - |
| **403** | Forbidden | - |
| **404** | Not Found | - |
| **422** | Unprocessable Entity | - |
| **500** | Internal Server Error | - |

<a id="v3BatchDeleteAnalyses"></a>
# **v3BatchDeleteAnalyses**
> v3BatchDeleteAnalyses(bulkDeleteAnalysesInputBody)
Expand Down
160 changes: 160 additions & 0 deletions docs/AnalysesCoreApi.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,9 @@ All URIs are relative to *https://api.reveng.ai*
| [**v3ListExampleAnalyses**](AnalysesCoreApi.md#v3ListExampleAnalyses) | **GET** /v3/analyses/examples | List example analyses |
| [**v3LookupAnalysisByBinaryId**](AnalysesCoreApi.md#v3LookupAnalysisByBinaryId) | **GET** /v3/analyses/lookup/{binary_id} | Look up the most recent analysis for a binary. |
| [**v3QueueBinaryExport**](AnalysesCoreApi.md#v3QueueBinaryExport) | **POST** /v3/analyses/{analysis_id}/binary-export | Queue a binary export |
| [**v3SearchTags**](AnalysesCoreApi.md#v3SearchTags) | **GET** /v3/tags | Search tags |
| [**v3UpdateAnalysis**](AnalysesCoreApi.md#v3UpdateAnalysis) | **PATCH** /v3/analyses/{analysis_id} | Update an analysis. |
| [**v3UpdateAnalysisTags**](AnalysesCoreApi.md#v3UpdateAnalysisTags) | **PATCH** /v3/analyses/{analysis_id}/tags | Replace an analysis&#39; tags. |
| [**v3UpgradeAnalysisModel**](AnalysesCoreApi.md#v3UpgradeAnalysisModel) | **POST** /v3/analyses/{analysis_id}/upgrade-model | Re-analyse on the latest model |


Expand Down Expand Up @@ -3018,6 +3020,85 @@ public class Example {
| **422** | Unprocessable Entity | - |
| **500** | Internal Server Error | - |

<a id="v3SearchTags"></a>
# **v3SearchTags**
> SearchTagsOutputBody v3SearchTags(partialName, limit, offset)

Search tags

Searches for tags by name. partial_name is required and must be at least 3 characters. **Error codes:** - &#x60;422&#x60; [&#x60;VALIDATION_FAILED&#x60;](/errors/VALIDATION_FAILED) β€” Validation Failed

### Example
```java
// Import classes:
import ai.reveng.invoker.ApiClient;
import ai.reveng.invoker.ApiException;
import ai.reveng.invoker.Configuration;
import ai.reveng.invoker.auth.*;
import ai.reveng.invoker.models.*;
import ai.reveng.api.AnalysesCoreApi;

public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
defaultClient.setBasePath("https://api.reveng.ai");

// Configure API key authorization: APIKey
ApiKeyAuth APIKey = (ApiKeyAuth) defaultClient.getAuthentication("APIKey");
APIKey.setApiKey("YOUR API KEY");
// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
//APIKey.setApiKeyPrefix("Token");

// Configure HTTP bearer authorization: bearerAuth
HttpBearerAuth bearerAuth = (HttpBearerAuth) defaultClient.getAuthentication("bearerAuth");
bearerAuth.setBearerToken("BEARER TOKEN");

AnalysesCoreApi apiInstance = new AnalysesCoreApi(defaultClient);
String partialName = "partialName_example"; // String | Partial or full tag name to search for, at least 3 characters
Long limit = 10L; // Long | Maximum results to return
Long offset = 0L; // Long | Number of results to skip
try {
SearchTagsOutputBody result = apiInstance.v3SearchTags(partialName, limit, offset);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling AnalysesCoreApi#v3SearchTags");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
```

### Parameters

| Name | Type | Description | Notes |
|------------- | ------------- | ------------- | -------------|
| **partialName** | **String**| Partial or full tag name to search for, at least 3 characters | [optional] |
| **limit** | **Long**| Maximum results to return | [optional] [default to 10] |
| **offset** | **Long**| Number of results to skip | [optional] [default to 0] |

### Return type

[**SearchTagsOutputBody**](SearchTagsOutputBody.md)

### Authorization

[APIKey](../README.md#APIKey), [bearerAuth](../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: application/json

### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
| **200** | OK | - |
| **422** | Unprocessable Entity | - |
| **500** | Internal Server Error | - |

<a id="v3UpdateAnalysis"></a>
# **v3UpdateAnalysis**
> AnalysisDetailOutputBody v3UpdateAnalysis(analysisId, updateAnalysisInputBody)
Expand Down Expand Up @@ -3098,6 +3179,85 @@ public class Example {
| **422** | Unprocessable Entity | - |
| **500** | Internal Server Error | - |

<a id="v3UpdateAnalysisTags"></a>
# **v3UpdateAnalysisTags**
> AnalysisTagsOutputBody v3UpdateAnalysisTags(analysisId, updateTagsInputBody)

Replace an analysis&#39; tags.

Replaces the analysis&#39; binary&#39;s user tags (origin RevEng) with the given set. A tag recorded under any other origin, such as a heuristic detection sharing a name with a user tag, is left in place even when its name is absent from the request. Only the owner may call it. **Error codes:** - &#x60;404&#x60; [&#x60;NOT_FOUND&#x60;](/errors/NOT_FOUND) β€” Not Found - &#x60;403&#x60; [&#x60;ACCESS_DENIED&#x60;](/errors/ACCESS_DENIED) β€” Access Denied

### Example
```java
// Import classes:
import ai.reveng.invoker.ApiClient;
import ai.reveng.invoker.ApiException;
import ai.reveng.invoker.Configuration;
import ai.reveng.invoker.auth.*;
import ai.reveng.invoker.models.*;
import ai.reveng.api.AnalysesCoreApi;

public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
defaultClient.setBasePath("https://api.reveng.ai");

// Configure API key authorization: APIKey
ApiKeyAuth APIKey = (ApiKeyAuth) defaultClient.getAuthentication("APIKey");
APIKey.setApiKey("YOUR API KEY");
// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
//APIKey.setApiKeyPrefix("Token");

// Configure HTTP bearer authorization: bearerAuth
HttpBearerAuth bearerAuth = (HttpBearerAuth) defaultClient.getAuthentication("bearerAuth");
bearerAuth.setBearerToken("BEARER TOKEN");

AnalysesCoreApi apiInstance = new AnalysesCoreApi(defaultClient);
Long analysisId = 56L; // Long | Analysis ID
UpdateTagsInputBody updateTagsInputBody = new UpdateTagsInputBody(); // UpdateTagsInputBody |
try {
AnalysisTagsOutputBody result = apiInstance.v3UpdateAnalysisTags(analysisId, updateTagsInputBody);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling AnalysesCoreApi#v3UpdateAnalysisTags");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
```

### Parameters

| Name | Type | Description | Notes |
|------------- | ------------- | ------------- | -------------|
| **analysisId** | **Long**| Analysis ID | |
| **updateTagsInputBody** | [**UpdateTagsInputBody**](UpdateTagsInputBody.md)| | |

### Return type

[**AnalysisTagsOutputBody**](AnalysisTagsOutputBody.md)

### Authorization

[APIKey](../README.md#APIKey), [bearerAuth](../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: application/json
- **Accept**: application/json

### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
| **200** | OK | - |
| **403** | Forbidden | - |
| **404** | Not Found | - |
| **422** | Unprocessable Entity | - |
| **500** | Internal Server Error | - |

<a id="v3UpgradeAnalysisModel"></a>
# **v3UpgradeAnalysisModel**
> UpgradeAnalysisModelOutputBody v3UpgradeAnalysisModel(analysisId)
Expand Down
Loading
Loading