HTTP status codes
ABM uses following HTTP status codes.
The request was completed successfully.
A new resource has been created successfully. The resource’s URI is available from the Location header response.
Existing resource has been deleted successfully
The request was defined incorrectly. The response body will include further explanations.
The requested resource does not exist.
Indicates that the request could not be processed due to the conflict in the request, such as creation of new resource with already existing id.
The request was well-formed but was unable to be followed due to semantic errors.
REST API is availble through HTTPS protocol. All requests must be preceded with /api/v1 prefix. All responses have JSON format.
Autorization and authentication
Each requst must contain authorization header with acces token:
-H 'Authorization: Bearer <ACCES-TOKEN>'
Import table from .csv file
A POST request is used to import .csv file.
Request structure
.csv file content (required)
csv file settings (required)
Example requests
curl:
httpie:
Response structure
Response status should be 200.
Example response
Import table from data base
A POST request is used to import file from data base.
Request structure
name of source table (required)
table name in ABM data base (required)
data base host (required)
data base port (required)
data base catalog (depends on db type)
data base type (required)
data base name (depends on db type)
data base scheme (depends on db type)
Example requests
curl:
httpie:
Response structure
Response status should be 200.
Example response
Get list of imported tables
A GET request is used to get list of imported tables.
Example requests
curl:
httpie:
Response structure
List with names of imported tables. Response status should be 200.
Example response
A DELETE request is used to delete table.
Request structure
The request path contains following parameters:
./api/v1/data/{tableName}
Example requests
curl:
httpie:
Response structure
Response status should be 200.
Example response
Export table to .csv file
A GET request is used to export table to .csv file.
Request structure
The request path contains following parameters:
./api/v1/data/{sourceTableName}
Example requests
curl:
httpie:
Response structure
Response contains content of .csv file. Response status should be 200.
Export table to data base
A POST request is used to export table to data base.
Request structure
The request path contains following parameters:
./api/v1/data/{sourceTableName}
table name after export (required)
data base host (required)
data base port (required)
data base catalog (depends on db type)
data base type (required)
data base name (depends on db type)
data base scheme (depends on db type)
Example requests
curl:
httpie:
Response structure
Response status should be 200.
Example response
Creating project
A POST request is used to create project.
Request structure
Process type ('classification' or 'approximation') (required)
Object with process parameters (required)
processParameters object:
Parameter
Presence
Description
Name of a process method. For approximation task "approximation". In case of classification: "quick","advanced" or "gold"
required for classification
Positive value of target variable (only for classification)
List containing names, roles and types for each of variables
Name of quality measure (for classification): "LIFT", "CAPTURED_RESPONSE", "PRECISION", "ACCURACY", "RECALL", "ROC_AREA", "COST". For approximation: "MAE", "MAPE", "RMSE", "R_SQUARED"
Value of percentile for which "LIFT" or "CAPTURED_RESPONSE" is optimized. (only for classification)
Mode of sampling: "MANUAL", "AUTO_RRL"
samplingStratificationMode
Type of stratification sampling: "NONE", "CONST_RATIO", "CONST_NUM", "OVERSAMPLING". (only for classification)
samplingPositiveTargetCategoryRatio
Expected ratio of positive target. (only for classification)
Value of classification threshold. (only for classification)
classificationThresholdType
Type of setting classification threshold: "MANUAL_PROBABILITY", "COST_MATRIX" or "AUTOMATIC". (only for classification)
Wheter values of cost matrix will be calculated automatically based on a-priori probability. (only for classification)
Currency for profit chart. (only for classification)
Value of True Positive in profit matrix. (only for classification)
profitMatrixFalseNegative
Value of False Negative in profit matrix. (only for classification)
profitMatrixFalsePositive
Value of False Positive in profit matrix. (only for classification)
Value of True Negative in profit matrix. (only for classification)
If false only train and validation table are created, if true: train, validation and test table are created
Example requests
curl:
httpie:
Response structure
Response status should be 201.
Example response
Copying project
A POST request is used to copy project.
Request structure
The request path contains following parameters:
Example requests
curl:
httpie:
Response structure
Response status should be 201.
Example response
Change project settings
A PUT request is used to change project settings.
Request structure
The request path contains following parameters:
./api/v1/projects/{projectId}/parameters
Process method (required)
Name of target variable (required)
Target positive value (only for classification) (required for classification)
List with role for each variable (optional)
Name of quality measure (optional)
Value of percentile on which LIFT or CAPTURED_RESPONSE is optimized (optional)
Size of sample (optional)
samplingStratificationMode
Type of a sampling (only for classification) (optional)
samplingPositiveTargetCategoryRatio
Expectation value for ratio of positive target (only for classification) (optional)
Classification treshold (optional)
classificationThresholdType
Type of selection of classification treshold (optional)
Wheater values of cost matrix will be calculated automatically (optional)
Currency for profit chart (only for classification) (optional)
Value of True Positive (optional)
profitMatrixFalseNegative
Value of False Negative (optional)
profitMatrixFalsePositive
Value of False Positive (optional)
Value of True Negative (optional)
If false only train and validation table are created, if true: train, validation and test table are created (optional)
Example requests
curl:
httpie:
Get list of all projects
A GET request is used to obtain list of projects.
Example requests
curl:
httpie:
Response structure
Response status should be 200.
Example response
Starting and cancelling project
A PUT request is used to start/cancel project.
Request structure
The request path contains following parameters:
./api/v1/projects/{projectId}/build
Action to perform: 'start' or 'cancel' (required)
Example requests
curl:
httpie:
Check build status of a project
A GET request is used to check build status of a project.
Request structure
The request path contains following parameters:
./api/v1/projects/{projectId}/build
Example requests
curl:
httpie:
Response structure
Information about project status
Deleting project
A DELETE request is used to delete project.
Request structure
The request path contains following parameters:
./api/v1/projects/{projectId}
Example requests
curl:
httpie:
Scoring data with model
A PUT request is used for scoring data with model.
Request structure
The request path contains following parameters:
./api/v1/projects/{projectId}/score
Action to perform: 'start' or 'cancel' (required)
Name of table with data for scoring (required for 'start' option)
Result table name with scored data (required for 'start' option)
List with names of variables to copy (required)
Example requests
curl:
httpie:
Checking scoring status of a project
A GET request is used for checking status of scoring project.
Request structure
The request path contains following parameters:
./api/v1/projects/{projectId}/score
Example requests
curl:
httpie:
Response structure
Information about scoring status
Getting list of modules in project
A GET request is used for getting list of modules in project.
Request structure
The request path contains following parameters:
./api/v1/projects/{projectId}/modules
Example requests
curl:
httpie:
Response structure
List with names of modules for which result is available
Exporting statistics for all modules in project
A GET request is used for exporting statistics for all modules in project.
Request structure
The request path contains following parameters:
./api/v1/projects/{projectId}/statistics
Example requests
curl:
httpie:
Response structure
List of statistics for all modules
Exporting statistics for selected module in project
A GET request is used for exporting statistics for selected module in project.
Request structure
The request path contains following parameters:
./api/v1/projects/{projectId}/statistics/{moduleName}
Name of module with statistics
Example requests
curl:
httpie:
Response structure
List of statistics for selected module
Exporting of scoring code in selected language
A GET request is used for exporting scoring code.
Request structure
The request path contains following parameters:
Name of language for scoring code exporting: JAVA, SQL, SQL_MSSQL, SQL_TERADATA, SQL_ORACLE, SQL_POSTGRES
Example requests
curl:
httpie:
Creating model in single request
A POST request is used for creating model in single request.
Request structure
Input data for modelling (required)
URL where result of modelling will be send (required)
Language for scoring code (required)
Type of process: "classification" or "approximation" (required)
Object with process parameters (required)
inputData object:
Data from data base:
Data from .csv file:
processParameters object: the same as for creating project
Example requests
curl:
httpie:
Response structure
Id of the model
Getting model status
A GET request is used for getting model status.
Request structure
The request path contains following parameters:
./api/v1/models/{Id}/status
Example requests
curl:
httpie:
Response structure
Information about status of the model
Getting model result
A GET request is used for getting model result.
Request structure
The request path contains following parameters:
./api/v1/models/{Id}/result
Example requests
curl:
httpie:
Response structure
List with signature of the model and scoring code
Deploying final model to scoring engine
A POST request is used for deploying final model in scoring engine.
Request structure
The request path contains following parameters:
./api/v1/projects/{modelId}/deploy
If false: existing deployed model with the same id will not be overwrited (deafult: false) (required)
Example requests
curl:
httpie:
Response structure
Id of the model in scoring engine
Deleting model from scoring engine
A DELETE request is used for deleting model from scoring engine.
Request structure
The request path contains following parameters:
./api/v1/scoring/{modelId}
Example requests
curl:
httpie:
Scoring data row
A POST request is used for scoring data row.
Request structure
The request path contains following parameters:
./api/v1/scoring/{modelId}/score
Data row for scoring (required)
Example requests
curl:
httpie:
Response structure
List with model id, scoring time, predicted value of target and value of probability for positive target (only for classification)
Listing models in scoring engine
A GET request is used for listing models in scoring engine.
Example requests
curl:
httpie:
Response structure
List with names of models in scoring engine