All URIs are relative to https://api.reveng.ai
| Method | HTTP request | Description |
|---|---|---|
| addFunctionCallee | POST /v3/functions/{function_id}/callees | Add a callee to a function |
| addUserStringToFunction | POST /v3/functions/{function_id}/user-provided-strings | Add a user-provided string to a function. |
| getAnalysisStrings | GET /v2/analyses/{analysis_id}/functions/strings | Get string information found in the Analysis |
| getAnalysisStringsStatus | GET /v2/analyses/{analysis_id}/functions/strings/status | Get string processing state for the Analysis |
| getFunctionBlocks | GET /v2/functions/{function_id}/blocks | Get disassembly blocks related to the function |
| getFunctionBlocks_0 | GET /v3/functions/{function_id}/blocks | Get function disassembly |
| getFunctionCalleesCallers | GET /v2/functions/{function_id}/callees_callers | Get list of functions that call or are called by the specified function |
| getFunctionCalleesCallersBulk | GET /v2/functions/callees_callers | Get list of functions that call or are called for a list of functions |
| getFunctionCalleesCallers_0 | GET /v3/functions/{function_id}/callees-callers | Get callees and callers for a function |
| getFunctionCapabilities | GET /v2/functions/{function_id}/capabilities | Retrieve a functions capabilities |
| getFunctionCapabilities_0 | GET /v3/functions/{function_id}/capabilities | Get capabilities for a function |
| getFunctionDetails | GET /v2/functions/{function_id} | Get function details |
| getFunctionDetails_0 | GET /v3/functions/{function_id} | Get function details |
| getFunctionIndirectCallSites | GET /v3/functions/{function_id}/indirect-call-sites | Get indirect call sites for a function |
| getFunctionStrings | GET /v2/functions/{function_id}/strings | Get string information found in the function |
| getFunctionStrings_0 | GET /v3/functions/{function_id}/strings | List strings for a function. |
| getFunctionsCalleesCallers | GET /v3/functions/callees-callers | Get callees and callers for many functions |
| getFunctionsMatches | GET /v3/functions/matches | Get function-matching results for an explicit set of functions |
| getFunctionsMatchingStatus | GET /v3/functions/matches/status | Get function-matching status for an explicit set of functions |
| getImportedFunction | GET /v3/analyses/{analysis_id}/imported-functions/{imported_function_id} | Get an imported function with its callers |
| listAnalysisFunctions | GET /v3/analyses/{analysis_id}/functions | List functions in an analysis |
| listImportedFunctions | GET /v3/analyses/{analysis_id}/imported-functions | List imported functions in an analysis |
| startFunctionsMatching | POST /v3/functions/matches | Start function matching for an explicit set of functions |
| v3CanonicalizeFunctionNames | POST /v3/functions/canonical-names | Canonicalize a batch of function names |
| v3GetAnalysisFuncMaps | GET /v3/analyses/{analysis_id}/func-maps | Get function ID/address maps for an analysis |
| v3ListFunctionGlobals | GET /v3/functions/{function_id}/globals | List the global variables a function references. |
| v3SearchFunctions | GET /v3/functions | Search functions |
Object addFunctionCallee(functionId, addCalleeInputBody)
Add a callee to a function
Records an outgoing call edge from the given function to a callee. Error codes: - `403` `ACCESS_DENIED` — Access Denied - `404` `NOT_FOUND` — Not Found - `400` `BAD_REQUEST` — Bad Request
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
Long functionId = 56L; // Long | Function ID
AddCalleeInputBody addCalleeInputBody = new AddCalleeInputBody(); // AddCalleeInputBody |
try {
Object result = apiInstance.addFunctionCallee(functionId, addCalleeInputBody);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#addFunctionCallee");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| functionId | Long | Function ID | |
| addCalleeInputBody | AddCalleeInputBody |
Object
- Content-Type: application/json
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 201 | Created | - |
| 400 | Bad Request | - |
| 403 | Forbidden | - |
| 404 | Not Found | - |
| 422 | Unprocessable Entity | - |
| 500 | Internal Server Error | - |
Object addUserStringToFunction(functionId, addUserStringToFunctionInputBody)
Add a user-provided string to a function.
Attaches a user-provided string to a function at the given virtual address. The string is stored with source `USER` and complements strings discovered automatically during analysis. Error codes: - `404` `NOT_FOUND` — Not Found - `403` `ACCESS_DENIED` — Access Denied
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
Long functionId = 56L; // Long | Function ID
AddUserStringToFunctionInputBody addUserStringToFunctionInputBody = new AddUserStringToFunctionInputBody(); // AddUserStringToFunctionInputBody |
try {
Object result = apiInstance.addUserStringToFunction(functionId, addUserStringToFunctionInputBody);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#addUserStringToFunction");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| functionId | Long | Function ID | |
| addUserStringToFunctionInputBody | AddUserStringToFunctionInputBody |
Object
- Content-Type: application/json
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 201 | Created | - |
| 403 | Forbidden | - |
| 404 | Not Found | - |
| 422 | Unprocessable Entity | - |
| 500 | Internal Server Error | - |
BaseResponseAnalysisStringsResponse getAnalysisStrings(analysisId, page, pageSize, search, functionSearch, orderBy, sortOrder)
Get string information found in the Analysis
Get string information found in the analysis
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
Integer analysisId = 56; // Integer |
Integer page = 1; // Integer | The page number to retrieve.
Integer pageSize = 100; // Integer | Number of items per page.
String search = "search_example"; // String | Search is applied to string value
String functionSearch = "functionSearch_example"; // String | Search is applied to function names
String orderBy = "length"; // String | Order by field
String sortOrder = "ASC"; // String | Sort order for the results
try {
BaseResponseAnalysisStringsResponse result = apiInstance.getAnalysisStrings(analysisId, page, pageSize, search, functionSearch, orderBy, sortOrder);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#getAnalysisStrings");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| analysisId | Integer | ||
| page | Integer | The page number to retrieve. | [optional] [default to 1] |
| pageSize | Integer | Number of items per page. | [optional] [default to 100] |
| search | String | Search is applied to string value | [optional] |
| functionSearch | String | Search is applied to function names | [optional] |
| orderBy | String | Order by field | [optional] [default to value] [enum: length, value] |
| sortOrder | String | Sort order for the results | [optional] [default to ASC] [enum: ASC, DESC] |
BaseResponseAnalysisStringsResponse
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | Successful Response | - |
| 422 | Invalid request parameters | - |
BaseResponseAnalysisStringsStatusResponse getAnalysisStringsStatus(analysisId)
Get string processing state for the Analysis
Get string processing state for the Analysis
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
Integer analysisId = 56; // Integer |
try {
BaseResponseAnalysisStringsStatusResponse result = apiInstance.getAnalysisStringsStatus(analysisId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#getAnalysisStringsStatus");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| analysisId | Integer |
BaseResponseAnalysisStringsStatusResponse
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | Successful Response | - |
| 422 | Invalid request parameters | - |
BaseResponseFunctionBlocksResponse getFunctionBlocks(functionId)
Get disassembly blocks related to the function
Get disassembly blocks related to the function
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
Integer functionId = 56; // Integer |
try {
BaseResponseFunctionBlocksResponse result = apiInstance.getFunctionBlocks(functionId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#getFunctionBlocks");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| functionId | Integer |
BaseResponseFunctionBlocksResponse
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | Successful Response | - |
| 422 | Invalid request parameters | - |
| 404 | Not Found | - |
DisassemblyOutputBody getFunctionBlocks_0(functionId)
Get function disassembly
Returns the function's disassembly metadata (JSON blob containing basic blocks + local variables) along with parameter and return-type info. A function that carries no disassembly (externals, thunks) returns 200 with the block fields omitted; disassembly that exists but cannot be read yet returns 409 ANALYSIS_NOT_READY. Error codes: - `403` `ACCESS_DENIED` — Access Denied - `404` `NOT_FOUND` — Not Found - `409` `ANALYSIS_NOT_READY` — Analysis Not Ready
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
Long functionId = 56L; // Long | Function ID
try {
DisassemblyOutputBody result = apiInstance.getFunctionBlocks_0(functionId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#getFunctionBlocks_0");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| functionId | Long | Function ID |
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | OK | - |
| 403 | Forbidden | - |
| 404 | Not Found | - |
| 409 | Conflict | - |
| 422 | Unprocessable Entity | - |
| 500 | Internal Server Error | - |
BaseResponseCalleesCallerFunctionsResponse getFunctionCalleesCallers(functionId)
Get list of functions that call or are called by the specified function
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
Integer functionId = 56; // Integer |
try {
BaseResponseCalleesCallerFunctionsResponse result = apiInstance.getFunctionCalleesCallers(functionId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#getFunctionCalleesCallers");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| functionId | Integer |
BaseResponseCalleesCallerFunctionsResponse
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | Successful Response | - |
| 422 | Invalid request parameters | - |
BaseResponseListCalleesCallerFunctionsResponse getFunctionCalleesCallersBulk(functionIds)
Get list of functions that call or are called for a list of functions
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
List<Integer> functionIds = Arrays.asList(); // List<Integer> |
try {
BaseResponseListCalleesCallerFunctionsResponse result = apiInstance.getFunctionCalleesCallersBulk(functionIds);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#getFunctionCalleesCallersBulk");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| functionIds | List<Integer> |
BaseResponseListCalleesCallerFunctionsResponse
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | Successful Response | - |
| 422 | Invalid request parameters | - |
CallEdgesOutputBody getFunctionCalleesCallers_0(functionId)
Get callees and callers for a function
Returns both the outgoing call edges (callees) and incoming call edges (callers) for a single function. Error codes: - `403` `ACCESS_DENIED` — Access Denied - `404` `NOT_FOUND` — Not Found
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
Long functionId = 56L; // Long | Function ID
try {
CallEdgesOutputBody result = apiInstance.getFunctionCalleesCallers_0(functionId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#getFunctionCalleesCallers_0");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| functionId | Long | Function ID |
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | OK | - |
| 403 | Forbidden | - |
| 404 | Not Found | - |
| 422 | Unprocessable Entity | - |
| 500 | Internal Server Error | - |
BaseResponseFunctionCapabilityResponse getFunctionCapabilities(functionId)
Retrieve a functions capabilities
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
Integer functionId = 56; // Integer |
try {
BaseResponseFunctionCapabilityResponse result = apiInstance.getFunctionCapabilities(functionId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#getFunctionCapabilities");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| functionId | Integer |
BaseResponseFunctionCapabilityResponse
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | Successful Response | - |
| 422 | Invalid request parameters | - |
| 404 | Not Found | - |
CapabilitiesOutputBody getFunctionCapabilities_0(functionId)
Get capabilities for a function
Returns the capability findings (CAPA-style behaviour matches) associated with the given function. Error codes: - `403` `ACCESS_DENIED` — Access Denied - `404` `NOT_FOUND` — Not Found
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
Long functionId = 56L; // Long | Function ID
try {
CapabilitiesOutputBody result = apiInstance.getFunctionCapabilities_0(functionId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#getFunctionCapabilities_0");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| functionId | Long | Function ID |
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | OK | - |
| 403 | Forbidden | - |
| 404 | Not Found | - |
| 422 | Unprocessable Entity | - |
| 500 | Internal Server Error | - |
BaseResponseFunctionsDetailResponse getFunctionDetails(functionId)
Get function details
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
Integer functionId = 56; // Integer |
try {
BaseResponseFunctionsDetailResponse result = apiInstance.getFunctionDetails(functionId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#getFunctionDetails");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| functionId | Integer |
BaseResponseFunctionsDetailResponse
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | Successful Response | - |
| 422 | Invalid request parameters | - |
FunctionDetailsOutputBody getFunctionDetails_0(functionId)
Get function details
Returns metadata for a single function — name, virtual address, size, debug status, binary it belongs to. Error codes: - `403` `ACCESS_DENIED` — Access Denied - `404` `NOT_FOUND` — Not Found
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
Long functionId = 56L; // Long | Function ID
try {
FunctionDetailsOutputBody result = apiInstance.getFunctionDetails_0(functionId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#getFunctionDetails_0");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| functionId | Long | Function ID |
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | OK | - |
| 403 | Forbidden | - |
| 404 | Not Found | - |
| 422 | Unprocessable Entity | - |
| 500 | Internal Server Error | - |
IndirectCallSitesOutputBody getFunctionIndirectCallSites(functionId)
Get indirect call sites for a function
Returns the function's indirect call instructions with their resolved call target. Error codes: - `403` `ACCESS_DENIED` — Access Denied - `404` `NOT_FOUND` — Not Found
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
Long functionId = 56L; // Long | Function ID
try {
IndirectCallSitesOutputBody result = apiInstance.getFunctionIndirectCallSites(functionId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#getFunctionIndirectCallSites");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| functionId | Long | Function ID |
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | OK | - |
| 403 | Forbidden | - |
| 404 | Not Found | - |
| 422 | Unprocessable Entity | - |
| 500 | Internal Server Error | - |
BaseResponseFunctionStringsResponse getFunctionStrings(functionId, page, pageSize, search)
Get string information found in the function
Get string information found in the function
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
Integer functionId = 56; // Integer |
Integer page = 1; // Integer | The page number to retrieve.
Integer pageSize = 100; // Integer | Number of items per page.
String search = "search_example"; // String | Search is applied to string value
try {
BaseResponseFunctionStringsResponse result = apiInstance.getFunctionStrings(functionId, page, pageSize, search);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#getFunctionStrings");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| functionId | Integer | ||
| page | Integer | The page number to retrieve. | [optional] [default to 1] |
| pageSize | Integer | Number of items per page. | [optional] [default to 100] |
| search | String | Search is applied to string value | [optional] |
BaseResponseFunctionStringsResponse
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | Successful Response | - |
| 422 | Invalid request parameters | - |
ListFunctionStringsOutputBody getFunctionStrings_0(functionId, page, pageSize, search)
List strings for a function.
Returns the strings discovered in a function. Supports value search and pagination. Error codes: - `404` `NOT_FOUND` — Not Found - `403` `ACCESS_DENIED` — Access Denied
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
Long functionId = 56L; // Long | Function ID
Long page = 1L; // Long | Page number (1-indexed).
Long pageSize = 100L; // Long | Number of results per page.
String search = "search_example"; // String | Filter by string value (case-insensitive substring match).
try {
ListFunctionStringsOutputBody result = apiInstance.getFunctionStrings_0(functionId, page, pageSize, search);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#getFunctionStrings_0");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| functionId | Long | Function ID | |
| page | Long | Page number (1-indexed). | [optional] [default to 1] |
| pageSize | Long | Number of results per page. | [optional] [default to 100] |
| search | String | Filter by string value (case-insensitive substring match). | [optional] |
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | OK | - |
| 403 | Forbidden | - |
| 404 | Not Found | - |
| 422 | Unprocessable Entity | - |
| 500 | Internal Server Error | - |
CallEdgesOutputBody getFunctionsCalleesCallers(functionIds)
Get callees and callers for many functions
Bulk variant — pass `function_ids` as a query parameter (comma-separated or repeated). Caller must have access to every supplied function or the whole request is rejected. Error codes: - `403` `ACCESS_DENIED` — Access Denied - `404` `NOT_FOUND` — Not Found - `400` `BAD_REQUEST` — Bad Request
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
List<Long> functionIds = Arrays.asList(); // List<Long> | Function IDs to fetch edges for.
try {
CallEdgesOutputBody result = apiInstance.getFunctionsCalleesCallers(functionIds);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#getFunctionsCalleesCallers");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| functionIds | List<Long> | Function IDs to fetch edges for. |
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | OK | - |
| 400 | Bad Request | - |
| 403 | Forbidden | - |
| 404 | Not Found | - |
| 422 | Unprocessable Entity | - |
| 500 | Internal Server Error | - |
GetMatchesOutputBody getFunctionsMatches(matchId, functionIds)
Get function-matching results for an explicit set of functions
Returns the matches blob when the matching workflow has completed. While the workflow is in progress this endpoint returns the current status with no matches; use /matches/status to poll progress. Error codes: - `404` `NOT_FOUND` — Not Found - `403` `ACCESS_DENIED` — Access Denied - `400` `BAD_REQUEST` — Bad Request
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
String matchId = "matchId_example"; // String | Opaque token from a start-matching response. When supplied, returns that specific run instead of the latest.
List<Long> functionIds = Arrays.asList(); // List<Long> | Source function IDs whose matches to fetch. Required unless match_id is supplied.
try {
GetMatchesOutputBody result = apiInstance.getFunctionsMatches(matchId, functionIds);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#getFunctionsMatches");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| matchId | String | Opaque token from a start-matching response. When supplied, returns that specific run instead of the latest. | [optional] |
| functionIds | List<Long> | Source function IDs whose matches to fetch. Required unless match_id is supplied. | [optional] |
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | OK | - |
| 400 | Bad Request | - |
| 403 | Forbidden | - |
| 404 | Not Found | - |
| 422 | Unprocessable Entity | - |
| 500 | Internal Server Error | - |
GetMatchesStatusOutputBody getFunctionsMatchingStatus(matchId, functionIds)
Get function-matching status for an explicit set of functions
Returns the matching workflow's current status for the supplied function IDs. Does not include the matches blob — use GET /matches for that. Error codes: - `404` `NOT_FOUND` — Not Found - `403` `ACCESS_DENIED` — Access Denied - `400` `BAD_REQUEST` — Bad Request
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
String matchId = "matchId_example"; // String | Opaque token from a start-matching response. When supplied, returns that specific run instead of the latest.
List<Long> functionIds = Arrays.asList(); // List<Long> | Source function IDs whose matches to fetch. Required unless match_id is supplied.
try {
GetMatchesStatusOutputBody result = apiInstance.getFunctionsMatchingStatus(matchId, functionIds);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#getFunctionsMatchingStatus");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| matchId | String | Opaque token from a start-matching response. When supplied, returns that specific run instead of the latest. | [optional] |
| functionIds | List<Long> | Source function IDs whose matches to fetch. Required unless match_id is supplied. | [optional] |
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | OK | - |
| 400 | Bad Request | - |
| 403 | Forbidden | - |
| 404 | Not Found | - |
| 422 | Unprocessable Entity | - |
| 500 | Internal Server Error | - |
ImportedFunctionDetailOutputBody getImportedFunction(analysisId, importedFunctionId)
Get an imported function with its callers
Returns a single imported symbol plus the internal functions that call it, resolved via the import's PLT/stub addresses within the binary. Answers "which functions call `free`?" for binary navigation. Error codes: - `403` `ACCESS_DENIED` — Access Denied - `404` `NOT_FOUND` — Not Found
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
Long analysisId = 56L; // Long | Analysis ID
Long importedFunctionId = 56L; // Long | Imported function ID
try {
ImportedFunctionDetailOutputBody result = apiInstance.getImportedFunction(analysisId, importedFunctionId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#getImportedFunction");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| analysisId | Long | Analysis ID | |
| importedFunctionId | Long | Imported function ID |
ImportedFunctionDetailOutputBody
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | OK | - |
| 403 | Forbidden | - |
| 404 | Not Found | - |
| 422 | Unprocessable Entity | - |
| 500 | Internal Server Error | - |
ListAnalysisFunctionsOutputBody listAnalysisFunctions(analysisId, offset, limit)
List functions in an analysis
Returns a paginated list of functions belonging to the analysis. `total_count` is the full population size, ignoring pagination. Error codes: - `403` `ACCESS_DENIED` — Access Denied - `404` `NOT_FOUND` — Not Found
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
Long analysisId = 56L; // Long | Analysis ID
Long offset = 56L; // Long | Pagination offset. Defaults to 0.
Long limit = 56L; // Long | Page size. Defaults to 100.
try {
ListAnalysisFunctionsOutputBody result = apiInstance.listAnalysisFunctions(analysisId, offset, limit);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#listAnalysisFunctions");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| analysisId | Long | Analysis ID | |
| offset | Long | Pagination offset. Defaults to 0. | [optional] |
| limit | Long | Page size. Defaults to 100. | [optional] |
ListAnalysisFunctionsOutputBody
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | OK | - |
| 403 | Forbidden | - |
| 404 | Not Found | - |
| 422 | Unprocessable Entity | - |
| 500 | Internal Server Error | - |
ListImportedFunctionsOutputBody listImportedFunctions(analysisId, offset, limit)
List imported functions in an analysis
Returns a paginated list of external/imported symbols (e.g. libc's `free`) linked by the analysis's binary. These are display-only: they carry no embeddings, cannot be renamed, and never participate in match/diff. `total_count` is the full population size, ignoring pagination. Error codes: - `403` `ACCESS_DENIED` — Access Denied - `404` `NOT_FOUND` — Not Found
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
Long analysisId = 56L; // Long | Analysis ID
Long offset = 56L; // Long | Pagination offset. Defaults to 0.
Long limit = 56L; // Long | Page size. Defaults to 100.
try {
ListImportedFunctionsOutputBody result = apiInstance.listImportedFunctions(analysisId, offset, limit);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#listImportedFunctions");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| analysisId | Long | Analysis ID | |
| offset | Long | Pagination offset. Defaults to 0. | [optional] |
| limit | Long | Page size. Defaults to 100. | [optional] |
ListImportedFunctionsOutputBody
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | OK | - |
| 403 | Forbidden | - |
| 404 | Not Found | - |
| 422 | Unprocessable Entity | - |
| 500 | Internal Server Error | - |
StartMatchingOutputBody startFunctionsMatching(startMatchingForFunctionsInputBody)
Start function matching for an explicit set of functions
Dispatches the function-matching workflow against the provided function IDs. Returns immediately. Poll the status endpoint for progress; fetch results from the matches endpoint when status=COMPLETED. Error codes: - `404` `NOT_FOUND` — Not Found - `403` `ACCESS_DENIED` — Access Denied - `400` `BAD_REQUEST` — Bad Request
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
StartMatchingForFunctionsInputBody startMatchingForFunctionsInputBody = new StartMatchingForFunctionsInputBody(); // StartMatchingForFunctionsInputBody |
try {
StartMatchingOutputBody result = apiInstance.startFunctionsMatching(startMatchingForFunctionsInputBody);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#startFunctionsMatching");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| startMatchingForFunctionsInputBody | StartMatchingForFunctionsInputBody |
- Content-Type: application/json
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 202 | Accepted | - |
| 400 | Bad Request | - |
| 403 | Forbidden | - |
| 404 | Not Found | - |
| 422 | Unprocessable Entity | - |
| 500 | Internal Server Error | - |
CanonicalizeNamesOutputBody v3CanonicalizeFunctionNames(canonicalizeNamesInputBody)
Canonicalize a batch of function names
Accepts up to 25 raw function names and returns their canonical forms in the same order. A name with no canonical form is returned unchanged. Error codes: - `400` `BAD_REQUEST` — Bad Request - `503` `SERVICE_UNAVAILABLE` — Service Unavailable
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
CanonicalizeNamesInputBody canonicalizeNamesInputBody = new CanonicalizeNamesInputBody(); // CanonicalizeNamesInputBody |
try {
CanonicalizeNamesOutputBody result = apiInstance.v3CanonicalizeFunctionNames(canonicalizeNamesInputBody);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#v3CanonicalizeFunctionNames");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| canonicalizeNamesInputBody | CanonicalizeNamesInputBody |
- Content-Type: application/json
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | OK | - |
| 400 | Bad Request | - |
| 422 | Unprocessable Entity | - |
| 500 | Internal Server Error | - |
| 503 | Service Unavailable | - |
GetFunctionMapsOutputBody v3GetAnalysisFuncMaps(analysisId)
Get function ID/address maps for an analysis
Returns three maps built from every function in the analysis's binary: function ID to virtual address, its inverse, and virtual address to mangled name. Empty maps for a binary with no functions yet. Error codes: - `403` `ACCESS_DENIED` — Access Denied - `404` `NOT_FOUND` — Not Found
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
Long analysisId = 56L; // Long | Analysis ID
try {
GetFunctionMapsOutputBody result = apiInstance.v3GetAnalysisFuncMaps(analysisId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#v3GetAnalysisFuncMaps");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| analysisId | Long | Analysis ID |
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | OK | - |
| 403 | Forbidden | - |
| 404 | Not Found | - |
| 422 | Unprocessable Entity | - |
| 500 | Internal Server Error | - |
ListFunctionGlobalsOutputBody v3ListFunctionGlobals(functionId)
List the global variables a function references.
Returns the global variables referenced by the function, ordered by address. Error codes: - `404` `NOT_FOUND` — Not Found - `403` `ACCESS_DENIED` — Access Denied
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
Long functionId = 56L; // Long | Function ID
try {
ListFunctionGlobalsOutputBody result = apiInstance.v3ListFunctionGlobals(functionId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#v3ListFunctionGlobals");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| functionId | Long | Function ID |
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | OK | - |
| 403 | Forbidden | - |
| 404 | Not Found | - |
| 422 | Unprocessable Entity | - |
| 500 | Internal Server Error | - |
SearchFunctionsOutputBody v3SearchFunctions(partialName, modelName, limit, offset)
Search functions
Searches for functions visible to the caller. At least one of partial_name or model_name must be provided. Error codes: - `422` `VALIDATION_FAILED` — Validation Failed
// 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.FunctionsCoreApi;
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");
FunctionsCoreApi apiInstance = new FunctionsCoreApi(defaultClient);
String partialName = "partialName_example"; // String | Partial or full function name to search for
String modelName = "modelName_example"; // String | Restrict results to functions analysed with this model
Long limit = 10L; // Long | Maximum results to return
Long offset = 0L; // Long | Number of results to skip
try {
SearchFunctionsOutputBody result = apiInstance.v3SearchFunctions(partialName, modelName, limit, offset);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling FunctionsCoreApi#v3SearchFunctions");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}| Name | Type | Description | Notes |
|---|---|---|---|
| partialName | String | Partial or full function name to search for | [optional] |
| modelName | String | Restrict results to functions analysed with this model | [optional] |
| limit | Long | Maximum results to return | [optional] [default to 10] |
| offset | Long | Number of results to skip | [optional] [default to 0] |
- Content-Type: Not defined
- Accept: application/json
| Status code | Description | Response headers |
|---|---|---|
| 200 | OK | - |
| 422 | Unprocessable Entity | - |
| 500 | Internal Server Error | - |