UpdateProjectRequestById

This method can be used for the following functionality: Update a project request that you have access to, by project request identifier (Id).

Parameters

The following URL, Headers and Parameters are required for requests to this API endpoint. Where a parameter is optional, it will be indicated. Otherwise treat all parameters as mandatory.

Headers

PUT /api/ss/request/:id HTTP/1.1
Host: demo.attackforge.com
X-SSAPI-KEY: APIKey
Content-Type: application/json
Connection: close

Query

id (string)

Identifier for the project request.

Example:

PUT /api/ss/request/5e8017d2e1385f0c58e8f4f8 HTTP/1.1

name (string) (optional)

Name of the project.

Example:

{
   "name": "..."
}

code (string) (optional)

Project code.

Example:

{
   "code": "..."
}

groups (array of strings) (optional)

Groups to link to the project. Must match exact group names.

Example:

{
   "groups": ["...", "...", "..."]
}

scope (array of strings) (optional)

Project scope / assets to be tested.

Example:

{
   "scope": ["...", "...", "..."]
}

testsuites (array of strings) (optional)

Testsuites to assign to the project. Must match exact testsuite names.

Example:

{
   "testsuites": ["...", "...", "..."]
}

startDate (string) (optional)

Desired project start date. Must be UTC string e.g. 2021-06-03T23:15:33.008Z.

Example:

{
   "startDate": "2021-06-03T00:00:00.000Z"
}

endDate (string) (optional)

Desired project end date. Must be UTC string e.g. 2021-06-03T23:15:33.008Z.

Example:

{
   "endDate": "2021-06-03T00:00:00.000Z"
}

test_window (array of strings) (optional)

Test window for the project. Must be one or more of the following: Weekdays-BusinessHours, Weekdays-NonBusinessHours, Weekends

Example:

{
   "test_window": ["Weekdays-BusinessHours", "Weekends"]
}

onsite_testing (string) (optional)

Whether onsite testing is required or not. Must be one or more of the following: Yes, No

Example:

{
   "onsite_testing": "Yes"
}

reason_for_testing (string) (optional)

Reason or justification for testing.

Example:

{   
    "reason_for_testing": "..."
}

organization_code (string) (optional)

Organization code.

Example:

{   
    "organization_code": "..."
}

custom_fields (array of objects) (optional)

Custom fields. Must include a key and value. Key must be unique and letters, numbers and underscores only.

For more information visit https://support.attackforge.com/attackforge-enterprise/getting-started/custom-fields-and-forms#using-custom-fields-with-apis

Example:

{   
    "custom_fields": [{"key": "...", "value": "..."}]
}

Example

The following example is a cURL request to update a project request.

Request

Include API Token instead of stars in 'X-SSAPI-KEY: ***************************************' parameter.

curl -X PUT 'https://demo.attackforge.com/api/ss/request/5e8017d2e1385f0c58e8f4f8' -H 'Host: demo.attackforge.com' -H 'X-SSAPI-KEY: ***************************************' -H 'Content-Type: application/json' -H 'Connection: close' -d '{
  "name": "ACME Corp Web App Pentest",
  "code": "DEMO9999",
  "groups": ["ACME Corp Digital Team", "Pentest Team"],
  "scope": ["test.com", "192.168.0.1"],
  "testsuites": ["ASVS Level 2 Web Application", "OSSTMM v3.0 Infrastructure"],
  "startDate": "2021-06-03T00:00:00.000Z",
  "endDate": "2021-06-04T00:00:00.000Z",
  "test_window": ["Weekdays-BusinessHours", "Weekends"],
  "onsite_testing": "Yes",
  "reason_for_testing": "Application is about to go-live.",
  "custom_fields": [{"key": "customer_name", "value": "WAYNE TECHNOLOGIES."}]
}'

Response

Response contains a result object.

{
  "result": {
    "result": "Project Request Updated",
    "request": {
      "id": "...",
      "created": "...",
      "last_updated": "...",
      "name": "...",
      "code": "...",
      "groups": [
        "..."
      ],
      "scope": [
        "..."
      ],
      "testsuites": [
        "..."
      ],
      "startDate": "...",
      "endDate": "...",
      "test_window": [
        "..."
      ],
      "onsite_testing": "...",
      "reason_for_testing": "...",
      "custom_fields": [
        {
          "key": "...", 
          "value": "..."
        }
      ]
    }
  }
}

Last updated

Check YouTube for more tutorials: https://youtube.com/@attackforge