Pipeline

This index stores all the incoming pipelines.

Schema

Field

Type

Required

Readonly

Auto Managed

Example

id

String

True

True

False

dsalkasdioi232382yieyqwuiy

Warning

  • It is not possible to update readonly fields.

  • it is not possible to set the Auto managed fields.

Note

  • id is required but it is auto-generated if not provided. It is recommended to provide a friendly for simplify the retrieve of connected date in other indices.

Create

To create a new pipeline use the following REST call:

POST /pipeline/(string: id)

with the request body in JSON format:

POST /pipeline HTTP/1.1
Host: cb-manager.example.com
Content-Type: application/json

{
    "id": "<pipeline-id>"
}
Parameters
  • id – optional pipeline id.

Request Headers
Response Headers
Status Codes

Replace the data with the correct values, for example <pipeline-id> with alert-attack.

Note

It is possible to add additional data.

If the creation is correctly executed the response is:

HTTP/1.1 201 Created
Content-Type: application/json

[
    {
        "status": "Created",
        "code": 201,
        "error": false,
        "message": "Pipeline with id=<pipeline-id> correctly created"
    }
]

Otherwise, if, for example, an pipeline with the given id is already found, this is the response:

HTTP/1.1 406 Not Acceptable
Content-Type: application/json

[
    {
        "status": "Not Acceptable",
        "code": 406,
        "error": true,
        "message": "Id already found"
    }
]

Read

To get the list of pipelines:

GET /pipeline/(string: id)

The response includes all the pipelines created.

It is possible to filter the results using the following request body:

GET /pipeline HTTP/1.1
Host: cb-manager.example.com
Content-Type: application/json

{
    "select": [ "id" ],
    "where": {
        "equals": {
            "target:" "id",
            "expr": "<pipeline-id>"
        }
    }
}
Parameters
  • id – optional pipeline id.

Request Headers
Response Headers
Status Codes

In this way, it will be returned only the id of the pipeline with id = “<pipeline-id>”.

Update

To update an pipeline, use:

PUT /pipeline/(string: id)
PUT /pipeline HTTP/1.1
Host: cb-manager.example.com
Content-Type: application/json

{
    "id": "<pipeline-id>",
    "source": "<ip-address>"
}
Parameters
  • id – optional pipeline id.

Request Headers
Response Headers
Status Codes

This example add a new field source for the pipeline with id = “<pipeline-id>”.

A possible response is:

HTTP/1.1 200 OK
Content-Type: application/json

[
    {
        "status": "OK",
        "code": 200,
        "error": false,
        "message": "Pipeline with id=<pipeline-id> correctly updated"
    }
]

Instead, if the are not changes the response is:

HTTP/1.1 304 Not Modified
Content-Type: application/json

[
    {
        "status": "Not Modified",
        "code": 304,
        "error": false,
        "message": "Update for pipeline with id=<pipeline-id> not necessary"
    }
]

Delete

To delete pipelines, use:

DELETE /pipeline/(string: id)
DELETE /pipeline HTTP/1.1
Host: cb-manager.example.com
Content-Type: application/json

{
    "where": {
        "equals": {
            "target:" "id",
            "expr": "<pipeline-id>"
        }
    }
}
Parameters
  • id – optional pipeline id.

Request Headers
Response Headers
Status Codes

This request removes the pipeline with id = “<pipeline-id>”.

This is a possible response:

HTTP/1.1 205 Reset Content
Content-Type: application/json

[
    {
        "status": "Reset Content",
        "code": 200,
        "error": false,
        "message": "Pipeline with id=<pipeline-id> correctly deleted"
    }
]

Caution

Without request body, it removes all the pipelines.