About

The Picus Rest API uses GET, POST, PUT, DELETE, PATCH methods.

Path and query parameters are used to obtain parameters on endpoints.

POST parameters are passed on as JSON body.

The response always returns JSON data. The successful response returns the data directly without wrapping any element.
The error response contains a message for detailed information.

You can find an example response on the Response Codes page.

Headers

There is a only one default header that you should add to your request.

'Content-Type: application/json'

Request with Filtering Example

Getting simulations with below filters

  • Status are RUNNING or COMPLETED
  • Simulation Name contains Sim
  • Agent Name contains Agent 1
  • Prevention Result is between 50 and 75
curl --request GET \
     --url 'https://api.picussecurity.com/v1/simulations?status=RUNNING,COMPLETED&simulation_name=Sim&agent_name=Agent%201&prevention_result_lte=75&prevention_result_gte=50' \
     --header 'Accept: application/json' \
     --header 'Authorization: Bearer access_token'

Free Text Search

🚧

Text Search

Name fields are free text search. The record will be returned if the given name contains record field.

Number Search

🚧

Number Search

Number field can be searched with (greater than or equals) and (less than or equals). For example, if you want to search between 50 and 75, you can filter with field_lte=75 and field_gte=50

Query Parameters

In our endpoints, query parameters are used to filter the data. In accordance with the standards, the query parameters are used as URL/path?key1=value1&key2=value2

  • The query parameter of a field that is desired to be filtered with more than one value is taken as a point separated value.
    Ex: URL/path?key=value1,value2

Note: In some endpoints, the number of values that can be filtered is limited. You can find such restrictions in the API Guide of the relevant endpoint.