### Parameter Examples Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/downloadprojecttestcaseworkspacenotefile.md Examples of how to structure the URL with specific identifiers. ```http GET /api/ss/project/5f5ebf3b31ff1d08c1e5fa91/testcase-workspace-note/:testcaseWorkspaceNoteId/file/:fileName HTTP/1.1 ``` ```http GET /api/ss/project/:projectId/testcase-workspace-note/656158c0965172000f9119a8/file/:fileName HTTP/1.1 ``` ```http GET /api/ss/project/:projectId/testcase-workspace-note/:testcaseWorkspaceNoteId/file/o23kuixb8c34fm4gbehndpwzuemegvufjzc7jfkh5xlrmlswl4smfyslj65vuupcv5cc21hizhiiysa1bh5ibiwio17vzpzr63n6xtfh9yvzso4ete6qyh55ez5o6in1 HTTP/1.1 ``` -------------------------------- ### Path Parameter Examples Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/deleteprojecttestcaseworkspacenotefile.md Examples showing how to structure the URL path with specific identifiers. ```text DELETE /api/ss/project/5f5ebf3b31ff1d08c1e5fa91/testcase-workspace-note/:testcaseWorkspaceNoteId/file/:file ``` ```text DELETE /api/ss/project/:projectId/testcase-workspace-note/5f5ebf3b31ff1d08c1e5fa91/file/:file ``` ```text DELETE /api/ss/project/:projectId/testcase-workspace-note/:testcaseWorkspaceNoteId/file/o23kuixb8c34fm4gbehndpwzuemegvufjzc7jfkh5xlrmlswl4smfyslj65vuupcv5cc21hizhiiysa1bh5ibiwio17vzpzr63n6xtfh9yvzso4ete6qyh55ez5o6in1 HTTP/1.1 ``` -------------------------------- ### Path Parameter Examples Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/deleteprojectsummarypagefile.md Examples showing the structure of the projectId and file path parameters. ```text DELETE /api/ss/project/5f5ebf3b31ff1d08c1e5fa91/summary-page/file/:file ``` ```text DELETE /api/ss/project/:projectId/summary-page/file/o23kuixb8c34fm4gbehndpwzuemegvufjzc7jfkh5xlrmlswl4smfyslj65vuupcv5cc21hizhiiysa1bh5ibiwio17vzpzr63n6xtfh9yvzso4ete6qyh55ez5o6in1 HTTP/1.1 ``` -------------------------------- ### Project ID Query Example Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/getprojectworkspace.md Example of the GET request structure using a specific project ID. ```http GET /api/ss/project/5f63de24fa1c9208d3e140b0/workspace HTTP/1.1 ``` -------------------------------- ### Date range iteration examples Source: https://support.attackforge.com/attackforge-enterprise/modules/reporting/template-functions.md Examples demonstrating how to define date ranges with specific start, stop, and step parameters. ```text {!! Range 1st Jan 2026 -> midnight 2nd Jan 2026 - step 1 day } {#$dateRange[2026-01-01T00:00:00.000Z][2026-01-03T00:00:00.000Z][1 day]} {this} {/} {!! Will loop 2 times, where 'this' equals 2026-01-01T00:00:00.000Z, 2026-01-02T00:00:00.000Z } ``` ```text {!! Range 1st Jan 2026 -> 3rd Jan 2026 - step 1 day } {#$dateRange[2026-01-01T00:00:00.000Z][2026-01-03T00:00:00.001Z][1 day]} {this} {/} {!! Will loop 3 times, where 'this' equals 2026-01-01T00:00:00.000Z, 2026-01-02T00:00:00.000Z, 2026-01-03T00:00:00.000Z } ``` -------------------------------- ### Query Parameter Examples Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/getmostvulnerableassets.md Examples of filtering the asset list using limit, start date, and end date parameters. ```http GET /api/ss/analytics/vulnerable/assets?limit=10 HTTP/1.1 ``` ```http GET /api/ss/analytics/vulnerable/assets?startDate=2021-06-03T00:00:00.000Z HTTP/1.1 ``` ```http GET /api/ss/analytics/vulnerable/assets?endDate=2021-06-03T00:00:00.000Z HTTP/1.1 ``` -------------------------------- ### Example Prompt Source: https://support.attackforge.com/attackforge-enterprise/modules/ai-mcp-and-skills/count-vulnerabilities.md A natural language query example for the tool. ```text How many vulnerabilities do I have in AttackForge? ``` -------------------------------- ### User Parameter Examples Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/createuser.md JSON body examples for individual user parameters. ```json { "first_name": "..." } ``` ```json { "last_name": "..." } ``` ```json { "username": "..." } ``` ```json { "email": "..." } ``` ```json { "password": "..." } ``` ```json { "role": "..." } ``` ```json { "mfa": "..." } ``` -------------------------------- ### Path Parameter Examples Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/downloadprojecttestcasefile.md Examples of individual path parameters for the API request. ```http GET /api/ss/project/5f5ebf3b31ff1d08c1e5fa91/testcase/:testcaseId/file/:fileName HTTP/1.1 ``` ```http GET /api/ss/project/:projectId/testcase/656158c0965172000f9119a8/file/:fileName HTTP/1.1 ``` ```http GET /api/ss/project/:projectId/testcase/:testcaseId/file/o23kuixb8c34fm4gbehndpwzuemegvufjzc7jfkh5xlrmlswl4smfyslj65vuupcv5cc21hizhiiysa1bh5ibiwio17vzpzr63n6xtfh9yvzso4ete6qyh55ez5o6in1 HTTP/1.1 ``` -------------------------------- ### Path Parameter Example Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/getprojectmembershipadministrators.md Example of the URL path structure including the project identifier. ```http GET /api/ss/project/5e64179c899bb708b55ea48c/member-admins HTTP/1.1 ``` -------------------------------- ### Path Parameter Examples Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/patchvulnerabilityevidence.md Examples of the vulnerability ID and file storage name path parameters. ```http PATCH /api/ss/vulnerability/5f5ebf3b31ff1d08c1e5fa91/evidence/:file HTTP/1.1 ``` ```http PATCH /api/ss/vulnerability/:id/evidence/o23kuixb8c34fm4gbehndpwzuemegvufjzc7jfkh5xlrmlswl4smfyslj65vuupcv5cc21hizhiiysa1bh5ibiwio17vzpzr63n6xtfh9yvzso4ete6qyh55ez5o6in1 HTTP/1.1 ``` -------------------------------- ### GET /release-notes/2022.md Source: https://support.attackforge.com/release-notes/2022.md Queries the documentation page for specific information using natural language questions. ```APIDOC ## GET /release-notes/2022.md ### Description Perform an HTTP GET request on the current page URL to query the documentation dynamically. ### Method GET ### Endpoint https://support.attackforge.com/release-notes/2022.md ### Parameters #### Query Parameters - **ask** (string) - Required - The immediate question to ask, written in natural language. - **goal** (string) - Optional - Describes the broader end goal to help tailor the answer. ``` -------------------------------- ### GET /release-notes/2020.md Source: https://support.attackforge.com/release-notes/2020.md Queries the documentation for information related to a specific question and optional goal. ```APIDOC ## GET /release-notes/2020.md ### Description Queries the documentation dynamically by providing a natural language question. The response includes a direct answer along with relevant excerpts and sources. ### Method GET ### Endpoint https://support.attackforge.com/release-notes/2020.md ### Parameters #### Query Parameters - **ask** (string) - Required - The specific, self-contained question to ask the documentation. - **goal** (string) - Optional - Describes the broader end goal to help tailor the answer. ``` -------------------------------- ### Query documentation via HTTP GET Source: https://support.attackforge.com/release-notes/2020.md Use this request to ask specific questions and provide context for the desired end goal. ```http GET https://support.attackforge.com/release-notes/2020.md?ask=&goal= ``` -------------------------------- ### Path Parameter Examples Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/deleteprojecttestcasenotefile.md Examples showing how to format the project ID, test case note ID, and file name in the request URL. ```http DELETE /api/ss/project/5f5ebf3b31ff1d08c1e5fa91/testcase-note/:testcaseNoteId/file/:file ``` ```http DELETE /api/ss/project/:projectId/testcase-note/5f5ebf3b31ff1d08c1e5fa91/file/:file ``` ```http DELETE /api/ss/project/:projectId/testcase-note/:testcaseNoteId/file/o23kuixb8c34fm4gbehndpwzuemegvufjzc7jfkh5xlrmlswl4smfyslj65vuupcv5cc21hizhiiysa1bh5ibiwio17vzpzr63n6xtfh9yvzso4ete6qyh55ez5o6in1 HTTP/1.1 ``` -------------------------------- ### Query Parameter Example Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/getuserbyusername.md Example of the GET request structure with a username parameter. ```http GET /api/ss/users/username/bruce.wayne HTTP/1.1 ``` -------------------------------- ### GET /release-notes/2026.md Source: https://support.attackforge.com/release-notes/2026.md Queries the documentation page for specific information using a natural language question and an optional goal context. ```APIDOC ## GET /release-notes/2026.md ### Description Queries the documentation page dynamically to retrieve answers, excerpts, and sources based on a provided question. ### Method GET ### Endpoint https://support.attackforge.com/release-notes/2026.md ### Parameters #### Query Parameters - **ask** (string) - Required - The specific, self-contained question to ask. - **goal** (string) - Optional - The broader end goal to help tailor the response. ### Response #### Success Response (200) - **answer** (string) - The direct answer to the question. - **excerpts** (array) - Relevant excerpts from the documentation. - **sources** (array) - Sources used to generate the answer. ``` -------------------------------- ### GET /release-notes/2021.md Source: https://support.attackforge.com/release-notes/2021.md Queries the documentation page dynamically to retrieve answers, excerpts, and sources based on a specific question and optional goal. ```APIDOC ## GET /release-notes/2021.md ### Description Performs a dynamic query against the documentation page to retrieve information not explicitly present in the static content. ### Method GET ### Endpoint https://support.attackforge.com/release-notes/2021.md ### Parameters #### Query Parameters - **ask** (string) - Required - The specific, self-contained question to ask in natural language. - **goal** (string) - Optional - Describes the broader end goal to help tailor the response. ### Response #### Success Response (200) - **answer** (string) - A direct answer to the question. - **excerpts** (array) - Relevant excerpts from the documentation. - **sources** (array) - References to the documentation sources used. ``` -------------------------------- ### GET /release-notes/2024.md Source: https://support.attackforge.com/release-notes/2024.md Performs a dynamic query against the documentation page to retrieve answers based on a specific question and optional goal. ```APIDOC ## GET /release-notes/2024.md ### Description Queries the documentation dynamically to retrieve information not explicitly present on the page. ### Method GET ### Endpoint https://support.attackforge.com/release-notes/2024.md ### Parameters #### Query Parameters - **ask** (string) - Required - The specific, self-contained question to ask. - **goal** (string) - Optional - The broader end goal to help tailor the response. ### Response #### Success Response (200) - **answer** (string) - The direct answer to the question. - **excerpts** (array) - Relevant excerpts and sources from the documentation. ``` -------------------------------- ### Email Query Example Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/getuserbyemail.md Example of the GET request structure with an email address. ```http GET /api/ss/users/email/bruce.wayne@batman.com HTTP/1.1 ``` -------------------------------- ### GET /attackforge-enterprise/getting-started.md Source: https://support.attackforge.com/attackforge-enterprise/getting-started.md Queries the documentation for information by providing a specific question and an optional goal. ```APIDOC ## GET /attackforge-enterprise/getting-started.md ### Description Queries the documentation dynamically by asking a question. This is useful when information is not explicitly present in the current page or when clarification is needed. ### Method GET ### Endpoint https://support.attackforge.com/attackforge-enterprise/getting-started.md ### Parameters #### Query Parameters - **ask** (string) - Required - The specific, self-contained question written in natural language. - **goal** (string) - Optional - The broader end goal the user is trying to accomplish to help tailor the response. ### Response #### Success Response (200) - **answer** (string) - A direct answer to the question. - **excerpts** (array) - Relevant excerpts from the documentation. - **sources** (array) - Sources used to generate the answer. ``` -------------------------------- ### GET /release-notes/2023.md Source: https://support.attackforge.com/release-notes/2023.md Performs a dynamic query against the documentation page to retrieve answers and relevant excerpts based on a natural language question. ```APIDOC ## GET /release-notes/2023.md ### Description Queries the documentation page dynamically to retrieve an answer to a specific question, optionally tailored towards a broader end goal. ### Method GET ### Endpoint https://support.attackforge.com/release-notes/2023.md ### Parameters #### Query Parameters - **ask** (string) - Required - The specific, self-contained question to ask. - **goal** (string) - Optional - The broader end goal to help tailor the response. ### Response #### Success Response (200) - **answer** (string) - The direct answer to the question. - **excerpts** (array) - Relevant excerpts and sources from the documentation. ``` -------------------------------- ### GetUserGroups Query Example Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/getusergroups.md Example of the GET request structure with a specific user ID. ```http GET /api/ss/user/5d5b27734a83a708c46f4748/groups HTTP/1.1 ``` -------------------------------- ### Install and Build Java Client Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-events-api/getting-started.md Commands to navigate to the directory and build the Java client using Maven. ```bash $ cd ~/Documents/afe-ssapi-events-java-client ``` ```bash $ mvn clean compile assembly:single ``` -------------------------------- ### GetUserById Query Example Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/getuser.md Example of the GET request structure with a specific user ID. ```http GET /api/ss/users/5d5b27734a83a708c46f4748 HTTP/1.1 ``` -------------------------------- ### Path Parameter Examples Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/deleteprojectreportingfile.md Examples showing the structure of the project ID and file storage name in the URL path. ```http DELETE /api/ss/project/5f5ebf3b31ff1d08c1e5fa91/reporting/file/:file ``` ```http DELETE /api/ss/project/:projectId/reporting/file/o23kuixb8c34fm4gbehndpwzuemegvufjzc7jfkh5xlrmlswl4smfyslj65vuupcv5cc21hizhiiysa1bh5ibiwio17vzpzr63n6xtfh9yvzso4ete6qyh55ez5o6in1 HTTP/1.1 ``` -------------------------------- ### Query Parameter Example Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/getformconfig.md Example of the GET request structure specifying the vulnerability type. ```http GET /api/ss/config/form/vulnerability HTTP/1.1 ``` -------------------------------- ### Query Parameter Example Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/getuserprojects.md Example of the GET request line including a specific user ID. ```http GET /api/ss/user/5d5b27734a83a708c46f4748/projects HTTP/1.1 ``` -------------------------------- ### GetProjectNotes Query Example Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/getprojectnotes.md Example of the GET request structure using a specific project ID. ```http GET /api/ss/project/5f63de24fa1c9208d3e140b0/notes HTTP/1.1 ``` -------------------------------- ### Path Parameter Examples Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/deleteprojecttestcasefile.md Examples demonstrating the structure of the projectId, testcaseId, and file path parameters. ```text DELETE /api/ss/project/5f5ebf3b31ff1d08c1e5fa91/testcase/:testcaseId/file/:file ``` ```text DELETE /api/ss/project/:projectId/testcase/5f5ebf3b31ff1d08c1e5fa91/file/:file ``` ```text DELETE /api/ss/project/:projectId/testcase/:testcaseId/file/o23kuixb8c34fm4gbehndpwzuemegvufjzc7jfkh5xlrmlswl4smfyslj65vuupcv5cc21hizhiiysa1bh5ibiwio17vzpzr63n6xtfh9yvzso4ete6qyh55ez5o6in1 HTTP/1.1 ``` -------------------------------- ### Path Parameter Examples Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/deletevulnerabilitylibraryfile.md Examples showing the structure of the library ID and file storage name path parameters. ```http DELETE /api/ss/library/5f5ebf3b31ff1d08c1e5fa91/file/:file HTTP/1.1 ``` ```http DELETE /api/ss/library/:id/file/o23kuixb8c34fm4gbehndpwzuemegvufjzc7jfkh5xlrmlswl4smfyslj65vuupcv5cc21hizhiiysa1bh5ibiwio17vzpzr63n6xtfh9yvzso4ete6qyh55ez5o6in1 HTTP/1.1 ``` -------------------------------- ### Path Parameter Examples Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/patchtestsuitetestcasefile.md Examples showing how to structure the URL path with test suite, test case, and file identifiers. ```http PATCH /api/ss/testsuites/5f5ebf3b31ff1d08c1e5fa91/testcase/:testcaseId/file/:file ``` ```http PATCH /api/ss/testsuites/:testsuiteId/testcase/5f5ebf3b31ff1d08c1e5fa91/file/:file ``` ```http PATCH /api/ss/testsuites/:testsuiteId/testcase/:testcaseId/file/o23kuixb8c34fm4gbehndpwzuemegvufjzc7jfkh5xlrmlswl4smfyslj65vuupcv5cc21hizhiiysa1bh5ibiwio17vzpzr63n6xtfh9yvzso4ete6qyh55ez5o6in1 HTTP/1.1 ``` -------------------------------- ### GetGroup Query Examples Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/getgroup.md Examples of GET requests with various query parameters for filtering group data. ```http GET /api/ss/group/5eab99471e18050942c7607a HTTP/1.1 ``` ```http GET /api/ss/group/5eab99471e18050942c7607a?cf_key_allowlist=key1&cf_key_allowlist=key2 HTTP/1.1 ``` ```http GET /api/ss/group/5eab99471e18050942c7607a?cf_key_blocklist=key1&cf_key_blocklist=key2 HTTP/1.1 ``` -------------------------------- ### GetPortfolio Request Examples Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/getportfolio.md Examples of GET requests for retrieving portfolio data, including filtering options for custom fields. ```http GET /api/ss/portfolio/610647faf01ef1002fe97db9 HTTP/1.1 ``` ```http GET /api/ss/portfolio/610647faf01ef1002fe97db9?cf_key_allowlist=key1&cf_key_allowlist=key2 HTTP/1.1 ``` ```http GET /api/ss/portfolio/610647faf01ef1002fe97db9?cf_key_blocklist=key1&cf_key_blocklist=key2 HTTP/1.1 ``` -------------------------------- ### GET /attackforge-enterprise/getting-started/manage-user.md Source: https://support.attackforge.com/attackforge-enterprise/getting-started/manage-user.md Queries the documentation dynamically by providing a question and an optional goal. ```APIDOC ## GET /attackforge-enterprise/getting-started/manage-user.md ### Description Perform a query against the documentation to retrieve answers, excerpts, and sources based on a specific question. ### Method GET ### Endpoint https://support.attackforge.com/attackforge-enterprise/getting-started/manage-user.md ### Parameters #### Query Parameters - **ask** (string) - Required - The immediate question to ask. - **goal** (string) - Optional - The broader end goal to help tailor the response. ``` -------------------------------- ### Path Parameter Examples Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/downloadprojecttestcasenotefile.md Examples showing the structure of the URL path for projectId, testcaseNoteId, and fileName. ```http GET /api/ss/project/5f5ebf3b31ff1d08c1e5fa91/testcase-note/:testcaseNoteId/file/:fileName HTTP/1.1 ``` ```http GET /api/ss/project/:projectId/testcase-note/656158c0965172000f9119a8/file/:fileName HTTP/1.1 ``` ```http GET /api/ss/project/:projectId/testcase-note/:testcaseNoteId/file/o23kuixb8c34fm4gbehndpwzuemegvufjzc7jfkh5xlrmlswl4smfyslj65vuupcv5cc21hizhiiysa1bh5ibiwio17vzpzr63n6xtfh9yvzso4ete6qyh55ez5o6in1 HTTP/1.1 ``` -------------------------------- ### Query Parameter Examples Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/getprojectrequestbyid.md Examples showing how to request a project by ID and apply custom field filtering. ```http GET /api/ss/request/5e8017d2e1385f0c58e8f4f8 HTTP/1.1 ``` ```http GET /api/ss/request/5e8017d2e1385f0c58e8f4f8?cf_key_allowlist=key1&cf_key_allowlist=key2 HTTP/1.1 ``` ```http GET /api/ss/request/5e8017d2e1385f0c58e8f4f8?cf_key_blocklist=key1&cf_key_blocklist=key2 HTTP/1.1 ``` -------------------------------- ### Project Test Cases Request Examples Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/getprojecttestcases.md Examples of GET requests for retrieving project test cases with various query parameters. ```http GET /api/ss/project/5e64179c899bb708b55ea48c/testcases HTTP/1.1 ``` ```http GET /api/ss/project/5e64179c899bb708b55ea48c/testcases?status=Tested HTTP/1.1 ``` ```http GET /api/ss/project/5e64179c899bb708b55ea48c/testcases?project_testcase_cf_key_allowlist=key1&project_testcase_cf_key_allowlist=key2 HTTP/1.1 ``` ```http GET /api/ss/project/5e64179c899bb708b55ea48c/testcases?project_testcase_cf_key_blocklist=key1&project_testcase_cf_key_blocklist=key2 HTTP/1.1 ``` ```http GET /api/ss/project/5e64179c899bb708b55ea48c/testcases?testcase_cf_key_allowlist=key1&testcase_cf_key_allowlist=key2 HTTP/1.1 ``` ```http GET /api/ss/project/5e64179c899bb708b55ea48c/testcases?testcase_cf_key_blocklist=key1&testcase_cf_key_blocklist=key2 HTTP/1.1 ``` -------------------------------- ### Query Parameter Examples Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/downloadtestsuitetestcasefile.md Examples showing how to specify test suite, test case, and file identifiers in the request URL. ```http GET /api/ss/testsuites/5f63de24fa1c9208d3e140b0/testcase/:testcaseId/file/:file HTTP/1.1 ``` ```http GET /api/ss/testsuites/:testsuiteId/testcase/5e8017d2e1385f0c58e8f4f8/file/:file HTTP/1.1 ``` ```http GET /api/ss/testsuites/:testsuiteId/testcase/:testcaseId/file/o23kuixb8c34fm4gbehndpwzuemegvufjzc7jfkh5xlrmlswl4smfyslj65vuupcv5cc21hizhiiysa1bh5ibiwio17vzpzr63n6xtfh9yvzso4ete6qyh55ez5o6in1 HTTP/1.1 ``` -------------------------------- ### GET /attackforge-enterprise/getting-started/project-pages.md Source: https://support.attackforge.com/attackforge-enterprise/getting-started/project-pages.md Perform a query against the documentation to retrieve information or clarification regarding the content. ```APIDOC ## GET /attackforge-enterprise/getting-started/project-pages.md ### Description Perform an HTTP GET request on the documentation page URL to query for information. This allows AI agents or users to ask specific questions and provide context via a goal to receive tailored answers. ### Method GET ### Endpoint https://support.attackforge.com/attackforge-enterprise/getting-started/project-pages.md ### Parameters #### Query Parameters - **ask** (string) - Required - The immediate question to ask, written in natural language. - **goal** (string) - Optional - The broader end goal the user is trying to accomplish, used to tailor the response. ``` -------------------------------- ### GetProjectById Basic Request Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/getproject.md Example of a basic GET request to retrieve a project by its ID. ```http GET /api/ss/project/5e48c12ec0376309d73aad71 HTTP/1.1 ``` -------------------------------- ### Build Go Client Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-events-api/getting-started.md Commands to navigate to the directory and build the Go client. ```bash $ cd ~/Documents/afe-ssapi-events-go-client ``` ```bash $ go build ``` -------------------------------- ### Get Project Report JSON Response Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/getprojectreport.md Example of the JSON structure returned by the API, including CVSS scores, asset information, and custom fields. ```json { "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", "CVSSv3.1 Base Score: 9.8" ], "cvssv3_vector": "/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", "cvssv3_base_score": "9.8", "cvssv3_temporal_score": "NA", "cvssv3_environmental_score": "NA", "affected_assets": [ { "created": "2018-11-03T04:17:41.584Z", "modified": "2018-11-03T04:17:41.584Z", "asset": "batportal.attackforge.com", "id": "5bdd2165128aa82e0040a7ef", "proof_of_concept": "1. Do this... 2. Do that...", "proof_of_concept_raw": "...HTML...", "remediation_status": "Closed on 2018-11-03T04:17:41.584Z", "notes": [ { "note": "During testing, it was possible to ..." } ], "remediation_notes": [ { "note": "Issue Closed: Issue has been fixed", "created": "2018-11-03T04:17:41.584Z" }, { "note": "Attempted to upload ...", "created": "2018-11-03T04:17:41.584Z" } ], "assetCustomTags": [ { "Source": "Internal" }, { "Category": "Web App" } ], "assetCustomFields": [ { "af_sys_affected_endpoint": "https://bat-portal.attackforge.com" } ], "assetLibraryCustomFields": [ { "asset_owner": "Bruce Wayne" } ], "alternate_id": "WAYNETECH02-1", "tags": [ "cvss3_base_score:10.0", "cvss3_vector:CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H", "cvss_base_score:10.0", "cvss_score_rationale:Unsupported Software", "cvss_score_source:manual", "cvss_vector:CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C" ], "cvssv3_vector": "/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H", "cvssv3_base_score": "10.0", "cvssv3_temporal_score": "NA", "cvssv3_environmental_score": "NA", "testcases": [ { "created": "2022-05-24T04:01:55.765Z", "modified": "2022-05-24T04:01:55.765Z", "modifiedBy": "AttackForge Admin", "status": "Not Tested", "title": "001 New Test Case", "testcase_code": "001", "testsuite_name": "001 Test Suite", "abuse_case": "No" } ] } ], "remediation_status": "Closed", "evidence": [ { "fileName": "screenshot.png", "fileType": "image/png", "fileSizeKB": "8064", "fileBase64": "data:image/png;base64,iVBORw0..." } ], "vulnerabilityCustomTags": [ { "TLS_weakness": "True" }, { "PCI-related": "True" } ] } ``` -------------------------------- ### Project Report API Response JSON Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/getprojectreport.md Example of the JSON structure returned by the Get Project Report endpoint, detailing retesting rounds and vulnerability summaries. ```json "retesting_custom_round_name": "Retest Round 1", "retesting_custom_status_name": "Completed Retest for Bat Portal", "vulnerabilities": [ { "vulnerability": "Session Fixation", "vulnerability_id": "5bdd2508128aa82e0040a814" }, { "vulnerability": "Strict Transport Security Policy Not Enforced", "vulnerability_id": "5bdd276b128aa82e0040a832" } ], "vulnerabilitiesNotTested": [ { "vulnerability": "Inconsistent Access Control", "vulnerability_id": "5bdd22ec128aa82e0040a7fc" }, { "vulnerability": "Persistent Cross Site Scripting", "vulnerability_id": "5bdd232c128aa82e0040a7ff" }, { "vulnerability": "Cookie With Secure Flag Missing", "vulnerability_id": "5bdd2659128aa82e0040a826" }, { "vulnerability": "Cookie Without HTTPOnly Flag Set", "vulnerability_id": "5bdd268c128aa82e0040a829" } ] }, { "created": "2021-11-08T05:05:25.825Z", "retesting_round": 1, "retesting_round_status": "Requested", "retesting_round_actioned_by": "Robin", "retesting_custom_round_name": "Retest Round 1", "retesting_custom_status_name": "Requested Retest for Bat Portal", "vulnerabilities": [ { "vulnerability": "Inconsistent Access Control", "vulnerability_id": "5bdd22ec128aa82e0040a7fc" }, { "vulnerability": "Persistent Cross Site Scripting", "vulnerability_id": "5bdd232c128aa82e0040a7ff" }, { "vulnerability": "Session Fixation", "vulnerability_id": "5bdd2508128aa82e0040a814" }, { "vulnerability": "Cookie With Secure Flag Missing", "vulnerability_id": "5bdd2659128aa82e0040a826" }, { "vulnerability": "Cookie Without HTTPOnly Flag Set", "vulnerability_id": "5bdd268c128aa82e0040a829" }, { "vulnerability": "Strict Transport Security Policy Not Enforced", "vulnerability_id": "5bdd276b128aa82e0040a832" } ], "vulnerabilitiesNotTested": [] } ], "project_notes": [ { "created": "2020-06-18T22:48:42.937Z", "modified": "2020-06-18T22:50:33.990Z", "note": "Pentester was sick.", "note_raw": "...HTML...", "created_by": "Robin" } ] }, "vulnerabilities_summary": { "totalCriticalVulnerabilitiesAllAssets": 1, "totalHighVulnerabilitiesAllAssets": 7, "totalMediumVulnerabilitiesAllAssets": 6, "totalLowVulnerabilitiesAllAssets": 11, "totalInfoVulnerabilitiesAllAssets": 3, "critical": [ { "title": "Unrestricted Upload of File with Dangerous Type", "retest_status": "Fixed", "total_affected_assets": 1, "total_affected_assets_fixed": 1, "total_affected_assets_retesting": 0, "total_affected_assets_not_fixed": 0 } ], "high": [ { "title": "Inconsistent Access Control", "retest_status": "Fixed", "total_affected_assets": 1, "total_affected_assets_fixed": 1, "total_affected_assets_retesting": 0, "total_affected_assets_not_fixed": 0 } ], "medium": [ { "title": "Reflected Cross Site Scripting", "retest_status": "Fixed", "total_affected_assets": 1, "total_affected_assets_fixed": 1, "total_affected_assets_retesting": 0, "total_affected_assets_not_fixed": 0 } ], "low": [ { "title": "Server Discloses Supporting Technology", ``` -------------------------------- ### Project Report API Response JSON Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/getprojectreport.md Example of the JSON structure returned by the Get Project Report endpoint, containing vulnerability, asset, and test case data. ```json { "created": "2018-11-03T04:17:41.584Z" } ], "assetCustomTags": [ { "Source": "Internal" }, { "Category": "Web App" } ], "assetCustomFields": [ { "af_sys_affected_endpoint": "https://bat-portal.attackforge.com" } ], "assetLibraryCustomFields": [ { "asset_owner": "Bruce Wayne" } ], "alternate_id": "WAYNETECH02-1", "tags": [ "cvss3_base_score:10.0", "cvss3_vector:CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H", "cvss_base_score:10.0", "cvss_score_rationale:Unsupported Software", "cvss_score_source:manual", "cvss_vector:CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C" ], "cvssv3_vector": "/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H", "cvssv3_base_score": "10.0", "cvssv3_temporal_score": "NA", "cvssv3_environmental_score": "NA", "testcases": [ { "created": "2022-05-24T04:01:55.765Z", "modified": "2022-05-24T04:01:55.765Z", "modifiedBy": "AttackForge Admin", "status": "Not Tested", "title": "001 New Test Case", "testcase_code": "001", "testsuite_name": "001 Test Suite", "abuse_case": "No" } ] } ], "remediation_status": "Closed", "evidence": [ { "fileName": "screenshot.png", "fileType": "image/png", "fileSizeKB": "8064", "fileBase64": "data:image/png;base64,iVBORw0..." } ], "vulnerabilityCustomTags": [ { "TLS_weakness": "True" }, { "PCI-related": "True" } ] } ], "appendix_overview": true, "appendix_severity": true, "testcases": [ { "created": "2018-11-03T04:17:41.584Z", "modified": "2018-11-03T04:17:41.584Z", "modifiedBy": "Robin", "title": "Verify all pages and resources by default require ...", "status": "Tested", "testsuite_name": "Standard Web App Penetration Testing", "tags": [ "OWASP ASVS v2.1" ], "notes": [ { "note": "There was no function discovered to change user password.", "modified": "2018-11-03T04:17:41.584Z", "modifiedBy": "Robin" } ], "evidence": [ { "fileName": "screenshot.png", "fileType": "image/png", "fileSizeKB": "8064", "fileBase64": "data:image/png;base64,iVBORw0..." } ], "is_failed": "Yes", "is_remediated": "Yes", "remediation_status": "Remediated", "linked_vulnerabilities": [ { "id": "5ad737feccb39f330a8ef00d", "title": "Unrestricted Upload of File with Dangerous Type", "priority": "Critical", "zero_day": false, "easily_exploitable": true, "likelihood_of_exploitation": 10, "severity": 1, "sla": "2022-02-10T01:14:34.975Z", "release_date": "2022-02-03T01:14:38.433Z", "target_remediation_date": "2022-02-10T06:32:39.435Z", "description": "An unrestricted upload of ...", "attack_scenario": "Arbitrary code execution is ...", "remediation_recommendation": "Assume all input is ...", "tags": [ "CWE-434: Unrestricted Upload of File with Dangerous Type" ``` -------------------------------- ### GET /attackforge-enterprise/modules/self-service-events-api/getting-started.md Source: https://support.attackforge.com/attackforge-enterprise/modules/self-service-events-api/getting-started.md Queries the documentation dynamically by providing a specific question and an optional goal to receive a tailored response. ```APIDOC ## GET /attackforge-enterprise/modules/self-service-events-api/getting-started.md ### Description Perform an HTTP GET request on the current page URL to query the documentation dynamically. This allows for retrieving answers, excerpts, and sources when information is not explicitly present in the page. ### Method GET ### Endpoint https://support.attackforge.com/attackforge-enterprise/modules/self-service-events-api/getting-started.md ### Parameters #### Query Parameters - **ask** (string) - Required - The immediate question to ask, written in natural language. - **goal** (string) - Optional - Describes the broader end goal to help tailor the response. ```