Skip to content

Examples

Here are examples of creating a target.

Create a WEB Target

Request using the ‘curl’ command:

curl -X POST "https://secure.cigital.com/api/public/v3/targets" \
-H "Token:d29483e6c73033b309a1fe02b6e982fd042c6a70" \
-H "accept: */*" \
-H "Content-Type: application/json" \
-d "{\"name\":\"targetName\",\
\"description\":\"description\",\
\"type\":\"WEB\",\
\"users\":[[\"USER_1234\",\"USER_1235\",\"USER_1236\"]],\
\"groups\": [[\"TGRP_341270852\",\"TGRP_41270852\",\"TGRP_51270852\"]]}"

Request using an Apache Groovy script:

// NOTE: Environment (env) and other variables have to be
// defined beforehand.

def create_web_target = httpRequest ignoreSslErrors: false,\
acceptType: 'TEXT_PLAIN',quiet: false,\
httpMode: 'POST',\
customHeaders:[[name:'token',value:"${env.token}"],\
[name:'Content-Type',value:'application/json']],\
url:"${env.HostUrl}/api/public/v3/targets",\
requestBody:"{\"name\":${env.targetName},\
\"description\":${env.targetDesc},\
\"type\":${env.targetType},\
\"users\":[[${env.user1}]],\
\"groups\":[[${env.group1}]]}"
println(create_web_target)

Request using Java source code:

public void createWebTarget( String targetType,
                             String targetName,
                             String targetDesc,
                             String[] users,
                             String[] groups) {

    Client client = ClientBuilder.newClient();
    WebTarget target =
        client.target( MSP_URL ).path( "/api/public/v3/targets" );
    String json = String.format( "{'name':'%s',
                                   'description':'%s',
                                   'type':'%s',
                                   'users':[['%s','%s','%s']],
                                   'groups':[['%s','%s','%s']]}",
                                   targetName,
                                   targetDesc,
                                   targetType,
                                   users[0], users[1], users[2],
                                   groups[0], groups[1], groups[2]
                  );
    Response response =
        target.request().accept( MediaType.TEXT_PLAIN_TYPE )
              .header( "token", MSP_TOKEN )
              .post( Entity.json( json ), Response.class );

    if (response.getStatus() == 201) {
        System.out.println( response.readEntity( String.class ) );
    } else {
        System.out.println( response.readEntity( String.class ) );
    }
    client.close();
}

Response:

Status: 201 (Success)

Response Body: None

Create a MOBILE Target

Request using the ‘curl’ command:

curl -X POST "https://secure.cigital.com/api/public/v3/targets" \
-H "Token:d29483e6c73033b309a1fe02b6e982fd042c6a70" \
-H "accept: */*" \
-H "Content-Type: application/json" \
-d "{\"name\":\"targetName\",\
\"description\":\"description\",
\"type\":\"MOBILE\",\
\"appType\":\"ANDROID\",\
\"users\":[[\"USER_1234\",\"USER_1235\",\"USER_1236\"]],\
\"groups\": [[\"TGRP_341270852\",\"TGRP_41270852\",\"TGRP_51270852\"]]}"

Request using an Apache Groovy script:

// NOTE: Environment (env) and other variables have to be
// defined beforehand.

def create_mobile_target = httpRequest ignoreSslErrors: false,\
acceptType: 'TEXT_PLAIN',quiet: false,\
httpMode: 'POST',\
customHeaders:[[name:'token',value:"${env.token}"],\
[name:'Content-Type',value:'application/json']],\
url:"${env.HostUrl}/api/public/v3/targets",\
requestBody:"{\"name\":${env.targetName},\
\"description\":${env.targetDesc},\
\"type\":${env.targetType},\
\"users\":[[${env.user1}]],\
\"groups\":[[${env.group1}]]}"
println(create_mobile_target)

Request using Java source code:

public void createMobileTarget( String targetType,
                             String targetName,
                             String targetDesc,
                             String[] users,
                             String[] groups) {

    Client client = ClientBuilder.newClient();
    WebTarget target =
        client.target( MSP_URL ).path( "/api/public/v3/targets" );
    String json = String.format( "{'name':'%s',
                                   'description':'%s',
                                   'type':'%s',
                                   'users':[['%s','%s','%s']],
                                   'groups':[['%s','%s','%s']]}",
                                   targetName,
                                   targetDesc,
                                   targetType,
                                   users[0], users[1], users[2],
                                   groups[0], groups[1], groups[2]
                  );
    Response response =
        target.request().accept( MediaType.TEXT_PLAIN_TYPE )
              .header( "token", MSP_TOKEN )
              .post( Entity.json( json ), Response.class );

    if (response.getStatus() == 201) {
        System.out.println( response.readEntity( String.class ) );
    } else {
        System.out.println( response.readEntity( String.class ) );
    }
    client.close();
}

Response:

Status: 201 (Success)

Response Body: None

Create an SAST (Source Code) Target

Request using the ‘curl’ command:

curl -X POST "https://secure.cigital.com/api/public/v3/targets" \
-H "Token:d29483e6c73033b309a1fe02b6e982fd042c6a70" \
-H "accept: */*" \
-H "Content-Type: application/json" \
-d "{\"name\":\"targetName\",\
\"description\":\"description\",\
\"type\":\"SOURCE_CODE\",\
\"users\":[[\"USER_1234\",\"USER_1235\",\"USER_1236\"]],\
\"groups\": [[\"TGRP_341270852\",\"TGRP_41270852\",\"TGRP_51270852\"]]}"

Request using an Apache Groovy script:

// NOTE: Environment (env) and other variables have to be
// defined beforehand

def create_scr_target = httpRequest ignoreSslErrors: false,\
acceptType: 'TEXT_PLAIN',quiet: false,\
httpMode: 'POST',\
customHeaders:[[name:'token',value:"${env.token}"],\
[name:'Content-Type',value:'application/json']],\
url:"${env.HostUrl}/api/public/v3/targets",\
requestBody:"{\"name\":${env.targetName},\
\"description\":${env.targetDesc},\
\"type\":${env.targetType},\
\"users\":[[${env.user1}]],\
\"groups\":[[${env.group1}]]}"
println(create_scr_target)

Request using Java source code:

public void createSCRTarget( String targetType,
                             String targetName,
                             String targetDesc,
                             String[] users,
                             String[] groups) {

    Client client = ClientBuilder.newClient();
    SourceTarget target =
        client.target( MSP_URL ).path( "/api/public/v3/targets" );
    String json = String.format( "{'name':'%s',
                                   'description':'%s',
                                   'type':'%s',
                                   'users':[['%s','%s','%s']],
                                   'groups':[['%s','%s','%s']]}",
                                   targetName,
                                   targetDesc,
                                   targetType,
                                   users[0], users[1], users[2],
                                   groups[0], groups[1], groups[2]
                  );
    Response response =
        target.request().accept( MediaType.TEXT_PLAIN_TYPE )
              .header( "token", MSP_TOKEN )
              .post( Entity.json( json ), Response.class );

    if (response.getStatus() == 201) {
        System.out.println( response.readEntity( String.class ) );
    } else {
        System.out.println( response.readEntity( String.class ) );
    }
    client.close();
}

Response:

Status: 201 (Success)

Response Body: None

Create a NETWORK Target

Request using the ‘curl’ command:

curl -X POST "https://secure.cigital.com/api/public/v3/targets" \
-H "Token:d29483e6c73033b309a1fe02b6e982fd042c6a70" \
-H "accept: */*" \
-H "Content-Type: application/json" \
-d "{\"name\":\"targetName\",\
\"description\":\"description\",\
\"type\":\"NETWORK\",\
\"users\":[[\"USER_1234\",\"USER_1235\",\"USER_1236\"]],\
\"groups\": [[\"TGRP_341270852\",\"TGRP_41270852\",\"TGRP_51270852\"]]}"

Request using an Apache Groovy script:

// NOTE: Environment (env) and other variables have to be
// defined beforehand

def create_network_target = httpRequest ignoreSslErrors: false,\
acceptType: 'TEXT_PLAIN',quiet: false,\
httpMode: 'POST',\
customHeaders:[[name:'token',value:"${env.token}"],\
[name:'Content-Type',value:'application/json']],\
url:"${env.HostUrl}/api/public/v3/targets",\
requestBody:"{\"name\":${env.targetName},\
\"description\":${env.targetDesc},\
\"type\":${env.targetType},\
\"users\":[[${env.user1}]],\
\"groups\":[[${env.group1}]]}"
println(create_network_target)

Request using Java source code:

public void createNetworkTarget( String targetType,
                             String targetName,
                             String targetDesc,
                             String[] users,
                             String[] groups) {

    Client client = ClientBuilder.newClient();
    NetTarget target =
        client.target( MSP_URL ).path( "/api/public/v3/targets" );
    String json = String.format( "{'name':'%s',
                                   'description':'%s',
                                   'type':'%s',
                                   'users':[['%s','%s','%s']],
                                   'groups':[['%s','%s','%s']]}",
                                   targetName,
                                   targetDesc,
                                   targetType,
                                   users[0], users[1], users[2],
                                   groups[0], groups[1], groups[2]
                  );
    Response response =
        target.request().accept( MediaType.TEXT_PLAIN_TYPE )
              .header( "token", MSP_TOKEN )
              .post( Entity.json( json ), Response.class );

    if (response.getStatus() == 201) {
        System.out.println( response.readEntity( String.class ) );
    } else {
        System.out.println( response.readEntity( String.class ) );
    }
    client.close();
}

Response:

Status: 201 (Success)

Response Body: None

Parent topic:Create Target