From 8865e097b4982a4cd6b16e1106338f7bb308cc92 Mon Sep 17 00:00:00 2001 From: Brian Ruf Date: Wed, 28 Aug 2024 16:56:05 -0400 Subject: [PATCH 01/17] Removed unusused definitions, Changed DocID to ContentUUID --- OSCALRestOpenAPI.json | 457 ++++++++++++------------------------------ 1 file changed, 123 insertions(+), 334 deletions(-) diff --git a/OSCALRestOpenAPI.json b/OSCALRestOpenAPI.json index b35991d..7f29b87 100644 --- a/OSCALRestOpenAPI.json +++ b/OSCALRestOpenAPI.json @@ -1,5 +1,5 @@ { - "openapi": "3.1.0", + "openapi": "3.0.1", "info": { "title": "OSCAL REST", "description": "This is an open-source REST API specification for exchanging [OSCAL](https://pages.nist.gov/OSCAL/) content between tools and organizations.\n\nThe _OSCAL REST OpenAPI Specification_ addresses OSCAL XML, JSON and YAML content for all seven OSCAL models. Each OSCAL model has a primary set of REST API methods and endpoints for the OSCAL content itself, as well as methods and endpoints for snapshots and attachments. OSCAL profiles also have methods and endpoints for live profile resolution and snapshots of resolved profiles.\n\nFor an overview and more information, visit [https://docs.oscal.io/docs/oscal-rest-openapi](https://docs.oscal.io/docs/oscal-rest-openapi)\n\n---\n\n**Known-Issue: OSCAL XML Representation**\n\nThere is a [known-issue](https://github.com/OAI/OpenAPI-Specification/issues/630) that prevents proper expression of OSCAL XML in OpenAPI.\n\nWhen the specification calls for OSCAL content to be accepted or returned, the content must be fully OSCAL valid. Even if the specification shows a non-compliant schema or example.", @@ -26,6 +26,7 @@ "tags": [ { "name": "OSCAL Catalog", + "description": "Information about the OSCAL Catalog Model.", "externalDocs": { "description": "Find out more", "url": "https://pages.nist.gov/OSCAL/concepts/layer/control/catalog/" @@ -33,6 +34,7 @@ }, { "name": "OSCAL Profile", + "description": "Information about the OSCAL Profile Model.", "externalDocs": { "description": "Find out more", "url": "https://pages.nist.gov/OSCAL/concepts/layer/control/profile/" @@ -40,6 +42,7 @@ }, { "name": "OSCAL System Security Plan", + "description": "Information about the OSCAL SSP Model.", "externalDocs": { "description": "Find out more", "url": "https://pages.nist.gov/OSCAL/concepts/layer/implementation/ssp/" @@ -47,6 +50,7 @@ }, { "name": "OSCAL Component Definition", + "description": "Information about the OSCAL Component Definition Model.", "externalDocs": { "description": "Find out more", "url": "https://pages.nist.gov/OSCAL/concepts/layer/implementation/component-definition/" @@ -54,6 +58,7 @@ }, { "name": "OSCAL Plan of Action and Milestones", + "description": "Information about the OSCAL POA&M Model.", "externalDocs": { "description": "Find out more", "url": "https://pages.nist.gov/OSCAL/concepts/layer/assessment/poam/" @@ -61,6 +66,7 @@ }, { "name": "OSCAL Assessment Plan", + "description": "Information about the OSCAL Assessment Plan Model.", "externalDocs": { "description": "Find out more", "url": "https://pages.nist.gov/OSCAL/concepts/layer/assessment/assessment-plan/" @@ -68,6 +74,7 @@ }, { "name": "OSCAL Assessment Results", + "description": "Information about the OSCAL Assessment Results Model.", "externalDocs": { "description": "Find out more", "url": "https://pages.nist.gov/OSCAL/concepts/layer/assessment/assessment-results/" @@ -298,7 +305,7 @@ "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -396,7 +403,7 @@ "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -529,7 +536,7 @@ "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -613,7 +620,7 @@ "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -701,7 +708,7 @@ "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -822,7 +829,7 @@ "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -940,7 +947,7 @@ "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -1061,7 +1068,7 @@ "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -1154,7 +1161,7 @@ "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -1251,7 +1258,7 @@ "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -1383,7 +1390,7 @@ "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -1471,7 +1478,7 @@ "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -1601,7 +1608,7 @@ "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -1717,7 +1724,7 @@ "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -1847,7 +1854,7 @@ "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -2148,7 +2155,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -2246,7 +2253,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -2379,7 +2386,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -2463,7 +2470,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -2563,7 +2570,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -2651,7 +2658,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -2772,7 +2779,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -2890,7 +2897,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -3011,7 +3018,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -3104,7 +3111,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -3201,7 +3208,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -3333,7 +3340,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -3421,7 +3428,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -3551,7 +3558,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -3658,7 +3665,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -3788,7 +3795,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -3881,7 +3888,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -3969,7 +3976,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -4099,7 +4106,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -4206,7 +4213,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -4336,7 +4343,7 @@ "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -4637,7 +4644,7 @@ "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -4735,7 +4742,7 @@ "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -4868,7 +4875,7 @@ "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -4952,7 +4959,7 @@ "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -5040,7 +5047,7 @@ "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -5161,7 +5168,7 @@ "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -5279,7 +5286,7 @@ "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -5400,7 +5407,7 @@ "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -5493,7 +5500,7 @@ "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -5590,7 +5597,7 @@ "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -5722,7 +5729,7 @@ "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -5810,7 +5817,7 @@ "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -5940,7 +5947,7 @@ "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -6047,7 +6054,7 @@ "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -6177,7 +6184,7 @@ "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -6478,7 +6485,7 @@ "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -6576,7 +6583,7 @@ "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -6709,7 +6716,7 @@ "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -6793,7 +6800,7 @@ "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -6881,7 +6888,7 @@ "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -7002,7 +7009,7 @@ "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -7120,7 +7127,7 @@ "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -7241,7 +7248,7 @@ "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -7334,7 +7341,7 @@ "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -7431,7 +7438,7 @@ "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -7563,7 +7570,7 @@ "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -7651,7 +7658,7 @@ "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -7781,7 +7788,7 @@ "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -7888,7 +7895,7 @@ "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -8018,7 +8025,7 @@ "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -8319,7 +8326,7 @@ "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -8417,7 +8424,7 @@ "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -8550,7 +8557,7 @@ "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -8634,7 +8641,7 @@ "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -8722,7 +8729,7 @@ "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -8843,7 +8850,7 @@ "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -8961,7 +8968,7 @@ "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -9082,7 +9089,7 @@ "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -9175,7 +9182,7 @@ "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -9272,7 +9279,7 @@ "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -9404,7 +9411,7 @@ "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -9492,7 +9499,7 @@ "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -9622,7 +9629,7 @@ "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -9729,7 +9736,7 @@ "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -9859,7 +9866,7 @@ "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -10160,7 +10167,7 @@ "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -10258,7 +10265,7 @@ "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -10391,7 +10398,7 @@ "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -10475,7 +10482,7 @@ "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -10563,7 +10570,7 @@ "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -10684,7 +10691,7 @@ "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -10802,7 +10809,7 @@ "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -10923,7 +10930,7 @@ "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -11016,7 +11023,7 @@ "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -11113,7 +11120,7 @@ "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -11245,7 +11252,7 @@ "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -11333,7 +11340,7 @@ "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -11463,7 +11470,7 @@ "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -11570,7 +11577,7 @@ "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -11700,7 +11707,7 @@ "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -12001,7 +12008,7 @@ "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -12099,7 +12106,7 @@ "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -12232,7 +12239,7 @@ "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -12316,7 +12323,7 @@ "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -12404,7 +12411,7 @@ "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -12525,7 +12532,7 @@ "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -12643,7 +12650,7 @@ "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -12764,7 +12771,7 @@ "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -12857,7 +12864,7 @@ "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -12954,7 +12961,7 @@ "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -13086,7 +13093,7 @@ "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -13174,7 +13181,7 @@ "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -13304,7 +13311,7 @@ "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -13411,7 +13418,7 @@ "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -13541,7 +13548,7 @@ "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/DocId" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -13766,15 +13773,6 @@ } } }, - "OSCALProfileEntryXML": { - "type": "array", - "items": { - "$ref": "#/components/schemas/OSCALModelEntry" - }, - "xml": { - "name": "profile-list" - } - }, "OSCALCatalogEntry": { "type": "object", "properties": { @@ -13786,15 +13784,6 @@ } } }, - "OSCALCatalogEntryXML": { - "type": "array", - "items": { - "$ref": "#/components/schemas/OSCALModelEntry" - }, - "xml": { - "name": "catalog-list" - } - }, "OSCALSystemSecurityPlanEntry": { "type": "object", "properties": { @@ -13806,15 +13795,6 @@ } } }, - "OSCALSystemSecurityPlanEntryXML": { - "type": "array", - "items": { - "$ref": "#/components/schemas/OSCALModelEntry" - }, - "xml": { - "name": "system-security-plan-list" - } - }, "OSCALComponentDefinitionEntry": { "type": "object", "properties": { @@ -13826,15 +13806,6 @@ } } }, - "OSCALComponentDefinitionEntryXML": { - "type": "array", - "items": { - "$ref": "#/components/schemas/OSCALModelEntry" - }, - "xml": { - "name": "component-definition-list" - } - }, "OSCALAssessmentPlanEntry": { "type": "object", "properties": { @@ -13846,15 +13817,6 @@ } } }, - "OSCALAssessmentPlanEntryXML": { - "type": "array", - "items": { - "$ref": "#/components/schemas/OSCALModelEntry" - }, - "xml": { - "name": "assessment-plan-list" - } - }, "OSCALAssessmentResultsEntry": { "type": "object", "properties": { @@ -13866,15 +13828,6 @@ } } }, - "OSCALAssessmentResultsEntryXML": { - "type": "array", - "items": { - "$ref": "#/components/schemas/OSCALModelEntry" - }, - "xml": { - "name": "assessment-results-list" - } - }, "OSCALPlanOfActionAndMilestonesEntry": { "type": "object", "properties": { @@ -13886,15 +13839,6 @@ } } }, - "OSCALPlanOfActionAndMilestonesEntryXML": { - "type": "array", - "items": { - "$ref": "#/components/schemas/OSCALModelEntry" - }, - "xml": { - "name": "plan-of-action-and-milestones-list" - } - }, "OSCALProfilesEntries": { "type": "object", "properties": { @@ -13983,15 +13927,6 @@ } } }, - "OSCALResolvedSnapshotsSnapshotsXML": { - "type": "array", - "items": { - "$ref": "#/components/schemas/OSCALModelSnapshotEntry" - }, - "xml": { - "name": "resolved-snapshot-list" - } - }, "OSCALCatalogsSnapshots": { "type": "object", "properties": { @@ -14003,23 +13938,6 @@ } } }, - "OSCALCatalogsSnapshotsXML": { - "type": "array", - "items": { - "$ref": "#/components/schemas/OSCALModelSnapshotEntry" - }, - "xml": { - "name": "catalog-snapshot-list" - } - }, - "OSCALCatalogSnapshot": { - "type": "object", - "properties": { - "catalog-snapshot": { - "$ref": "#/components/schemas/OSCALModelSnapshotEntry" - } - } - }, "OSCALProfilesSnapshots": { "type": "object", "properties": { @@ -14031,23 +13949,6 @@ } } }, - "OSCALProfilesSnapshotsXML": { - "type": "array", - "items": { - "$ref": "#/components/schemas/OSCALModelSnapshotEntry" - }, - "xml": { - "name": "profile-snapshot-list" - } - }, - "OSCALProfileSnapshot": { - "type": "object", - "properties": { - "profile-snapshot": { - "$ref": "#/components/schemas/OSCALModelSnapshotEntry" - } - } - }, "OSCALSystemSecurityPlansSnapshots": { "type": "object", "properties": { @@ -14059,15 +13960,6 @@ } } }, - "OSCALSystemSecurityPlansSnapshotsXML": { - "type": "array", - "items": { - "$ref": "#/components/schemas/OSCALModelSnapshotEntry" - }, - "xml": { - "name": "system-security-plan-snapshot-list" - } - }, "OSCALAttachmentNoBase64": { "type": "object", "properties": { @@ -14290,29 +14182,6 @@ "OSCALAttachment": { "$ref": "#/components/schemas/OSCALResource" }, - "OSCALAttachment64": { - "type": "object", - "properties": { - "file": { - "properties": { - "resource-uuid": { - "type": "string", - "pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-4[0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$" - }, - "name": { - "type": "string" - }, - "media-type": { - "type": "string" - }, - "attachment-binary": { - "type": "string", - "format": "binary" - } - } - } - } - }, "OSCALModelSnapshotEntry": { "type": "object", "properties": { @@ -14352,10 +14221,6 @@ }, "remarks": { "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_catalog_schema.json#/definitions/field_oscal-metadata_remarks" - }, - "snapshot": { - "type": "object", - "ref$" : "#components/schemas/OSCALSnapshotAttributes" } } }, @@ -14427,14 +14292,6 @@ } } }, - "OSCALSystemSecurityPlanSnapshot": { - "type": "object", - "properties": { - "system-security-plan-snapshot": { - "$ref": "#/components/schemas/OSCALModelSnapshotEntry" - } - } - }, "OSCALAssessmentPlansSnapshots": { "type": "object", "properties": { @@ -14446,23 +14303,6 @@ } } }, - "OSCALAssessmentPlanSnapshot": { - "type": "object", - "properties": { - "assessment-snapshot": { - "$ref": "#/components/schemas/OSCALModelSnapshotEntry" - } - } - }, - "OSCALAssessmentPlansSnapshotsXML": { - "type": "array", - "items": { - "$ref": "#/components/schemas/OSCALModelSnapshotEntry" - }, - "xml": { - "name": "assessment-plan-snapshot-list" - } - }, "OSCALComponentDefinitionsSnapshots": { "type": "object", "properties": { @@ -14474,23 +14314,6 @@ } } }, - "OSCALComponentDefinitionsSnapshotsXML": { - "type": "array", - "items": { - "$ref": "#/components/schemas/OSCALModelSnapshotEntry" - }, - "xml": { - "name": "component-definition-snapshot-list" - } - }, - "OSCALComponentDefinitionSnapshot": { - "type": "object", - "properties": { - "component-definition-snapshot": { - "$ref": "#/components/schemas/OSCALModelSnapshotEntry" - } - } - }, "OSCALAssessmentResultsListSnapshots": { "type": "object", "properties": { @@ -14502,23 +14325,6 @@ } } }, - "OSCALAssessmentResultsListSnapshotsXML": { - "type": "array", - "items": { - "$ref": "#/components/schemas/OSCALModelSnapshotEntry" - }, - "xml": { - "name": "assessment-results-snapshot-list" - } - }, - "OSCALAssessmentResultsSnapshot": { - "type": "object", - "properties": { - "assessment-results-snapshot": { - "$ref": "#/components/schemas/OSCALModelSnapshotEntry" - } - } - }, "OSCALPlanOfActionAndMilestonesListSnapshots": { "type": "object", "properties": { @@ -14530,34 +14336,17 @@ } } }, - "OSCALPlanOfActionAndMilestonesListSnapshotsXML": { - "type": "array", - "items": { - "$ref": "#/components/schemas/OSCALModelSnapshotEntry" - }, - "xml": { - "name": "plan-of-action-and-milestones-list" - } - }, - "OSCALPlanOfActionAndMilestonesSnapshot": { - "type": "object", - "properties": { - "plan-of-action-and-milestones-snapshot": { - "$ref": "#/components/schemas/OSCALModelSnapshotEntry" - } - } - }, "Token": { "type": "string", "minLength": 1, "maxLength": 72, "pattern": "^(\\p{Ll}|_)(\\p{L}|\\p{N}|[.\\-_])*$" }, - "DocId": { + "ContentUUID": { "type": "string", - "minLength": 1, - "maxLength": 72, - "pattern": "^(\\p{Ll}|_)(\\p{L}|\\p{N}|[.\\-_])*$" + "minLength": 36, + "maxLength": 36, + "pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[45][0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$" } }, "securitySchemes": { From 561c534c65344d082c0c9d967f6a85d277175ca4 Mon Sep 17 00:00:00 2001 From: Brian Ruf Date: Tue, 3 Sep 2024 11:35:43 -0400 Subject: [PATCH 02/17] additional cleanup. OpenAPI version number and document version number --- OSCALRestOpenAPI.json | 549 +++++++++++++++++++++--------------------- 1 file changed, 270 insertions(+), 279 deletions(-) diff --git a/OSCALRestOpenAPI.json b/OSCALRestOpenAPI.json index 7f29b87..a018143 100644 --- a/OSCALRestOpenAPI.json +++ b/OSCALRestOpenAPI.json @@ -1,5 +1,5 @@ { - "openapi": "3.0.1", + "openapi": "3.0.0", "info": { "title": "OSCAL REST", "description": "This is an open-source REST API specification for exchanging [OSCAL](https://pages.nist.gov/OSCAL/) content between tools and organizations.\n\nThe _OSCAL REST OpenAPI Specification_ addresses OSCAL XML, JSON and YAML content for all seven OSCAL models. Each OSCAL model has a primary set of REST API methods and endpoints for the OSCAL content itself, as well as methods and endpoints for snapshots and attachments. OSCAL profiles also have methods and endpoints for live profile resolution and snapshots of resolved profiles.\n\nFor an overview and more information, visit [https://docs.oscal.io/docs/oscal-rest-openapi](https://docs.oscal.io/docs/oscal-rest-openapi)\n\n---\n\n**Known-Issue: OSCAL XML Representation**\n\nThere is a [known-issue](https://github.com/OAI/OpenAPI-Specification/issues/630) that prevents proper expression of OSCAL XML in OpenAPI.\n\nWhen the specification calls for OSCAL content to be accepted or returned, the content must be fully OSCAL valid. Even if the specification shows a non-compliant schema or example.", @@ -12,7 +12,7 @@ "name" : "Creative Commons Attribution Share Alike 4.0 International", "url" : "https://github.com/EasyDynamics/oscal-rest/blob/develop/LICENSE" }, - "version": "1.0.0" + "version": "1.0.1" }, "externalDocs": { "description": "Find out more about OSCAL", @@ -290,7 +290,7 @@ ] } }, - "/assessment-plan/{assessmentPlanID}": { + "/assessment-plan/{ExternalUUID}": { "get": { "tags": [ "OSCAL Assessment Plan" @@ -300,12 +300,12 @@ "operationId": "getAssessmentPlanById", "parameters": [ { - "name": "assessmentPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -398,12 +398,12 @@ "operationId": "putAssessmentPlan", "parameters": [ { - "name": "assessmentPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -531,12 +531,12 @@ "operationId": "deleteAssessmentPlan", "parameters": [ { - "name": "assessmentPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -605,7 +605,7 @@ ] } }, - "/assessment-plan/{assessmentPlanID}/attachment": { + "/assessment-plan/{ExternalUUID}/attachment": { "get": { "tags": [ "OSCAL Assessment Plan" @@ -615,12 +615,12 @@ "operationId": "getAssessmentPlanAttachment", "parameters": [ { - "name": "assessmentPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -703,12 +703,12 @@ "operationId": "postAssessmentPlanAttachment", "parameters": [ { - "name": "assessmentPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -814,7 +814,7 @@ ] } }, - "/assessment-plan/{assessmentPlanID}/attachment/{resourceUUID}": { + "/assessment-plan/{ExternalUUID}/attachment/{resourceUUID}": { "get": { "tags": [ "OSCAL Assessment Plan" @@ -824,12 +824,12 @@ "operationId": "getAssessmentPlanAttachmentByUuid", "parameters": [ { - "name": "assessmentPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -942,12 +942,12 @@ "operationId": "putAssessmentPlanAttachment", "parameters": [ { - "name": "assessmentPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -1063,12 +1063,12 @@ "operationId": "deleteAssessmentPlanAttachment", "parameters": [ { - "name": "assessmentPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -1146,7 +1146,7 @@ ] } }, - "/assessment-plan/{assessmentPlanID}/attachment/{resourceUUID}/resource": { + "/assessment-plan/{ExternalUUID}/attachment/{resourceUUID}/resource": { "get": { "tags": [ "OSCAL Assessment Plan" @@ -1156,12 +1156,12 @@ "operationId": "getAssessmentPlanAttachmentResourceBy", "parameters": [ { - "name": "assessmentPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -1253,12 +1253,12 @@ "operationId": "putAssessmentPlanAttachmentResource", "parameters": [ { - "name": "assessmentPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -1375,7 +1375,7 @@ ] } }, - "/assessment-plan/{assessmentPlanID}/snapshot": { + "/assessment-plan/{ExternalUUID}/snapshot": { "get": { "tags": [ "OSCAL Assessment Plan" @@ -1385,12 +1385,12 @@ "operationId": "getAssessmentPlanSnapshot", "parameters": [ { - "name": "assessmentPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -1473,12 +1473,12 @@ "operationId": "postAssessmentPlanSnapshot", "parameters": [ { - "name": "assessmentPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -1593,7 +1593,7 @@ ] } }, - "/assessment-plan/{assessmentPlanID}/snapshot/{snapshotID}": { + "/assessment-plan/{ExternalUUID}/snapshot/{snapshotID}": { "get": { "tags": [ "OSCAL Assessment Plan" @@ -1603,12 +1603,12 @@ "operationId": "getAssessmentPlanSnapshotById", "parameters": [ { - "name": "assessmentPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -1693,15 +1693,6 @@ } } }, - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/OSCALSnapshotAttributes" - } - } - } - }, "security": [ { "oscal_auth": [ @@ -1719,12 +1710,12 @@ "operationId": "putAssessmentPlanSnapshot", "parameters": [ { - "name": "assessmentPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -1849,12 +1840,12 @@ "operationId": "deleteAssessmentPlanSnapshot", "parameters": [ { - "name": "assessmentPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -2140,7 +2131,7 @@ ] } }, - "/profile/{profileID}": { + "/profile/{ExternalUUID}": { "get": { "tags": [ "OSCAL Profile" @@ -2150,12 +2141,12 @@ "operationId": "getProfileById", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -2248,12 +2239,12 @@ "operationId": "putProfile", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -2381,12 +2372,12 @@ "operationId": "deleteProfile", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -2455,7 +2446,7 @@ ] } }, - "/profile/{profileID}/resolved-catalog": { + "/profile/{ExternalUUID}/resolved-catalog": { "get": { "tags": [ "OSCAL Profile" @@ -2465,12 +2456,12 @@ "operationId": "getProfileResolvedCatalogBy", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -2555,7 +2546,7 @@ ] } }, - "/profile/{profileID}/attachment": { + "/profile/{ExternalUUID}/attachment": { "get": { "tags": [ "OSCAL Profile" @@ -2565,12 +2556,12 @@ "operationId": "getProfileAttachment", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -2653,12 +2644,12 @@ "operationId": "postProfileAttachment", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -2764,7 +2755,7 @@ ] } }, - "/profile/{profileID}/attachment/{resourceUUID}": { + "/profile/{ExternalUUID}/attachment/{resourceUUID}": { "get": { "tags": [ "OSCAL Profile" @@ -2774,12 +2765,12 @@ "operationId": "getProfileAttachmentByUuid", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -2892,12 +2883,12 @@ "operationId": "putProfileAttachment", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -3013,12 +3004,12 @@ "operationId": "deleteProfileAttachment", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -3096,7 +3087,7 @@ ] } }, - "/profile/{profileID}/attachment/{resourceUUID}/resource": { + "/profile/{ExternalUUID}/attachment/{resourceUUID}/resource": { "get": { "tags": [ "OSCAL Profile" @@ -3106,12 +3097,12 @@ "operationId": "getProfileAttachmentResourceBy", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -3203,12 +3194,12 @@ "operationId": "putProfileAttachmentResource", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -3325,7 +3316,7 @@ ] } }, - "/profile/{profileID}/snapshot": { + "/profile/{ExternalUUID}/snapshot": { "get": { "tags": [ "OSCAL Profile" @@ -3335,12 +3326,12 @@ "operationId": "getProfileSnapshot", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -3423,12 +3414,12 @@ "operationId": "postProfileSnapshot", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -3543,7 +3534,7 @@ ] } }, - "/profile/{profileID}/snapshot/{snapshotID}": { + "/profile/{ExternalUUID}/snapshot/{snapshotID}": { "get": { "tags": [ "OSCAL Profile" @@ -3553,12 +3544,12 @@ "operationId": "getProfileSnapshotById", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -3660,12 +3651,12 @@ "operationId": "putProfileSnapshot", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -3790,12 +3781,12 @@ "operationId": "deleteProfileSnapshot", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -3873,7 +3864,7 @@ ] } }, - "/profile/{profileID}/resolved-snapshot": { + "/profile/{ExternalUUID}/resolved-snapshot": { "get": { "tags": [ "OSCAL Profile" @@ -3883,12 +3874,12 @@ "operationId": "getProfileResolvedSnapshot", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -3971,12 +3962,12 @@ "operationId": "postProfileResolvedSnapshot", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -4091,7 +4082,7 @@ ] } }, - "/profile/{profileID}/resolved-snapshot/{resolvedSnapshotID}": { + "/profile/{ExternalUUID}/resolved-snapshot/{resolvedSnapshotID}": { "get": { "tags": [ "OSCAL Profile" @@ -4101,12 +4092,12 @@ "operationId": "getProfileResolvedSnapshotById", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -4208,12 +4199,12 @@ "operationId": "putProfileResolvedSnapshot", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -4338,12 +4329,12 @@ "operationId": "deleteProfileResolvedSnapshot", "parameters": [ { - "name": "profileID", + "name": "ExternalUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -4629,7 +4620,7 @@ ] } }, - "/assessment-results/{assessmentResultsID}": { + "/assessment-results/{ExternalUUID}": { "get": { "tags": [ "OSCAL Assessment Results" @@ -4639,12 +4630,12 @@ "operationId": "getAssessmentResultsById", "parameters": [ { - "name": "assessmentResultsID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -4737,12 +4728,12 @@ "operationId": "putAssessmentResults", "parameters": [ { - "name": "assessmentResultsID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -4870,12 +4861,12 @@ "operationId": "deleteAssessmentResults", "parameters": [ { - "name": "assessmentResultsID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -4944,7 +4935,7 @@ ] } }, - "/assessment-results/{assessmentResultsID}/attachment": { + "/assessment-results/{ExternalUUID}/attachment": { "get": { "tags": [ "OSCAL Assessment Results" @@ -4954,12 +4945,12 @@ "operationId": "getAssessmentResultsAttachment", "parameters": [ { - "name": "assessmentResultsID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -5042,12 +5033,12 @@ "operationId": "postAssessmentResultsAttachment", "parameters": [ { - "name": "assessmentResultsID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -5153,7 +5144,7 @@ ] } }, - "/assessment-results/{assessmentResultsID}/attachment/{resourceUUID}": { + "/assessment-results/{ExternalUUID}/attachment/{resourceUUID}": { "get": { "tags": [ "OSCAL Assessment Results" @@ -5163,12 +5154,12 @@ "operationId": "getAssessmentResultsAttachmentByUuid", "parameters": [ { - "name": "assessmentResultsID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -5281,12 +5272,12 @@ "operationId": "putAssessmentResultsAttachment", "parameters": [ { - "name": "assessmentResultsID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -5402,12 +5393,12 @@ "operationId": "deleteAssessmentResultsAttachment", "parameters": [ { - "name": "assessmentResultsID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -5485,7 +5476,7 @@ ] } }, - "/assessment-results/{assessmentResultsID}/attachment/{resourceUUID}/resource": { + "/assessment-results/{ExternalUUID}/attachment/{resourceUUID}/resource": { "get": { "tags": [ "OSCAL Assessment Results" @@ -5495,12 +5486,12 @@ "operationId": "getAssessmentResultsAttachmentResourceBy", "parameters": [ { - "name": "assessmentResultsID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -5592,12 +5583,12 @@ "operationId": "putAssessmentResultsAttachmentResource", "parameters": [ { - "name": "assessmentResultsID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -5714,7 +5705,7 @@ ] } }, - "/assessment-results/{assessmentResultsID}/snapshot": { + "/assessment-results/{ExternalUUID}/snapshot": { "get": { "tags": [ "OSCAL Assessment Results" @@ -5724,12 +5715,12 @@ "operationId": "getAssessmentResultsSnapshot", "parameters": [ { - "name": "assessmentResultsID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -5812,12 +5803,12 @@ "operationId": "postAssessmentResultsSnapshot", "parameters": [ { - "name": "assessmentResultsID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -5932,7 +5923,7 @@ ] } }, - "/assessment-results/{assessmentResultsID}/snapshot/{snapshotID}": { + "/assessment-results/{ExternalUUID}/snapshot/{snapshotID}": { "get": { "tags": [ "OSCAL Assessment Results" @@ -5942,12 +5933,12 @@ "operationId": "getAssessmentResultsSnapshotById", "parameters": [ { - "name": "assessmentResultsID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -6049,12 +6040,12 @@ "operationId": "putAssessmentResultsSnapshot", "parameters": [ { - "name": "assessmentResultsID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -6179,12 +6170,12 @@ "operationId": "deleteAssessmentResultsSnapshot", "parameters": [ { - "name": "assessmentResultsID", + "name": "ExternalUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -6470,7 +6461,7 @@ ] } }, - "/catalog/{catalogID}": { + "/catalog/{ExternalUUID}": { "get": { "tags": [ "OSCAL Catalog" @@ -6480,12 +6471,12 @@ "operationId": "getCatalogById", "parameters": [ { - "name": "catalogID", + "name": "ExternalUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -6578,12 +6569,12 @@ "operationId": "putCatalog", "parameters": [ { - "name": "catalogID", + "name": "ExternalUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -6711,12 +6702,12 @@ "operationId": "deleteCatalog", "parameters": [ { - "name": "catalogID", + "name": "ExternalUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -6785,7 +6776,7 @@ ] } }, - "/catalog/{catalogID}/attachment": { + "/catalog/{ExternalUUID}/attachment": { "get": { "tags": [ "OSCAL Catalog" @@ -6795,12 +6786,12 @@ "operationId": "getCatalogAttachment", "parameters": [ { - "name": "catalogID", + "name": "ExternalUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -6883,12 +6874,12 @@ "operationId": "postCatalogAttachment", "parameters": [ { - "name": "catalogID", + "name": "ExternalUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -6994,7 +6985,7 @@ ] } }, - "/catalog/{catalogID}/attachment/{resourceUUID}": { + "/catalog/{ExternalUUID}/attachment/{resourceUUID}": { "get": { "tags": [ "OSCAL Catalog" @@ -7004,12 +6995,12 @@ "operationId": "getCatalogAttachmentByUuid", "parameters": [ { - "name": "catalogID", + "name": "ExternalUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -7122,12 +7113,12 @@ "operationId": "putCatalogAttachment", "parameters": [ { - "name": "catalogID", + "name": "ExternalUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -7243,12 +7234,12 @@ "operationId": "deleteCatalogAttachment", "parameters": [ { - "name": "catalogID", + "name": "ExternalUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -7326,7 +7317,7 @@ ] } }, - "/catalog/{catalogID}/attachment/{resourceUUID}/resource": { + "/catalog/{ExternalUUID}/attachment/{resourceUUID}/resource": { "get": { "tags": [ "OSCAL Catalog" @@ -7336,12 +7327,12 @@ "operationId": "getCatalogAttachmentResourceBy", "parameters": [ { - "name": "catalogID", + "name": "ExternalUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -7433,12 +7424,12 @@ "operationId": "putCatalogAttachmentResource", "parameters": [ { - "name": "catalogID", + "name": "ExternalUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -7555,7 +7546,7 @@ ] } }, - "/catalog/{catalogID}/snapshot": { + "/catalog/{ExternalUUID}/snapshot": { "get": { "tags": [ "OSCAL Catalog" @@ -7565,12 +7556,12 @@ "operationId": "getCatalogSnapshot", "parameters": [ { - "name": "catalogID", + "name": "ExternalUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -7653,12 +7644,12 @@ "operationId": "postCatalogSnapshot", "parameters": [ { - "name": "catalogID", + "name": "ExternalUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -7773,7 +7764,7 @@ ] } }, - "/catalog/{catalogID}/snapshot/{snapshotID}": { + "/catalog/{ExternalUUID}/snapshot/{snapshotID}": { "get": { "tags": [ "OSCAL Catalog" @@ -7783,12 +7774,12 @@ "operationId": "getCatalogSnapshotById", "parameters": [ { - "name": "catalogID", + "name": "ExternalUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -7890,12 +7881,12 @@ "operationId": "putCatalogSnapshot", "parameters": [ { - "name": "catalogID", + "name": "ExternalUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -8020,12 +8011,12 @@ "operationId": "deleteCatalogSnapshot", "parameters": [ { - "name": "catalogID", + "name": "ExternalUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -8311,7 +8302,7 @@ ] } }, - "/system-security-plan/{systemSecurityPlanID}": { + "/system-security-plan/{ExternalUUID}": { "get": { "tags": [ "OSCAL System Security Plan" @@ -8321,12 +8312,12 @@ "operationId": "getSystemSecurityPlanById", "parameters": [ { - "name": "systemSecurityPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -8419,12 +8410,12 @@ "operationId": "putSystemSecurityPlan", "parameters": [ { - "name": "systemSecurityPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -8552,12 +8543,12 @@ "operationId": "deleteSystemSecurityPlan", "parameters": [ { - "name": "systemSecurityPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -8626,7 +8617,7 @@ ] } }, - "/system-security-plan/{systemSecurityPlanID}/attachment": { + "/system-security-plan/{ExternalUUID}/attachment": { "get": { "tags": [ "OSCAL System Security Plan" @@ -8636,12 +8627,12 @@ "operationId": "getSystemSecurityPlanAttachment", "parameters": [ { - "name": "systemSecurityPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -8724,12 +8715,12 @@ "operationId": "postSystemSecurityPlanAttachment", "parameters": [ { - "name": "systemSecurityPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -8835,7 +8826,7 @@ ] } }, - "/system-security-plan/{systemSecurityPlanID}/attachment/{resourceUUID}": { + "/system-security-plan/{ExternalUUID}/attachment/{resourceUUID}": { "get": { "tags": [ "OSCAL System Security Plan" @@ -8845,12 +8836,12 @@ "operationId": "getSystemSecurityPlanAttachmentByUuid", "parameters": [ { - "name": "systemSecurityPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -8963,12 +8954,12 @@ "operationId": "putSystemSecurityPlanAttachment", "parameters": [ { - "name": "systemSecurityPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -9084,12 +9075,12 @@ "operationId": "deleteSystemSecurityPlanAttachment", "parameters": [ { - "name": "systemSecurityPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -9167,7 +9158,7 @@ ] } }, - "/system-security-plan/{systemSecurityPlanID}/attachment/{resourceUUID}/resource": { + "/system-security-plan/{ExternalUUID}/attachment/{resourceUUID}/resource": { "get": { "tags": [ "OSCAL System Security Plan" @@ -9177,12 +9168,12 @@ "operationId": "getSystemSecurityPlanAttachmentResourceBy", "parameters": [ { - "name": "systemSecurityPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -9274,12 +9265,12 @@ "operationId": "putSystemSecurityPlanAttachmentResource", "parameters": [ { - "name": "systemSecurityPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -9396,7 +9387,7 @@ ] } }, - "/system-security-plan/{systemSecurityPlanID}/snapshot": { + "/system-security-plan/{ExternalUUID}/snapshot": { "get": { "tags": [ "OSCAL System Security Plan" @@ -9406,12 +9397,12 @@ "operationId": "getSystemSecurityPlanSnapshot", "parameters": [ { - "name": "systemSecurityPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -9494,12 +9485,12 @@ "operationId": "postSystemSecurityPlanSnapshot", "parameters": [ { - "name": "systemSecurityPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -9614,7 +9605,7 @@ ] } }, - "/system-security-plan/{systemSecurityPlanID}/snapshot/{snapshotID}": { + "/system-security-plan/{ExternalUUID}/snapshot/{snapshotID}": { "get": { "tags": [ "OSCAL System Security Plan" @@ -9624,12 +9615,12 @@ "operationId": "getSystemSecurityPlanSnapshotById", "parameters": [ { - "name": "systemSecurityPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -9731,12 +9722,12 @@ "operationId": "putSystemSecurityPlanSnapshot", "parameters": [ { - "name": "systemSecurityPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -9861,12 +9852,12 @@ "operationId": "deleteSystemSecurityPlanSnapshot", "parameters": [ { - "name": "systemSecurityPlanID", + "name": "ExternalUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -10152,7 +10143,7 @@ ] } }, - "/plan-of-action-and-milestones/{planOfActionAndMilestonesID}": { + "/plan-of-action-and-milestones/{ExternalUUID}": { "get": { "tags": [ "OSCAL Plan of Action and Milestones" @@ -10162,12 +10153,12 @@ "operationId": "getPlanOfActionAndMilestonesById", "parameters": [ { - "name": "planOfActionAndMilestonesID", + "name": "ExternalUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -10260,12 +10251,12 @@ "operationId": "putPlanOfActionAndMilestones", "parameters": [ { - "name": "planOfActionAndMilestonesID", + "name": "ExternalUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -10393,12 +10384,12 @@ "operationId": "deletePlanOfActionAndMilestones", "parameters": [ { - "name": "planOfActionAndMilestonesID", + "name": "ExternalUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -10467,7 +10458,7 @@ ] } }, - "/plan-of-action-and-milestones/{planOfActionAndMilestonesID}/attachment": { + "/plan-of-action-and-milestones/{ExternalUUID}/attachment": { "get": { "tags": [ "OSCAL Plan of Action and Milestones" @@ -10477,12 +10468,12 @@ "operationId": "getPlanOfActionAndMilestonesAttachment", "parameters": [ { - "name": "planOfActionAndMilestonesID", + "name": "ExternalUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -10565,12 +10556,12 @@ "operationId": "postPlanOfActionAndMilestonesAttachment", "parameters": [ { - "name": "planOfActionAndMilestonesID", + "name": "ExternalUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -10676,7 +10667,7 @@ ] } }, - "/plan-of-action-and-milestones/{planOfActionAndMilestonesID}/attachment/{resourceUUID}": { + "/plan-of-action-and-milestones/{ExternalUUID}/attachment/{resourceUUID}": { "get": { "tags": [ "OSCAL Plan of Action and Milestones" @@ -10686,12 +10677,12 @@ "operationId": "getPlanOfActionAndMilestonesAttachmentByUuid", "parameters": [ { - "name": "planOfActionAndMilestonesID", + "name": "ExternalUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -10804,12 +10795,12 @@ "operationId": "putPlanOfActionAndMilestonesAttachment", "parameters": [ { - "name": "planOfActionAndMilestonesID", + "name": "ExternalUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -10925,12 +10916,12 @@ "operationId": "deletePlanOfActionAndMilestonesAttachment", "parameters": [ { - "name": "planOfActionAndMilestonesID", + "name": "ExternalUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -11008,7 +10999,7 @@ ] } }, - "/plan-of-action-and-milestones/{planOfActionAndMilestonesID}/attachment/{resourceUUID}/resource": { + "/plan-of-action-and-milestones/{ExternalUUID}/attachment/{resourceUUID}/resource": { "get": { "tags": [ "OSCAL Plan of Action and Milestones" @@ -11018,12 +11009,12 @@ "operationId": "getPlanOfActionAndMilestonesAttachmentResourceBy", "parameters": [ { - "name": "planOfActionAndMilestonesID", + "name": "ExternalUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -11115,12 +11106,12 @@ "operationId": "putPlanOfActionAndMilestonesAttachmentResource", "parameters": [ { - "name": "planOfActionAndMilestonesID", + "name": "ExternalUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -11237,7 +11228,7 @@ ] } }, - "/plan-of-action-and-milestones/{planOfActionAndMilestonesID}/snapshot": { + "/plan-of-action-and-milestones/{ExternalUUID}/snapshot": { "get": { "tags": [ "OSCAL Plan of Action and Milestones" @@ -11247,12 +11238,12 @@ "operationId": "getPlanOfActionAndMilestonesSnapshot", "parameters": [ { - "name": "planOfActionAndMilestonesID", + "name": "ExternalUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -11335,12 +11326,12 @@ "operationId": "postPlanOfActionAndMilestonesSnapshot", "parameters": [ { - "name": "planOfActionAndMilestonesID", + "name": "ExternalUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -11455,7 +11446,7 @@ ] } }, - "/plan-of-action-and-milestones/{planOfActionAndMilestonesID}/snapshot/{snapshotID}": { + "/plan-of-action-and-milestones/{ExternalUUID}/snapshot/{snapshotID}": { "get": { "tags": [ "OSCAL Plan of Action and Milestones" @@ -11465,12 +11456,12 @@ "operationId": "getPlanOfActionAndMilestonesSnapshotById", "parameters": [ { - "name": "planOfActionAndMilestonesID", + "name": "ExternalUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -11572,12 +11563,12 @@ "operationId": "putPlanOfActionAndMilestonesSnapshot", "parameters": [ { - "name": "planOfActionAndMilestonesID", + "name": "ExternalUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -11702,12 +11693,12 @@ "operationId": "deletePlanOfActionAndMilestonesSnapshot", "parameters": [ { - "name": "planOfActionAndMilestonesID", + "name": "ExternalUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -11993,7 +11984,7 @@ ] } }, - "/component-definition/{componentDefinitionID}": { + "/component-definition/{ExternalUUID}": { "get": { "tags": [ "OSCAL Component Definition" @@ -12003,12 +11994,12 @@ "operationId": "getComponentDefinitionById", "parameters": [ { - "name": "componentDefinitionID", + "name": "ExternalUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -12101,12 +12092,12 @@ "operationId": "putComponentDefinition", "parameters": [ { - "name": "componentDefinitionID", + "name": "ExternalUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -12234,12 +12225,12 @@ "operationId": "deleteComponentDefinition", "parameters": [ { - "name": "componentDefinitionID", + "name": "ExternalUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -12308,7 +12299,7 @@ ] } }, - "/component-definition/{componentDefinitionID}/attachment": { + "/component-definition/{ExternalUUID}/attachment": { "get": { "tags": [ "OSCAL Component Definition" @@ -12318,12 +12309,12 @@ "operationId": "getComponentDefinitionAttachment", "parameters": [ { - "name": "componentDefinitionID", + "name": "ExternalUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -12406,12 +12397,12 @@ "operationId": "postComponentDefinitionAttachment", "parameters": [ { - "name": "componentDefinitionID", + "name": "ExternalUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -12517,7 +12508,7 @@ ] } }, - "/component-definition/{componentDefinitionID}/attachment/{resourceUUID}": { + "/component-definition/{ExternalUUID}/attachment/{resourceUUID}": { "get": { "tags": [ "OSCAL Component Definition" @@ -12527,12 +12518,12 @@ "operationId": "getComponentDefinitionAttachmentByUuid", "parameters": [ { - "name": "componentDefinitionID", + "name": "ExternalUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -12645,12 +12636,12 @@ "operationId": "putComponentDefinitionAttachment", "parameters": [ { - "name": "componentDefinitionID", + "name": "ExternalUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -12766,12 +12757,12 @@ "operationId": "deleteComponentDefinitionAttachment", "parameters": [ { - "name": "componentDefinitionID", + "name": "ExternalUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -12849,7 +12840,7 @@ ] } }, - "/component-definition/{componentDefinitionID}/attachment/{resourceUUID}/resource": { + "/component-definition/{ExternalUUID}/attachment/{resourceUUID}/resource": { "get": { "tags": [ "OSCAL Component Definition" @@ -12859,12 +12850,12 @@ "operationId": "getComponentDefinitionAttachmentResourceBy", "parameters": [ { - "name": "componentDefinitionID", + "name": "ExternalUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -12956,12 +12947,12 @@ "operationId": "putComponentDefinitionAttachmentResource", "parameters": [ { - "name": "componentDefinitionID", + "name": "ExternalUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -13078,7 +13069,7 @@ ] } }, - "/component-definition/{componentDefinitionID}/snapshot": { + "/component-definition/{ExternalUUID}/snapshot": { "get": { "tags": [ "OSCAL Component Definition" @@ -13088,12 +13079,12 @@ "operationId": "getComponentDefinitionSnapshot", "parameters": [ { - "name": "componentDefinitionID", + "name": "ExternalUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -13176,12 +13167,12 @@ "operationId": "postComponentDefinitionSnapshot", "parameters": [ { - "name": "componentDefinitionID", + "name": "ExternalUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } } ], @@ -13296,7 +13287,7 @@ ] } }, - "/component-definition/{componentDefinitionID}/snapshot/{snapshotID}": { + "/component-definition/{ExternalUUID}/snapshot/{snapshotID}": { "get": { "tags": [ "OSCAL Component Definition" @@ -13306,12 +13297,12 @@ "operationId": "getComponentDefinitionSnapshotById", "parameters": [ { - "name": "componentDefinitionID", + "name": "ExternalUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -13413,12 +13404,12 @@ "operationId": "putComponentDefinitionSnapshot", "parameters": [ { - "name": "componentDefinitionID", + "name": "ExternalUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -13543,12 +13534,12 @@ "operationId": "deleteComponentDefinitionSnapshot", "parameters": [ { - "name": "componentDefinitionID", + "name": "ExternalUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/ExternalUUID" } }, { @@ -14342,7 +14333,7 @@ "maxLength": 72, "pattern": "^(\\p{Ll}|_)(\\p{L}|\\p{N}|[.\\-_])*$" }, - "ContentUUID": { + "ExternalUUID": { "type": "string", "minLength": 36, "maxLength": 36, From a16efe6fc68ed01726f233941764915b9bb58d39 Mon Sep 17 00:00:00 2001 From: Brian Ruf Date: Tue, 3 Sep 2024 11:56:43 -0400 Subject: [PATCH 03/17] revised tag names due to space constraints. Removed erroneous construct in GET /assessment-plan/{ContentUUID}/snapshot/{SnapshotID} --- OSCALRestOpenAPI.json | 828 +++++++++++++++++++++--------------------- 1 file changed, 414 insertions(+), 414 deletions(-) diff --git a/OSCALRestOpenAPI.json b/OSCALRestOpenAPI.json index a018143..3e910f3 100644 --- a/OSCALRestOpenAPI.json +++ b/OSCALRestOpenAPI.json @@ -25,58 +25,58 @@ ], "tags": [ { - "name": "OSCAL Catalog", - "description": "Information about the OSCAL Catalog Model.", + "name": "Catalog", + "description": "OSCAL Catalog Methods and Endpoints.", "externalDocs": { - "description": "Find out more", + "description": "OSCAL Catalog Model", "url": "https://pages.nist.gov/OSCAL/concepts/layer/control/catalog/" } }, { - "name": "OSCAL Profile", - "description": "Information about the OSCAL Profile Model.", + "name": "Profile", + "description": "OSCAL Profile Methods and Endpoints.", "externalDocs": { - "description": "Find out more", + "description": "OSCAL Profile Model", "url": "https://pages.nist.gov/OSCAL/concepts/layer/control/profile/" } }, { - "name": "OSCAL System Security Plan", - "description": "Information about the OSCAL SSP Model.", + "name": "System Security Plan", + "description": "OSCAL SSP Methods and Endpoints.", "externalDocs": { - "description": "Find out more", + "description": "OSCAL SSP Model", "url": "https://pages.nist.gov/OSCAL/concepts/layer/implementation/ssp/" } }, { - "name": "OSCAL Component Definition", - "description": "Information about the OSCAL Component Definition Model.", + "name": "Component Definition", + "description": "OSCAL cDef Methods and Endpoints.", "externalDocs": { - "description": "Find out more", + "description": "OSCAL cDef Model", "url": "https://pages.nist.gov/OSCAL/concepts/layer/implementation/component-definition/" } }, { - "name": "OSCAL Plan of Action and Milestones", - "description": "Information about the OSCAL POA&M Model.", + "name": "Plan of Action and Milestones", + "description": "OSCAL POA&M Methods and Endpoints.", "externalDocs": { - "description": "Find out more", + "description": "OSCAL POA&M Model", "url": "https://pages.nist.gov/OSCAL/concepts/layer/assessment/poam/" } }, { - "name": "OSCAL Assessment Plan", - "description": "Information about the OSCAL Assessment Plan Model.", + "name": "Assessment Plan", + "description": "OSCAL Assessment Plan Methods and Endpoints.", "externalDocs": { - "description": "Find out more", + "description": "OSCAL AP Model", "url": "https://pages.nist.gov/OSCAL/concepts/layer/assessment/assessment-plan/" } }, { - "name": "OSCAL Assessment Results", - "description": "Information about the OSCAL Assessment Results Model.", + "name": "Assessment Results", + "description": "OSCAL Assessment Results Methods and Endpoints.", "externalDocs": { - "description": "Find out more", + "description": "OSCAL AR Model", "url": "https://pages.nist.gov/OSCAL/concepts/layer/assessment/assessment-results/" } } @@ -85,7 +85,7 @@ "/assessment-plan": { "get": { "tags": [ - "OSCAL Assessment Plan" + "Assessment Plan" ], "summary": "Returns a list of every relevant assessment plan.", "description": "Returns a list of every relevant assessment plan.", @@ -162,7 +162,7 @@ }, "post": { "tags": [ - "OSCAL Assessment Plan" + "Assessment Plan" ], "summary": "Adds a new assessment plan.", "description": "Adds a new assessment plan.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", @@ -290,22 +290,22 @@ ] } }, - "/assessment-plan/{ExternalUUID}": { + "/assessment-plan/{ContentUUID}": { "get": { "tags": [ - "OSCAL Assessment Plan" + "Assessment Plan" ], "summary": "Returns the assessment plan represented by the assessment plan ID.", "description": "Returns the assessment plan represented by the assessment plan ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getAssessmentPlanById", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -391,19 +391,19 @@ }, "put": { "tags": [ - "OSCAL Assessment Plan" + "Assessment Plan" ], "summary": "Replaces the assessment plan represented by the assessment plan ID.", "description": "Replaces the assessment plan represented by the assessment plan ID.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", "operationId": "putAssessmentPlan", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -524,19 +524,19 @@ }, "delete": { "tags": [ - "OSCAL Assessment Plan" + "Assessment Plan" ], "summary": "Deletes the assessment plan represented by the assessment plan ID.", "description": "Deletes the assessment plan represented by the assessment plan ID.", "operationId": "deleteAssessmentPlan", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -605,22 +605,22 @@ ] } }, - "/assessment-plan/{ExternalUUID}/attachment": { + "/assessment-plan/{ContentUUID}/attachment": { "get": { "tags": [ - "OSCAL Assessment Plan" + "Assessment Plan" ], "summary": "Returns a list of every relevant attachment.", "description": "Returns a list of every relevant attachment.", "operationId": "getAssessmentPlanAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -696,19 +696,19 @@ }, "post": { "tags": [ - "OSCAL Assessment Plan" + "Assessment Plan" ], "summary": "Adds a new attachment and returns the UUID of the resource.", "description": "Adds a new attachment and creates a new back-matter resource in the OSCAL file. The UUID of the resource is returned.", "operationId": "postAssessmentPlanAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -814,22 +814,22 @@ ] } }, - "/assessment-plan/{ExternalUUID}/attachment/{resourceUUID}": { + "/assessment-plan/{ContentUUID}/attachment/{resourceUUID}": { "get": { "tags": [ - "OSCAL Assessment Plan" + "Assessment Plan" ], "summary": "Returns the attachment represented by the back-matter resource UUID.", "description": "Returns the attachment represented by the back-matter resource UUID.", "operationId": "getAssessmentPlanAttachmentByUuid", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -935,19 +935,19 @@ }, "put": { "tags": [ - "OSCAL Assessment Plan" + "Assessment Plan" ], "summary": "Replaces the attachment represented by the resource UUID.", "description": "Replaces the attachment represented by the resource UUID.", "operationId": "putAssessmentPlanAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -1056,19 +1056,19 @@ }, "delete": { "tags": [ - "OSCAL Assessment Plan" + "Assessment Plan" ], "summary": "Deletes the attachment and associated resource.", "description": "Deletes the attachment and the associated back-matter resource represented by the resource UUID.", "operationId": "deleteAssessmentPlanAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -1146,22 +1146,22 @@ ] } }, - "/assessment-plan/{ExternalUUID}/attachment/{resourceUUID}/resource": { + "/assessment-plan/{ContentUUID}/attachment/{resourceUUID}/resource": { "get": { "tags": [ - "OSCAL Assessment Plan" + "Assessment Plan" ], "summary": "Retrieves the OSCAL back-matter / resource information.", "description": "Retrieves the content of the back-matter resource represented by the resource UUID, consistent with the NIST OSCAL syntax for back-matter resource assemblies.", "operationId": "getAssessmentPlanAttachmentResourceBy", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -1246,19 +1246,19 @@ }, "put": { "tags": [ - "OSCAL Assessment Plan" + "Assessment Plan" ], "summary": "Updates the content of the back-matter resource.", "description": "Updates the content of the back-matter resource represented by the resource UUID, consistent with the NIST OSCAL syntax for back-matter resource assemblies.", "operationId": "putAssessmentPlanAttachmentResource", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -1375,22 +1375,22 @@ ] } }, - "/assessment-plan/{ExternalUUID}/snapshot": { + "/assessment-plan/{ContentUUID}/snapshot": { "get": { "tags": [ - "OSCAL Assessment Plan" + "Assessment Plan" ], "summary": "Returns a list of every relevant snapshot.", "description": "Returns a list of every relevant snapshot.", "operationId": "getAssessmentPlanSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -1466,19 +1466,19 @@ }, "post": { "tags": [ - "OSCAL Assessment Plan" + "Assessment Plan" ], "summary": "Creates a snapshot of the file in its current state.", "description": "Creates a snapshot of the file in its current state. The implementation _must_ assign and track a unique identifier for the snapshot, by which the snapshot may be referenced later. The implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "postAssessmentPlanSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -1593,22 +1593,22 @@ ] } }, - "/assessment-plan/{ExternalUUID}/snapshot/{snapshotID}": { + "/assessment-plan/{ContentUUID}/snapshot/{snapshotID}": { "get": { "tags": [ - "OSCAL Assessment Plan" + "Assessment Plan" ], "summary": "Returns the snapshot represented by the snapshot ID.", "description": "Returns the snapshot represented by the snapshot ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getAssessmentPlanSnapshotById", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -1703,19 +1703,19 @@ }, "put": { "tags": [ - "OSCAL Assessment Plan" + "Assessment Plan" ], "summary": "Modifies the snapshot description, types and labels.", "description": "Modifies the snapshot description, as well as the snapshot type and label tags. The implementation _must_ ensure the `snapshot-created` property is immutable. The following properties may be added, changed, or removed by this method.\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (Value is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "putAssessmentPlanSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -1833,19 +1833,19 @@ }, "delete": { "tags": [ - "OSCAL Assessment Plan" + "Assessment Plan" ], "summary": "Deletes the snapshot represented by the snapshot ID.", "description": "Deletes the snapshot represented by the snapshot ID.", "operationId": "deleteAssessmentPlanSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -1926,7 +1926,7 @@ "/profile": { "get": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Returns a list of every relevant profile.", "description": "Returns a list of every relevant profile.", @@ -2003,7 +2003,7 @@ }, "post": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Adds a new profile.", "description": "Adds a new profile.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", @@ -2131,22 +2131,22 @@ ] } }, - "/profile/{ExternalUUID}": { + "/profile/{ContentUUID}": { "get": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Returns the profile represented by the profile ID.", "description": "Returns the profile represented by the profile ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getProfileById", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -2232,19 +2232,19 @@ }, "put": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Replaces the profile represented by the profile ID.", "description": "Replaces the profile represented by the profile ID.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", "operationId": "putProfile", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -2365,19 +2365,19 @@ }, "delete": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Deletes the profile represented by the profile ID.", "description": "Deletes the profile represented by the profile ID.", "operationId": "deleteProfile", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -2446,22 +2446,22 @@ ] } }, - "/profile/{ExternalUUID}/resolved-catalog": { + "/profile/{ContentUUID}/resolved-catalog": { "get": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Resolves the identified profile based on currently available sources and returns a resolved profile catalog.", "description": "Resolves the identified profile based on currently available sources and returns a resolved profile catalog.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getProfileResolvedCatalogBy", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -2546,22 +2546,22 @@ ] } }, - "/profile/{ExternalUUID}/attachment": { + "/profile/{ContentUUID}/attachment": { "get": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Returns a list of every relevant attachment.", "description": "Returns a list of every relevant attachment.", "operationId": "getProfileAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -2637,19 +2637,19 @@ }, "post": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Adds a new attachment and returns the UUID of the resource.", "description": "Adds a new attachment and creates a new back-matter resource in the OSCAL file. The UUID of the resource is returned.", "operationId": "postProfileAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -2755,22 +2755,22 @@ ] } }, - "/profile/{ExternalUUID}/attachment/{resourceUUID}": { + "/profile/{ContentUUID}/attachment/{resourceUUID}": { "get": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Returns the attachment represented by the back-matter resource UUID.", "description": "Returns the attachment represented by the back-matter resource UUID.", "operationId": "getProfileAttachmentByUuid", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -2876,19 +2876,19 @@ }, "put": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Replaces the attachment represented by the resource UUID.", "description": "Replaces the attachment represented by the resource UUID.", "operationId": "putProfileAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -2997,19 +2997,19 @@ }, "delete": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Deletes the attachment and associated resource.", "description": "Deletes the attachment and the associated back-matter resource represented by the resource UUID.", "operationId": "deleteProfileAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -3087,22 +3087,22 @@ ] } }, - "/profile/{ExternalUUID}/attachment/{resourceUUID}/resource": { + "/profile/{ContentUUID}/attachment/{resourceUUID}/resource": { "get": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Retrieves the OSCAL back-matter / resource information.", "description": "Retrieves the content of the back-matter resource represented by the resource UUID, consistent with the NIST OSCAL syntax for back-matter resource assemblies.", "operationId": "getProfileAttachmentResourceBy", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -3187,19 +3187,19 @@ }, "put": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Updates the content of the back-matter resource.", "description": "Updates the content of the back-matter resource represented by the resource UUID, consistent with the NIST OSCAL syntax for back-matter resource assemblies.", "operationId": "putProfileAttachmentResource", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -3316,22 +3316,22 @@ ] } }, - "/profile/{ExternalUUID}/snapshot": { + "/profile/{ContentUUID}/snapshot": { "get": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Returns a list of every relevant snapshot.", "description": "Returns a list of every relevant snapshot.", "operationId": "getProfileSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -3407,19 +3407,19 @@ }, "post": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Creates a snapshot of the file in its current state.", "description": "Creates a snapshot of the file in its current state. The implementation _must_ assign and track a unique identifier for the snapshot, by which the snapshot may be referenced later. The implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "postProfileSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -3534,22 +3534,22 @@ ] } }, - "/profile/{ExternalUUID}/snapshot/{snapshotID}": { + "/profile/{ContentUUID}/snapshot/{snapshotID}": { "get": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Returns the snapshot represented by the snapshot ID.", "description": "Returns the snapshot represented by the snapshot ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getProfileSnapshotById", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -3644,19 +3644,19 @@ }, "put": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Modifies the snapshot description, types and labels.", "description": "Modifies the snapshot description, as well as the snapshot type and label tags. The implementation _must_ ensure the `snapshot-created` property is immutable. The following properties may be added, changed, or removed by this method.\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (Value is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "putProfileSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -3774,19 +3774,19 @@ }, "delete": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Deletes the snapshot represented by the snapshot ID.", "description": "Deletes the snapshot represented by the snapshot ID.", "operationId": "deleteProfileSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -3864,22 +3864,22 @@ ] } }, - "/profile/{ExternalUUID}/resolved-snapshot": { + "/profile/{ContentUUID}/resolved-snapshot": { "get": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Returns a list of every relevant resolved profile catalog.", "description": "Returns a list of every relevant resolved profile catalog.", "operationId": "getProfileResolvedSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -3955,19 +3955,19 @@ }, "post": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Resolves the profile and saves the result.", "description": "Processes the profile and creates a snapshot as a resolved profile catalog. The implementation _must_ assign and track a unique identifier for the snapshot, by which the snapshot may be referenced later. The implementation _must_ add the `snapshot-created` property and a `snapshot-type` set to `resolved-profile` in the OSCAL document's `metadata` as follows:\n\n - **Resolved Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Resolved Snapshot Type** Property [**1 or more**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"resolved-profile\"`\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation implementation _may_ set a `snapshot-description` property, as well as `snapshot-label` and additional `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Resolved Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional resolved snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Resolved Snapshot Type** Property [**1 or more**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"resolved-profile\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "postProfileResolvedSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -4082,22 +4082,22 @@ ] } }, - "/profile/{ExternalUUID}/resolved-snapshot/{resolvedSnapshotID}": { + "/profile/{ContentUUID}/resolved-snapshot/{resolvedSnapshotID}": { "get": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Returns the resolved profile catalog represented by the resolved profile catalog ID.", "description": "Returns the resolved profile catalog represented by the resolved profile catalog ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getProfileResolvedSnapshotById", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -4192,19 +4192,19 @@ }, "put": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Modifies the snapshot description, types and label.", "description": "Modifies the snapshot description, as well as the snapshot type and label tags. The implementation _must_ ensure the `snapshot-created` property is immutable. The following properties may be added, changed, or removed by this method.\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (Value is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "putProfileResolvedSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -4322,19 +4322,19 @@ }, "delete": { "tags": [ - "OSCAL Profile" + "Profile" ], "summary": "Deletes the resolved snapshot represented by the resolved snapshot ID.", "description": "Deletes the resolved snapshot represented by the resolved snapshot ID.", "operationId": "deleteProfileResolvedSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -4415,7 +4415,7 @@ "/assessment-results": { "get": { "tags": [ - "OSCAL Assessment Results" + "Assessment Results" ], "summary": "Returns a list of every relevant assessment results.", "description": "Returns a list of every relevant assessment results.", @@ -4492,7 +4492,7 @@ }, "post": { "tags": [ - "OSCAL Assessment Results" + "Assessment Results" ], "summary": "Adds a new assessment results.", "description": "Adds a new assessment results.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", @@ -4620,22 +4620,22 @@ ] } }, - "/assessment-results/{ExternalUUID}": { + "/assessment-results/{ContentUUID}": { "get": { "tags": [ - "OSCAL Assessment Results" + "Assessment Results" ], "summary": "Returns the assessment results represented by the assessment results ID.", "description": "Returns the assessment results represented by the assessment results ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getAssessmentResultsById", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -4721,19 +4721,19 @@ }, "put": { "tags": [ - "OSCAL Assessment Results" + "Assessment Results" ], "summary": "Replaces the assessment results represented by the assessment results ID.", "description": "Replaces the assessment results represented by the assessment results ID.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", "operationId": "putAssessmentResults", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -4854,19 +4854,19 @@ }, "delete": { "tags": [ - "OSCAL Assessment Results" + "Assessment Results" ], "summary": "Deletes the assessment results represented by the assessment results ID.", "description": "Deletes the assessment results represented by the assessment results ID.", "operationId": "deleteAssessmentResults", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -4935,22 +4935,22 @@ ] } }, - "/assessment-results/{ExternalUUID}/attachment": { + "/assessment-results/{ContentUUID}/attachment": { "get": { "tags": [ - "OSCAL Assessment Results" + "Assessment Results" ], "summary": "Returns a list of every relevant attachment.", "description": "Returns a list of every relevant attachment.", "operationId": "getAssessmentResultsAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -5026,19 +5026,19 @@ }, "post": { "tags": [ - "OSCAL Assessment Results" + "Assessment Results" ], "summary": "Adds a new attachment and returns the UUID of the resource.", "description": "Adds a new attachment and creates a new back-matter resource in the OSCAL file. The UUID of the resource is returned.", "operationId": "postAssessmentResultsAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -5144,22 +5144,22 @@ ] } }, - "/assessment-results/{ExternalUUID}/attachment/{resourceUUID}": { + "/assessment-results/{ContentUUID}/attachment/{resourceUUID}": { "get": { "tags": [ - "OSCAL Assessment Results" + "Assessment Results" ], "summary": "Returns the attachment represented by the back-matter resource UUID.", "description": "Returns the attachment represented by the back-matter resource UUID.", "operationId": "getAssessmentResultsAttachmentByUuid", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -5265,19 +5265,19 @@ }, "put": { "tags": [ - "OSCAL Assessment Results" + "Assessment Results" ], "summary": "Replaces the attachment represented by the resource UUID.", "description": "Replaces the attachment represented by the resource UUID.", "operationId": "putAssessmentResultsAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -5386,19 +5386,19 @@ }, "delete": { "tags": [ - "OSCAL Assessment Results" + "Assessment Results" ], "summary": "Deletes the attachment and associated resource.", "description": "Deletes the attachment and the associated back-matter resource represented by the resource UUID.", "operationId": "deleteAssessmentResultsAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -5476,22 +5476,22 @@ ] } }, - "/assessment-results/{ExternalUUID}/attachment/{resourceUUID}/resource": { + "/assessment-results/{ContentUUID}/attachment/{resourceUUID}/resource": { "get": { "tags": [ - "OSCAL Assessment Results" + "Assessment Results" ], "summary": "Retrieves the OSCAL back-matter / resource information.", "description": "Retrieves the content of the back-matter resource represented by the resource UUID, consistent with the NIST OSCAL syntax for back-matter resource assemblies.", "operationId": "getAssessmentResultsAttachmentResourceBy", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -5576,19 +5576,19 @@ }, "put": { "tags": [ - "OSCAL Assessment Results" + "Assessment Results" ], "summary": "Updates the content of the back-matter resource.", "description": "Updates the content of the back-matter resource represented by the resource UUID, consistent with the NIST OSCAL syntax for back-matter resource assemblies.", "operationId": "putAssessmentResultsAttachmentResource", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -5705,22 +5705,22 @@ ] } }, - "/assessment-results/{ExternalUUID}/snapshot": { + "/assessment-results/{ContentUUID}/snapshot": { "get": { "tags": [ - "OSCAL Assessment Results" + "Assessment Results" ], "summary": "Returns a list of every relevant snapshot.", "description": "Returns a list of every relevant snapshot.", "operationId": "getAssessmentResultsSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -5796,19 +5796,19 @@ }, "post": { "tags": [ - "OSCAL Assessment Results" + "Assessment Results" ], "summary": "Creates a snapshot of the file in its current state.", "description": "Creates a snapshot of the file in its current state. The implementation _must_ assign and track a unique identifier for the snapshot, by which the snapshot may be referenced later. The implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "postAssessmentResultsSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -5923,22 +5923,22 @@ ] } }, - "/assessment-results/{ExternalUUID}/snapshot/{snapshotID}": { + "/assessment-results/{ContentUUID}/snapshot/{snapshotID}": { "get": { "tags": [ - "OSCAL Assessment Results" + "Assessment Results" ], "summary": "Returns the snapshot represented by the snapshot ID.", "description": "Returns the snapshot represented by the snapshot ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getAssessmentResultsSnapshotById", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -6033,19 +6033,19 @@ }, "put": { "tags": [ - "OSCAL Assessment Results" + "Assessment Results" ], "summary": "Modifies the snapshot description, types and labels.", "description": "Modifies the snapshot description, as well as the snapshot type and label tags. The implementation _must_ ensure the `snapshot-created` property is immutable. The following properties may be added, changed, or removed by this method.\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (Value is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "putAssessmentResultsSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -6163,19 +6163,19 @@ }, "delete": { "tags": [ - "OSCAL Assessment Results" + "Assessment Results" ], "summary": "Deletes the snapshot represented by the snapshot ID.", "description": "Deletes the snapshot represented by the snapshot ID.", "operationId": "deleteAssessmentResultsSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -6256,7 +6256,7 @@ "/catalog": { "get": { "tags": [ - "OSCAL Catalog" + "Catalog" ], "summary": "Returns a list of every relevant catalog.", "description": "Returns a list of every relevant catalog.", @@ -6333,7 +6333,7 @@ }, "post": { "tags": [ - "OSCAL Catalog" + "Catalog" ], "summary": "Adds a new catalog.", "description": "Adds a new catalog.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", @@ -6461,22 +6461,22 @@ ] } }, - "/catalog/{ExternalUUID}": { + "/catalog/{ContentUUID}": { "get": { "tags": [ - "OSCAL Catalog" + "Catalog" ], "summary": "Returns the catalog represented by the catalog ID.", "description": "Returns the catalog represented by the catalog ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getCatalogById", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -6562,19 +6562,19 @@ }, "put": { "tags": [ - "OSCAL Catalog" + "Catalog" ], "summary": "Replaces the catalog represented by the catalog ID.", "description": "Replaces the catalog represented by the catalog ID.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", "operationId": "putCatalog", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -6695,19 +6695,19 @@ }, "delete": { "tags": [ - "OSCAL Catalog" + "Catalog" ], "summary": "Deletes the catalog represented by the catalog ID.", "description": "Deletes the catalog represented by the catalog ID.", "operationId": "deleteCatalog", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -6776,22 +6776,22 @@ ] } }, - "/catalog/{ExternalUUID}/attachment": { + "/catalog/{ContentUUID}/attachment": { "get": { "tags": [ - "OSCAL Catalog" + "Catalog" ], "summary": "Returns a list of every relevant attachment.", "description": "Returns a list of every relevant attachment.", "operationId": "getCatalogAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -6867,19 +6867,19 @@ }, "post": { "tags": [ - "OSCAL Catalog" + "Catalog" ], "summary": "Adds a new attachment and returns the UUID of the resource.", "description": "Adds a new attachment and creates a new back-matter resource in the OSCAL file. The UUID of the resource is returned.", "operationId": "postCatalogAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -6985,22 +6985,22 @@ ] } }, - "/catalog/{ExternalUUID}/attachment/{resourceUUID}": { + "/catalog/{ContentUUID}/attachment/{resourceUUID}": { "get": { "tags": [ - "OSCAL Catalog" + "Catalog" ], "summary": "Returns the attachment represented by the back-matter resource UUID.", "description": "Returns the attachment represented by the back-matter resource UUID.", "operationId": "getCatalogAttachmentByUuid", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -7106,19 +7106,19 @@ }, "put": { "tags": [ - "OSCAL Catalog" + "Catalog" ], "summary": "Replaces the attachment represented by the resource UUID.", "description": "Replaces the attachment represented by the resource UUID.", "operationId": "putCatalogAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -7227,19 +7227,19 @@ }, "delete": { "tags": [ - "OSCAL Catalog" + "Catalog" ], "summary": "Deletes the attachment and associated resource.", "description": "Deletes the attachment and the associated back-matter resource represented by the resource UUID.", "operationId": "deleteCatalogAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -7317,22 +7317,22 @@ ] } }, - "/catalog/{ExternalUUID}/attachment/{resourceUUID}/resource": { + "/catalog/{ContentUUID}/attachment/{resourceUUID}/resource": { "get": { "tags": [ - "OSCAL Catalog" + "Catalog" ], "summary": "Retrieves the OSCAL back-matter / resource information.", "description": "Retrieves the content of the back-matter resource represented by the resource UUID, consistent with the NIST OSCAL syntax for back-matter resource assemblies.", "operationId": "getCatalogAttachmentResourceBy", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -7417,19 +7417,19 @@ }, "put": { "tags": [ - "OSCAL Catalog" + "Catalog" ], "summary": "Updates the content of the back-matter resource.", "description": "Updates the content of the back-matter resource represented by the resource UUID, consistent with the NIST OSCAL syntax for back-matter resource assemblies.", "operationId": "putCatalogAttachmentResource", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -7546,22 +7546,22 @@ ] } }, - "/catalog/{ExternalUUID}/snapshot": { + "/catalog/{ContentUUID}/snapshot": { "get": { "tags": [ - "OSCAL Catalog" + "Catalog" ], "summary": "Returns a list of every relevant snapshot.", "description": "Returns a list of every relevant snapshot.", "operationId": "getCatalogSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -7637,19 +7637,19 @@ }, "post": { "tags": [ - "OSCAL Catalog" + "Catalog" ], "summary": "Creates a snapshot of the file in its current state.", "description": "Creates a snapshot of the file in its current state. The implementation _must_ assign and track a unique identifier for the snapshot, by which the snapshot may be referenced later. The implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "postCatalogSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -7764,22 +7764,22 @@ ] } }, - "/catalog/{ExternalUUID}/snapshot/{snapshotID}": { + "/catalog/{ContentUUID}/snapshot/{snapshotID}": { "get": { "tags": [ - "OSCAL Catalog" + "Catalog" ], "summary": "Returns the snapshot represented by the snapshot ID.", "description": "Returns the snapshot represented by the snapshot ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getCatalogSnapshotById", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -7874,19 +7874,19 @@ }, "put": { "tags": [ - "OSCAL Catalog" + "Catalog" ], "summary": "Modifies the snapshot description, types and labels.", "description": "Modifies the snapshot description, as well as the snapshot type and label tags. The implementation _must_ ensure the `snapshot-created` property is immutable. The following properties may be added, changed, or removed by this method.\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (Value is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "putCatalogSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -8004,19 +8004,19 @@ }, "delete": { "tags": [ - "OSCAL Catalog" + "Catalog" ], "summary": "Deletes the snapshot represented by the snapshot ID.", "description": "Deletes the snapshot represented by the snapshot ID.", "operationId": "deleteCatalogSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -8097,7 +8097,7 @@ "/system-security-plan": { "get": { "tags": [ - "OSCAL System Security Plan" + "System Security Plan" ], "summary": "Returns a list of every relevant system security plan.", "description": "Returns a list of every relevant system security plan.", @@ -8174,7 +8174,7 @@ }, "post": { "tags": [ - "OSCAL System Security Plan" + "System Security Plan" ], "summary": "Adds a new system security plan.", "description": "Adds a new system security plan.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", @@ -8302,22 +8302,22 @@ ] } }, - "/system-security-plan/{ExternalUUID}": { + "/system-security-plan/{ContentUUID}": { "get": { "tags": [ - "OSCAL System Security Plan" + "System Security Plan" ], "summary": "Returns the system security plan represented by the system security plan ID.", "description": "Returns the system security plan represented by the system security plan ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getSystemSecurityPlanById", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -8403,19 +8403,19 @@ }, "put": { "tags": [ - "OSCAL System Security Plan" + "System Security Plan" ], "summary": "Replaces the system security plan represented by the system security plan ID.", "description": "Replaces the system security plan represented by the system security plan ID.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", "operationId": "putSystemSecurityPlan", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -8536,19 +8536,19 @@ }, "delete": { "tags": [ - "OSCAL System Security Plan" + "System Security Plan" ], "summary": "Deletes the system security plan represented by the system security plan ID.", "description": "Deletes the system security plan represented by the system security plan ID.", "operationId": "deleteSystemSecurityPlan", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -8617,22 +8617,22 @@ ] } }, - "/system-security-plan/{ExternalUUID}/attachment": { + "/system-security-plan/{ContentUUID}/attachment": { "get": { "tags": [ - "OSCAL System Security Plan" + "System Security Plan" ], "summary": "Returns a list of every relevant attachment.", "description": "Returns a list of every relevant attachment.", "operationId": "getSystemSecurityPlanAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -8708,19 +8708,19 @@ }, "post": { "tags": [ - "OSCAL System Security Plan" + "System Security Plan" ], "summary": "Adds a new attachment and returns the UUID of the resource.", "description": "Adds a new attachment and creates a new back-matter resource in the OSCAL file. The UUID of the resource is returned.", "operationId": "postSystemSecurityPlanAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -8826,22 +8826,22 @@ ] } }, - "/system-security-plan/{ExternalUUID}/attachment/{resourceUUID}": { + "/system-security-plan/{ContentUUID}/attachment/{resourceUUID}": { "get": { "tags": [ - "OSCAL System Security Plan" + "System Security Plan" ], "summary": "Returns the attachment represented by the back-matter resource UUID.", "description": "Returns the attachment represented by the back-matter resource UUID.", "operationId": "getSystemSecurityPlanAttachmentByUuid", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -8947,19 +8947,19 @@ }, "put": { "tags": [ - "OSCAL System Security Plan" + "System Security Plan" ], "summary": "Replaces the attachment represented by the resource UUID.", "description": "Replaces the attachment represented by the resource UUID.", "operationId": "putSystemSecurityPlanAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -9068,19 +9068,19 @@ }, "delete": { "tags": [ - "OSCAL System Security Plan" + "System Security Plan" ], "summary": "Deletes the attachment and associated resource.", "description": "Deletes the attachment and the associated back-matter resource represented by the resource UUID.", "operationId": "deleteSystemSecurityPlanAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -9158,22 +9158,22 @@ ] } }, - "/system-security-plan/{ExternalUUID}/attachment/{resourceUUID}/resource": { + "/system-security-plan/{ContentUUID}/attachment/{resourceUUID}/resource": { "get": { "tags": [ - "OSCAL System Security Plan" + "System Security Plan" ], "summary": "Retrieves the OSCAL back-matter / resource information.", "description": "Retrieves the content of the back-matter resource represented by the resource UUID, consistent with the NIST OSCAL syntax for back-matter resource assemblies.", "operationId": "getSystemSecurityPlanAttachmentResourceBy", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -9258,19 +9258,19 @@ }, "put": { "tags": [ - "OSCAL System Security Plan" + "System Security Plan" ], "summary": "Updates the content of the back-matter resource.", "description": "Updates the content of the back-matter resource represented by the resource UUID, consistent with the NIST OSCAL syntax for back-matter resource assemblies.", "operationId": "putSystemSecurityPlanAttachmentResource", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -9387,22 +9387,22 @@ ] } }, - "/system-security-plan/{ExternalUUID}/snapshot": { + "/system-security-plan/{ContentUUID}/snapshot": { "get": { "tags": [ - "OSCAL System Security Plan" + "System Security Plan" ], "summary": "Returns a list of every relevant snapshot.", "description": "Returns a list of every relevant snapshot.", "operationId": "getSystemSecurityPlanSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -9478,19 +9478,19 @@ }, "post": { "tags": [ - "OSCAL System Security Plan" + "System Security Plan" ], "summary": "Creates a snapshot of the file in its current state.", "description": "Creates a snapshot of the file in its current state. The implementation _must_ assign and track a unique identifier for the snapshot, by which the snapshot may be referenced later. The implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "postSystemSecurityPlanSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -9605,22 +9605,22 @@ ] } }, - "/system-security-plan/{ExternalUUID}/snapshot/{snapshotID}": { + "/system-security-plan/{ContentUUID}/snapshot/{snapshotID}": { "get": { "tags": [ - "OSCAL System Security Plan" + "System Security Plan" ], "summary": "Returns the snapshot represented by the snapshot ID.", "description": "Returns the snapshot represented by the snapshot ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getSystemSecurityPlanSnapshotById", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -9715,19 +9715,19 @@ }, "put": { "tags": [ - "OSCAL System Security Plan" + "System Security Plan" ], "summary": "Modifies the snapshot description, types and labels.", "description": "Modifies the snapshot description, as well as the snapshot type and label tags. The implementation _must_ ensure the `snapshot-created` property is immutable. The following properties may be added, changed, or removed by this method.\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (Value is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "putSystemSecurityPlanSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -9845,19 +9845,19 @@ }, "delete": { "tags": [ - "OSCAL System Security Plan" + "System Security Plan" ], "summary": "Deletes the snapshot represented by the snapshot ID.", "description": "Deletes the snapshot represented by the snapshot ID.", "operationId": "deleteSystemSecurityPlanSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -9938,7 +9938,7 @@ "/plan-of-action-and-milestones": { "get": { "tags": [ - "OSCAL Plan of Action and Milestones" + "Plan of Action and Milestones" ], "summary": "Returns a list of every relevant plan of action and milestones.", "description": "Returns a list of every relevant plan of action and milestones.", @@ -10015,7 +10015,7 @@ }, "post": { "tags": [ - "OSCAL Plan of Action and Milestones" + "Plan of Action and Milestones" ], "summary": "Adds a new plan of action and milestones.", "description": "Adds a new plan of action and milestones.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", @@ -10143,22 +10143,22 @@ ] } }, - "/plan-of-action-and-milestones/{ExternalUUID}": { + "/plan-of-action-and-milestones/{ContentUUID}": { "get": { "tags": [ - "OSCAL Plan of Action and Milestones" + "Plan of Action and Milestones" ], "summary": "Returns the plan of action and milestones represented by the plan of action and milestones ID.", "description": "Returns the plan of action and milestones represented by the plan of action and milestones ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getPlanOfActionAndMilestonesById", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -10244,19 +10244,19 @@ }, "put": { "tags": [ - "OSCAL Plan of Action and Milestones" + "Plan of Action and Milestones" ], "summary": "Replaces the plan of action and milestones represented by the plan of action and milestones ID.", "description": "Replaces the plan of action and milestones represented by the plan of action and milestones ID.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", "operationId": "putPlanOfActionAndMilestones", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -10377,19 +10377,19 @@ }, "delete": { "tags": [ - "OSCAL Plan of Action and Milestones" + "Plan of Action and Milestones" ], "summary": "Deletes the plan of action and milestones represented by the plan of action and milestones ID.", "description": "Deletes the plan of action and milestones represented by the plan of action and milestones ID.", "operationId": "deletePlanOfActionAndMilestones", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -10458,22 +10458,22 @@ ] } }, - "/plan-of-action-and-milestones/{ExternalUUID}/attachment": { + "/plan-of-action-and-milestones/{ContentUUID}/attachment": { "get": { "tags": [ - "OSCAL Plan of Action and Milestones" + "Plan of Action and Milestones" ], "summary": "Returns a list of every relevant attachment.", "description": "Returns a list of every relevant attachment.", "operationId": "getPlanOfActionAndMilestonesAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -10549,19 +10549,19 @@ }, "post": { "tags": [ - "OSCAL Plan of Action and Milestones" + "Plan of Action and Milestones" ], "summary": "Adds a new attachment and returns the UUID of the resource.", "description": "Adds a new attachment and creates a new back-matter resource in the OSCAL file. The UUID of the resource is returned.", "operationId": "postPlanOfActionAndMilestonesAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -10667,22 +10667,22 @@ ] } }, - "/plan-of-action-and-milestones/{ExternalUUID}/attachment/{resourceUUID}": { + "/plan-of-action-and-milestones/{ContentUUID}/attachment/{resourceUUID}": { "get": { "tags": [ - "OSCAL Plan of Action and Milestones" + "Plan of Action and Milestones" ], "summary": "Returns the attachment represented by the back-matter resource UUID.", "description": "Returns the attachment represented by the back-matter resource UUID.", "operationId": "getPlanOfActionAndMilestonesAttachmentByUuid", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -10788,19 +10788,19 @@ }, "put": { "tags": [ - "OSCAL Plan of Action and Milestones" + "Plan of Action and Milestones" ], "summary": "Replaces the attachment represented by the resource UUID.", "description": "Replaces the attachment represented by the resource UUID.", "operationId": "putPlanOfActionAndMilestonesAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -10909,19 +10909,19 @@ }, "delete": { "tags": [ - "OSCAL Plan of Action and Milestones" + "Plan of Action and Milestones" ], "summary": "Deletes the attachment and associated resource.", "description": "Deletes the attachment and the associated back-matter resource represented by the resource UUID.", "operationId": "deletePlanOfActionAndMilestonesAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -10999,22 +10999,22 @@ ] } }, - "/plan-of-action-and-milestones/{ExternalUUID}/attachment/{resourceUUID}/resource": { + "/plan-of-action-and-milestones/{ContentUUID}/attachment/{resourceUUID}/resource": { "get": { "tags": [ - "OSCAL Plan of Action and Milestones" + "Plan of Action and Milestones" ], "summary": "Retrieves the OSCAL back-matter / resource information.", "description": "Retrieves the content of the back-matter resource represented by the resource UUID, consistent with the NIST OSCAL syntax for back-matter resource assemblies.", "operationId": "getPlanOfActionAndMilestonesAttachmentResourceBy", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -11099,19 +11099,19 @@ }, "put": { "tags": [ - "OSCAL Plan of Action and Milestones" + "Plan of Action and Milestones" ], "summary": "Updates the content of the back-matter resource.", "description": "Updates the content of the back-matter resource represented by the resource UUID, consistent with the NIST OSCAL syntax for back-matter resource assemblies.", "operationId": "putPlanOfActionAndMilestonesAttachmentResource", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -11228,22 +11228,22 @@ ] } }, - "/plan-of-action-and-milestones/{ExternalUUID}/snapshot": { + "/plan-of-action-and-milestones/{ContentUUID}/snapshot": { "get": { "tags": [ - "OSCAL Plan of Action and Milestones" + "Plan of Action and Milestones" ], "summary": "Returns a list of every relevant snapshot.", "description": "Returns a list of every relevant snapshot.", "operationId": "getPlanOfActionAndMilestonesSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -11319,19 +11319,19 @@ }, "post": { "tags": [ - "OSCAL Plan of Action and Milestones" + "Plan of Action and Milestones" ], "summary": "Creates a snapshot of the file in its current state.", "description": "Creates a snapshot of the file in its current state. The implementation _must_ assign and track a unique identifier for the snapshot, by which the snapshot may be referenced later. The implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "postPlanOfActionAndMilestonesSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -11446,22 +11446,22 @@ ] } }, - "/plan-of-action-and-milestones/{ExternalUUID}/snapshot/{snapshotID}": { + "/plan-of-action-and-milestones/{ContentUUID}/snapshot/{snapshotID}": { "get": { "tags": [ - "OSCAL Plan of Action and Milestones" + "Plan of Action and Milestones" ], "summary": "Returns the snapshot represented by the snapshot ID.", "description": "Returns the snapshot represented by the snapshot ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getPlanOfActionAndMilestonesSnapshotById", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -11556,19 +11556,19 @@ }, "put": { "tags": [ - "OSCAL Plan of Action and Milestones" + "Plan of Action and Milestones" ], "summary": "Modifies the snapshot description, types and labels.", "description": "Modifies the snapshot description, as well as the snapshot type and label tags. The implementation _must_ ensure the `snapshot-created` property is immutable. The following properties may be added, changed, or removed by this method.\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (Value is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "putPlanOfActionAndMilestonesSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -11686,19 +11686,19 @@ }, "delete": { "tags": [ - "OSCAL Plan of Action and Milestones" + "Plan of Action and Milestones" ], "summary": "Deletes the snapshot represented by the snapshot ID.", "description": "Deletes the snapshot represented by the snapshot ID.", "operationId": "deletePlanOfActionAndMilestonesSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -11779,7 +11779,7 @@ "/component-definition": { "get": { "tags": [ - "OSCAL Component Definition" + "Component Definition" ], "summary": "Returns a list of every relevant component definition.", "description": "Returns a list of every relevant component definition.", @@ -11856,7 +11856,7 @@ }, "post": { "tags": [ - "OSCAL Component Definition" + "Component Definition" ], "summary": "Adds a new component definition.", "description": "Adds a new component definition.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", @@ -11984,22 +11984,22 @@ ] } }, - "/component-definition/{ExternalUUID}": { + "/component-definition/{ContentUUID}": { "get": { "tags": [ - "OSCAL Component Definition" + "Component Definition" ], "summary": "Returns the component definition represented by the component definition ID.", "description": "Returns the component definition represented by the component definition ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getComponentDefinitionById", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -12085,19 +12085,19 @@ }, "put": { "tags": [ - "OSCAL Component Definition" + "Component Definition" ], "summary": "Replaces the component definition represented by the component definition ID.", "description": "Replaces the component definition represented by the component definition ID.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", "operationId": "putComponentDefinition", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -12218,19 +12218,19 @@ }, "delete": { "tags": [ - "OSCAL Component Definition" + "Component Definition" ], "summary": "Deletes the component definition represented by the component definition ID.", "description": "Deletes the component definition represented by the component definition ID.", "operationId": "deleteComponentDefinition", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -12299,22 +12299,22 @@ ] } }, - "/component-definition/{ExternalUUID}/attachment": { + "/component-definition/{ContentUUID}/attachment": { "get": { "tags": [ - "OSCAL Component Definition" + "Component Definition" ], "summary": "Returns a list of every relevant attachment.", "description": "Returns a list of every relevant attachment.", "operationId": "getComponentDefinitionAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -12390,19 +12390,19 @@ }, "post": { "tags": [ - "OSCAL Component Definition" + "Component Definition" ], "summary": "Adds a new attachment and returns the UUID of the resource.", "description": "Adds a new attachment and creates a new back-matter resource in the OSCAL file. The UUID of the resource is returned.", "operationId": "postComponentDefinitionAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -12508,22 +12508,22 @@ ] } }, - "/component-definition/{ExternalUUID}/attachment/{resourceUUID}": { + "/component-definition/{ContentUUID}/attachment/{resourceUUID}": { "get": { "tags": [ - "OSCAL Component Definition" + "Component Definition" ], "summary": "Returns the attachment represented by the back-matter resource UUID.", "description": "Returns the attachment represented by the back-matter resource UUID.", "operationId": "getComponentDefinitionAttachmentByUuid", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -12629,19 +12629,19 @@ }, "put": { "tags": [ - "OSCAL Component Definition" + "Component Definition" ], "summary": "Replaces the attachment represented by the resource UUID.", "description": "Replaces the attachment represented by the resource UUID.", "operationId": "putComponentDefinitionAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -12750,19 +12750,19 @@ }, "delete": { "tags": [ - "OSCAL Component Definition" + "Component Definition" ], "summary": "Deletes the attachment and associated resource.", "description": "Deletes the attachment and the associated back-matter resource represented by the resource UUID.", "operationId": "deleteComponentDefinitionAttachment", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -12840,22 +12840,22 @@ ] } }, - "/component-definition/{ExternalUUID}/attachment/{resourceUUID}/resource": { + "/component-definition/{ContentUUID}/attachment/{resourceUUID}/resource": { "get": { "tags": [ - "OSCAL Component Definition" + "Component Definition" ], "summary": "Retrieves the OSCAL back-matter / resource information.", "description": "Retrieves the content of the back-matter resource represented by the resource UUID, consistent with the NIST OSCAL syntax for back-matter resource assemblies.", "operationId": "getComponentDefinitionAttachmentResourceBy", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -12940,19 +12940,19 @@ }, "put": { "tags": [ - "OSCAL Component Definition" + "Component Definition" ], "summary": "Updates the content of the back-matter resource.", "description": "Updates the content of the back-matter resource represented by the resource UUID, consistent with the NIST OSCAL syntax for back-matter resource assemblies.", "operationId": "putComponentDefinitionAttachmentResource", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -13069,22 +13069,22 @@ ] } }, - "/component-definition/{ExternalUUID}/snapshot": { + "/component-definition/{ContentUUID}/snapshot": { "get": { "tags": [ - "OSCAL Component Definition" + "Component Definition" ], "summary": "Returns a list of every relevant snapshot.", "description": "Returns a list of every relevant snapshot.", "operationId": "getComponentDefinitionSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -13160,19 +13160,19 @@ }, "post": { "tags": [ - "OSCAL Component Definition" + "Component Definition" ], "summary": "Creates a snapshot of the file in its current state.", "description": "Creates a snapshot of the file in its current state. The implementation _must_ assign and track a unique identifier for the snapshot, by which the snapshot may be referenced later. The implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "postComponentDefinitionSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } } ], @@ -13287,22 +13287,22 @@ ] } }, - "/component-definition/{ExternalUUID}/snapshot/{snapshotID}": { + "/component-definition/{ContentUUID}/snapshot/{snapshotID}": { "get": { "tags": [ - "OSCAL Component Definition" + "Component Definition" ], "summary": "Returns the snapshot represented by the snapshot ID.", "description": "Returns the snapshot represented by the snapshot ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getComponentDefinitionSnapshotById", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -13397,19 +13397,19 @@ }, "put": { "tags": [ - "OSCAL Component Definition" + "Component Definition" ], "summary": "Modifies the snapshot description, types and labels.", "description": "Modifies the snapshot description, as well as the snapshot type and label tags. The implementation _must_ ensure the `snapshot-created` property is immutable. The following properties may be added, changed, or removed by this method.\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (Value is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "putComponentDefinitionSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -13527,19 +13527,19 @@ }, "delete": { "tags": [ - "OSCAL Component Definition" + "Component Definition" ], "summary": "Deletes the snapshot represented by the snapshot ID.", "description": "Deletes the snapshot represented by the snapshot ID.", "operationId": "deleteComponentDefinitionSnapshot", "parameters": [ { - "name": "ExternalUUID", + "name": "ContentUUID", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ExternalUUID" + "$ref": "#/components/schemas/ContentUUID" } }, { @@ -14333,7 +14333,7 @@ "maxLength": 72, "pattern": "^(\\p{Ll}|_)(\\p{L}|\\p{N}|[.\\-_])*$" }, - "ExternalUUID": { + "ContentUUID": { "type": "string", "minLength": 36, "maxLength": 36, From 34a0add038075930d0701ba66ba6f923a3b28613 Mon Sep 17 00:00:00 2001 From: Brian Ruf Date: Thu, 5 Sep 2024 10:22:08 -0400 Subject: [PATCH 04/17] Updated readme content --- README.md | 32 ++++++++++++++++++++++++-------- 1 file changed, 24 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index fa844cd..9c7df37 100644 --- a/README.md +++ b/README.md @@ -12,8 +12,17 @@ For more information, vist and bookmark [https://docs.oscal.io/docs/oscal-rest-o All endpoint syntax is provided as: -|`METHOD /{model-name}`
`METHOD /{model-name}/{identifier}`
`METHOD /{model-name}/{identifier}/snapshot`
`METHOD /{model-name}/{identifier}/snapshot/{identifier}`
`METHOD /{model-name}/{identifier}/attachment`
`METHOD /{model-name}/{identifier}/attachment/{resource-uuid}`
`METHOD /{model-name}/{identifier}/attachment/{resource-uuid}/resource`| -|:--- | +| METHODS | ENDPOINTS | +|:--- |:--- | +| `GET`, `POST` | `/{model-name}` | +| `GET`, `PUT`, `DELETE` | `/{model-name}/{content-uuid}` | +| `GET`, `POST` | `/{model-name}/{content-uuid}/attachment` | +| `GET`, `PUT`, `DELETE` | `/{model-name}/{content-uuid}/attachment/{resource-uuid}` | +| `GET`, `POST` | `/{model-name}/{content-uuid}/snapshot` | +| `GET`, `PUT`, `DELETE` | `{model-name}/{content-uuid}/snapshot/{snapshot-uuid}` | + + + The `{model-name}` is always one of the seven root-level OSCAL model names exactly as they are defined in the OSCAL syntax. Simply replace `{model-name}` with one of the following: @@ -27,18 +36,25 @@ The `{model-name}` is always one of the seven root-level OSCAL model names exact Profiles have additional endpoints related to profile resolution: -|`METHOD /profile/{identifier}/resolved-catalog`
`METHOD /profile/{identifier}/resolved-snapshot`
`METHOD /profile/{identifier}/resolved-snapshot/{identifier}`| -|:--- | +| METHODS | ENDPOINTS | +|:--- |:--- | +| `GET` | `/profile/{content-uuid}/resolved-catalog` | +| `GET`, `POST` | `/profile/{content-uuid}/resolved-snapshot` | +| `GET`, `PUT`, `DELETE` | `/{model-name}/{content-uuid}/resolved-snapshot-uuid` | + ## Known Issue: XML Expression -When the specification calls for OSCAL content to be accepted or returned, the content must be fully OSCAL valid. Even if the specification shows a non-compliant schema or example. +There is a known OpenAPI issue that prevents proper definition of OSCAL XML schemas. + +**When the specification calls for OSCAL content to be accepted or returned, the content must be fully valid OSCAL per the NIST standard, even if the specification shows a non-compliant schema or example.** + +### Additional Information -There is a known-issue that prevents proper expression of OSCAL XML content in OpenAPI. +All versions of the OpenAPI specification only accept JSON schema definitions, and attempts to derive any XML schema from the JSON schema. -XML elements have both _attributes_ and _children_. JSON elements only have _children_. There is no way to specify an element _attribute_ using a JSON schema. +The issue is JSON elements only have _children_, while XML elements have both _attributes_ and _children_. There is no way to specify an OSCAL XML element _attributes_ using a JSON schema. As a result all OpenAPI viewers and code generators incorrectly represent OSCAL XML element _attributes_ as element _children_. -All versions of the OpenAPI specification, up to and including 3.1, only accept JSON schema definitions. As a result all OpenAPI viewers and code generators incorrectly represent OSCAL XML element _attributes_ as element _children_. ## Viewing / Editing From 0b9b354f204e70463cabb8a93cbd8558acb6ed74 Mon Sep 17 00:00:00 2001 From: Brian Ruf Date: Thu, 5 Sep 2024 10:28:07 -0400 Subject: [PATCH 05/17] updated the servers section --- OSCALRestOpenAPI.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/OSCALRestOpenAPI.json b/OSCALRestOpenAPI.json index 3e910f3..8269ba2 100644 --- a/OSCALRestOpenAPI.json +++ b/OSCALRestOpenAPI.json @@ -20,7 +20,8 @@ }, "servers": [ { - "url": "http://localhost:8080/oscal/v1" + "url": "http://localhost:8080/oscal/v1.0.0", + "description": "A sample target host that assumes the implementation is running locally. Replace this with the URL to your implementaiton. Consider including `/oscal/v1.0.0` as part of the implementaiton's root URL." } ], "tags": [ From b8a25bc15029fe8b49f5cd335a77a94c016d8e6c Mon Sep 17 00:00:00 2001 From: Brian Ruf Date: Thu, 5 Sep 2024 10:29:32 -0400 Subject: [PATCH 06/17] reversed incorrect server host --- OSCALRestOpenAPI.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/OSCALRestOpenAPI.json b/OSCALRestOpenAPI.json index 8269ba2..6f36fbf 100644 --- a/OSCALRestOpenAPI.json +++ b/OSCALRestOpenAPI.json @@ -20,8 +20,8 @@ }, "servers": [ { - "url": "http://localhost:8080/oscal/v1.0.0", - "description": "A sample target host that assumes the implementation is running locally. Replace this with the URL to your implementaiton. Consider including `/oscal/v1.0.0` as part of the implementaiton's root URL." + "url": "http://localhost:8080/oscal/v1", + "description": "A sample target host that assumes the implementation is running locally. Replace this with the URL to your implementaiton. Consider including `/oscal/v1` as part of the implementaiton's root URL." } ], "tags": [ From 858a44b410a7df837484c172f88c39204ae8e214 Mon Sep 17 00:00:00 2001 From: Brian Ruf Date: Thu, 5 Sep 2024 15:04:23 -0400 Subject: [PATCH 07/17] additional updates for identifiers --- OSCALRestOpenAPI.json | 709 +++++++++++++++++++++--------------------- README.md | 2 +- 2 files changed, 353 insertions(+), 358 deletions(-) diff --git a/OSCALRestOpenAPI.json b/OSCALRestOpenAPI.json index 6f36fbf..320810b 100644 --- a/OSCALRestOpenAPI.json +++ b/OSCALRestOpenAPI.json @@ -166,7 +166,7 @@ "Assessment Plan" ], "summary": "Adds a new assessment plan.", - "description": "Adds a new assessment plan.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", + "description": "Adds a new assessment plan.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). If present, the implementaiton must use this value as the `content-uuid`. If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", "operationId": "postAssessmentPlan", "responses": { "201": { @@ -291,22 +291,22 @@ ] } }, - "/assessment-plan/{ContentUUID}": { + "/assessment-plan/{content-uuid}": { "get": { "tags": [ "Assessment Plan" ], - "summary": "Returns the assessment plan represented by the assessment plan ID.", - "description": "Returns the assessment plan represented by the assessment plan ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", + "summary": "Returns the assessment plan represented by the `content-uuid`.", + "description": "Returns the assessment plan represented by the `content-uuid`.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getAssessmentPlanById", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -394,17 +394,17 @@ "tags": [ "Assessment Plan" ], - "summary": "Replaces the assessment plan represented by the assessment plan ID.", - "description": "Replaces the assessment plan represented by the assessment plan ID.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", + "summary": "Replaces the assessment plan represented by the `content-uuid`.", + "description": "Replaces the assessment plan represented by the `content-uuid`.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", "operationId": "putAssessmentPlan", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -527,17 +527,17 @@ "tags": [ "Assessment Plan" ], - "summary": "Deletes the assessment plan represented by the assessment plan ID.", - "description": "Deletes the assessment plan represented by the assessment plan ID.", + "summary": "Deletes the assessment plan represented by the `content-uuid`.", + "description": "Deletes the assessment plan represented by the `content-uuid`.", "operationId": "deleteAssessmentPlan", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -606,7 +606,7 @@ ] } }, - "/assessment-plan/{ContentUUID}/attachment": { + "/assessment-plan/{content-uuid}/attachment": { "get": { "tags": [ "Assessment Plan" @@ -616,12 +616,12 @@ "operationId": "getAssessmentPlanAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -704,12 +704,12 @@ "operationId": "postAssessmentPlanAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -815,7 +815,7 @@ ] } }, - "/assessment-plan/{ContentUUID}/attachment/{resourceUUID}": { + "/assessment-plan/{content-uuid}/attachment/{resource-uuid}": { "get": { "tags": [ "Assessment Plan" @@ -825,12 +825,12 @@ "operationId": "getAssessmentPlanAttachmentByUuid", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -943,12 +943,12 @@ "operationId": "putAssessmentPlanAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -1064,12 +1064,12 @@ "operationId": "deleteAssessmentPlanAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -1147,7 +1147,7 @@ ] } }, - "/assessment-plan/{ContentUUID}/attachment/{resourceUUID}/resource": { + "/assessment-plan/{content-uuid}/attachment/{resource-uuid}/resource": { "get": { "tags": [ "Assessment Plan" @@ -1157,12 +1157,12 @@ "operationId": "getAssessmentPlanAttachmentResourceBy", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -1254,12 +1254,12 @@ "operationId": "putAssessmentPlanAttachmentResource", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -1376,7 +1376,7 @@ ] } }, - "/assessment-plan/{ContentUUID}/snapshot": { + "/assessment-plan/{content-uuid}/snapshot": { "get": { "tags": [ "Assessment Plan" @@ -1386,12 +1386,12 @@ "operationId": "getAssessmentPlanSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -1474,12 +1474,12 @@ "operationId": "postAssessmentPlanSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -1594,22 +1594,22 @@ ] } }, - "/assessment-plan/{ContentUUID}/snapshot/{snapshotID}": { + "/assessment-plan/{content-uuid}/snapshot/{snapshot-uuid}": { "get": { "tags": [ "Assessment Plan" ], - "summary": "Returns the snapshot represented by the snapshot ID.", - "description": "Returns the snapshot represented by the snapshot ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", + "summary": "Returns the snapshot represented by the `snapshot-uuid`.", + "description": "Returns the snapshot represented by the `snapshot-uuid`.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getAssessmentPlanSnapshotById", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -1711,12 +1711,12 @@ "operationId": "putAssessmentPlanSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -1836,17 +1836,17 @@ "tags": [ "Assessment Plan" ], - "summary": "Deletes the snapshot represented by the snapshot ID.", - "description": "Deletes the snapshot represented by the snapshot ID.", + "summary": "Deletes the snapshot represented by the `snapshot-uuid`.", + "description": "Deletes the snapshot represented by the `snapshot-uuid`.", "operationId": "deleteAssessmentPlanSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -2007,7 +2007,7 @@ "Profile" ], "summary": "Adds a new profile.", - "description": "Adds a new profile.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", + "description": "Adds a new profile.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). If present, the implementaiton must use this value as the `content-uuid`. If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", "operationId": "postProfile", "responses": { "201": { @@ -2132,22 +2132,22 @@ ] } }, - "/profile/{ContentUUID}": { + "/profile/{content-uuid}": { "get": { "tags": [ "Profile" ], - "summary": "Returns the profile represented by the profile ID.", - "description": "Returns the profile represented by the profile ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", + "summary": "Returns the profile represented by the `content-uuid`.", + "description": "Returns the profile represented by the `content-uuid`.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getProfileById", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -2235,17 +2235,17 @@ "tags": [ "Profile" ], - "summary": "Replaces the profile represented by the profile ID.", - "description": "Replaces the profile represented by the profile ID.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", + "summary": "Replaces the profile represented by the `content-uuid`.", + "description": "Replaces the profile represented by the `content-uuid`.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", "operationId": "putProfile", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -2368,17 +2368,17 @@ "tags": [ "Profile" ], - "summary": "Deletes the profile represented by the profile ID.", - "description": "Deletes the profile represented by the profile ID.", + "summary": "Deletes the profile represented by the `content-uuid`.", + "description": "Deletes the profile represented by the `content-uuid`.", "operationId": "deleteProfile", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -2447,7 +2447,7 @@ ] } }, - "/profile/{ContentUUID}/resolved-catalog": { + "/profile/{content-uuid}/resolved-catalog": { "get": { "tags": [ "Profile" @@ -2457,12 +2457,12 @@ "operationId": "getProfileResolvedCatalogBy", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -2547,7 +2547,7 @@ ] } }, - "/profile/{ContentUUID}/attachment": { + "/profile/{content-uuid}/attachment": { "get": { "tags": [ "Profile" @@ -2557,12 +2557,12 @@ "operationId": "getProfileAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -2645,12 +2645,12 @@ "operationId": "postProfileAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -2756,7 +2756,7 @@ ] } }, - "/profile/{ContentUUID}/attachment/{resourceUUID}": { + "/profile/{content-uuid}/attachment/{resource-uuid}": { "get": { "tags": [ "Profile" @@ -2766,12 +2766,12 @@ "operationId": "getProfileAttachmentByUuid", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -2884,12 +2884,12 @@ "operationId": "putProfileAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -3005,12 +3005,12 @@ "operationId": "deleteProfileAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -3088,7 +3088,7 @@ ] } }, - "/profile/{ContentUUID}/attachment/{resourceUUID}/resource": { + "/profile/{content-uuid}/attachment/{resource-uuid}/resource": { "get": { "tags": [ "Profile" @@ -3098,12 +3098,12 @@ "operationId": "getProfileAttachmentResourceBy", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -3195,12 +3195,12 @@ "operationId": "putProfileAttachmentResource", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -3317,7 +3317,7 @@ ] } }, - "/profile/{ContentUUID}/snapshot": { + "/profile/{content-uuid}/snapshot": { "get": { "tags": [ "Profile" @@ -3327,12 +3327,12 @@ "operationId": "getProfileSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -3415,12 +3415,12 @@ "operationId": "postProfileSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -3535,22 +3535,22 @@ ] } }, - "/profile/{ContentUUID}/snapshot/{snapshotID}": { + "/profile/{content-uuid}/snapshot/{snapshot-uuid}": { "get": { "tags": [ "Profile" ], - "summary": "Returns the snapshot represented by the snapshot ID.", - "description": "Returns the snapshot represented by the snapshot ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", + "summary": "Returns the snapshot represented by the `snapshot-uuid`.", + "description": "Returns the snapshot represented by the `snapshot-uuid`.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getProfileSnapshotById", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -3652,12 +3652,12 @@ "operationId": "putProfileSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -3777,17 +3777,17 @@ "tags": [ "Profile" ], - "summary": "Deletes the snapshot represented by the snapshot ID.", - "description": "Deletes the snapshot represented by the snapshot ID.", + "summary": "Deletes the snapshot represented by the `snapshot-uuid`.", + "description": "Deletes the snapshot represented by the `snapshot-uuid`.", "operationId": "deleteProfileSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -3865,7 +3865,7 @@ ] } }, - "/profile/{ContentUUID}/resolved-snapshot": { + "/profile/{content-uuid}/resolved-snapshot": { "get": { "tags": [ "Profile" @@ -3875,12 +3875,12 @@ "operationId": "getProfileResolvedSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -3963,12 +3963,12 @@ "operationId": "postProfileResolvedSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -4083,28 +4083,28 @@ ] } }, - "/profile/{ContentUUID}/resolved-snapshot/{resolvedSnapshotID}": { + "/profile/{content-uuid}/resolved-snapshot/{resolved-snapshot-uuid}": { "get": { "tags": [ "Profile" ], - "summary": "Returns the resolved profile catalog represented by the resolved profile catalog ID.", - "description": "Returns the resolved profile catalog represented by the resolved profile catalog ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", + "summary": "Returns the resolved profile catalog represented by the `resolved-snapshot-uuid`.", + "description": "Returns the resolved profile catalog represented by the `resolved-snapshot-uuid`.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getProfileResolvedSnapshotById", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { - "name": "resolvedSnapshotID", + "name": "resolved-snapshot-uuid", "in": "path", - "description": "ID of ResolvedSnapshot", + "description": "UUID of the resolved snapshot", "required": true, "schema": { "type": "string" @@ -4200,18 +4200,18 @@ "operationId": "putProfileResolvedSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { - "name": "resolvedSnapshotID", + "name": "resolved-snapshot-uuid", "in": "path", - "description": "ID of ResolvedSnapshot", + "description": "UUID of the resolved snapshot", "required": true, "schema": { "type": "string" @@ -4330,18 +4330,18 @@ "operationId": "deleteProfileResolvedSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Profile", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { - "name": "resolvedSnapshotID", + "name": "resolved-snapshot-uuid", "in": "path", - "description": "ID of ResolvedSnapshot", + "description": "UUID of the resolved snapshot", "required": true, "schema": { "type": "string" @@ -4496,7 +4496,7 @@ "Assessment Results" ], "summary": "Adds a new assessment results.", - "description": "Adds a new assessment results.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", + "description": "Adds a new assessment results.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). If present, the implementaiton must use this value as the `content-uuid`. If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", "operationId": "postAssessmentResults", "responses": { "201": { @@ -4621,22 +4621,22 @@ ] } }, - "/assessment-results/{ContentUUID}": { + "/assessment-results/{content-uuid}": { "get": { "tags": [ "Assessment Results" ], - "summary": "Returns the assessment results represented by the assessment results ID.", - "description": "Returns the assessment results represented by the assessment results ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", + "summary": "Returns the assessment results represented by the `content-uuid`.", + "description": "Returns the assessment results represented by the `content-uuid`.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getAssessmentResultsById", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -4724,17 +4724,17 @@ "tags": [ "Assessment Results" ], - "summary": "Replaces the assessment results represented by the assessment results ID.", - "description": "Replaces the assessment results represented by the assessment results ID.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", + "summary": "Replaces the assessment results represented by the `content-uuid`.", + "description": "Replaces the assessment results represented by the `content-uuid`.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", "operationId": "putAssessmentResults", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -4857,17 +4857,17 @@ "tags": [ "Assessment Results" ], - "summary": "Deletes the assessment results represented by the assessment results ID.", - "description": "Deletes the assessment results represented by the assessment results ID.", + "summary": "Deletes the assessment results represented by the `content-uuid`.", + "description": "Deletes the assessment results represented by the `content-uuid`.", "operationId": "deleteAssessmentResults", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -4936,7 +4936,7 @@ ] } }, - "/assessment-results/{ContentUUID}/attachment": { + "/assessment-results/{content-uuid}/attachment": { "get": { "tags": [ "Assessment Results" @@ -4946,12 +4946,12 @@ "operationId": "getAssessmentResultsAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -5034,12 +5034,12 @@ "operationId": "postAssessmentResultsAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -5145,7 +5145,7 @@ ] } }, - "/assessment-results/{ContentUUID}/attachment/{resourceUUID}": { + "/assessment-results/{content-uuid}/attachment/{resource-uuid}": { "get": { "tags": [ "Assessment Results" @@ -5155,12 +5155,12 @@ "operationId": "getAssessmentResultsAttachmentByUuid", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -5273,12 +5273,12 @@ "operationId": "putAssessmentResultsAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -5394,12 +5394,12 @@ "operationId": "deleteAssessmentResultsAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -5477,7 +5477,7 @@ ] } }, - "/assessment-results/{ContentUUID}/attachment/{resourceUUID}/resource": { + "/assessment-results/{content-uuid}/attachment/{resource-uuid}/resource": { "get": { "tags": [ "Assessment Results" @@ -5487,12 +5487,12 @@ "operationId": "getAssessmentResultsAttachmentResourceBy", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -5584,12 +5584,12 @@ "operationId": "putAssessmentResultsAttachmentResource", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -5706,7 +5706,7 @@ ] } }, - "/assessment-results/{ContentUUID}/snapshot": { + "/assessment-results/{content-uuid}/snapshot": { "get": { "tags": [ "Assessment Results" @@ -5716,12 +5716,12 @@ "operationId": "getAssessmentResultsSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -5804,12 +5804,12 @@ "operationId": "postAssessmentResultsSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -5924,22 +5924,22 @@ ] } }, - "/assessment-results/{ContentUUID}/snapshot/{snapshotID}": { + "/assessment-results/{content-uuid}/snapshot/{snapshot-uuid}": { "get": { "tags": [ "Assessment Results" ], - "summary": "Returns the snapshot represented by the snapshot ID.", - "description": "Returns the snapshot represented by the snapshot ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", + "summary": "Returns the snapshot represented by the `snapshot-uuid`.", + "description": "Returns the snapshot represented by the `snapshot-uuid`.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getAssessmentResultsSnapshotById", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -6041,12 +6041,12 @@ "operationId": "putAssessmentResultsSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -6166,17 +6166,17 @@ "tags": [ "Assessment Results" ], - "summary": "Deletes the snapshot represented by the snapshot ID.", - "description": "Deletes the snapshot represented by the snapshot ID.", + "summary": "Deletes the snapshot represented by the `snapshot-uuid`.", + "description": "Deletes the snapshot represented by the `snapshot-uuid`.", "operationId": "deleteAssessmentResultsSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of AssessmentResults", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -6337,7 +6337,7 @@ "Catalog" ], "summary": "Adds a new catalog.", - "description": "Adds a new catalog.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", + "description": "Adds a new catalog.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). If present, the implementaiton must use this value as the `content-uuid`. If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", "operationId": "postCatalog", "responses": { "201": { @@ -6462,7 +6462,7 @@ ] } }, - "/catalog/{ContentUUID}": { + "/catalog/{content-uuid}": { "get": { "tags": [ "Catalog" @@ -6472,12 +6472,12 @@ "operationId": "getCatalogById", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -6570,12 +6570,12 @@ "operationId": "putCatalog", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -6703,12 +6703,12 @@ "operationId": "deleteCatalog", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -6777,7 +6777,7 @@ ] } }, - "/catalog/{ContentUUID}/attachment": { + "/catalog/{content-uuid}/attachment": { "get": { "tags": [ "Catalog" @@ -6787,12 +6787,12 @@ "operationId": "getCatalogAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -6875,12 +6875,12 @@ "operationId": "postCatalogAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -6986,7 +6986,7 @@ ] } }, - "/catalog/{ContentUUID}/attachment/{resourceUUID}": { + "/catalog/{content-uuid}/attachment/{resource-uuid}": { "get": { "tags": [ "Catalog" @@ -6996,12 +6996,12 @@ "operationId": "getCatalogAttachmentByUuid", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -7114,12 +7114,12 @@ "operationId": "putCatalogAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -7235,12 +7235,12 @@ "operationId": "deleteCatalogAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -7318,7 +7318,7 @@ ] } }, - "/catalog/{ContentUUID}/attachment/{resourceUUID}/resource": { + "/catalog/{content-uuid}/attachment/{resource-uuid}/resource": { "get": { "tags": [ "Catalog" @@ -7328,12 +7328,12 @@ "operationId": "getCatalogAttachmentResourceBy", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -7425,12 +7425,12 @@ "operationId": "putCatalogAttachmentResource", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -7547,7 +7547,7 @@ ] } }, - "/catalog/{ContentUUID}/snapshot": { + "/catalog/{content-uuid}/snapshot": { "get": { "tags": [ "Catalog" @@ -7557,12 +7557,12 @@ "operationId": "getCatalogSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -7645,12 +7645,12 @@ "operationId": "postCatalogSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -7765,22 +7765,22 @@ ] } }, - "/catalog/{ContentUUID}/snapshot/{snapshotID}": { + "/catalog/{content-uuid}/snapshot/{snapshot-uuid}": { "get": { "tags": [ "Catalog" ], - "summary": "Returns the snapshot represented by the snapshot ID.", - "description": "Returns the snapshot represented by the snapshot ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", + "summary": "Returns the snapshot represented by the `snapshot-uuid`.", + "description": "Returns the snapshot represented by the `snapshot-uuid`.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getCatalogSnapshotById", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -7882,12 +7882,12 @@ "operationId": "putCatalogSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -8007,17 +8007,17 @@ "tags": [ "Catalog" ], - "summary": "Deletes the snapshot represented by the snapshot ID.", - "description": "Deletes the snapshot represented by the snapshot ID.", + "summary": "Deletes the snapshot represented by the `snapshot-uuid`.", + "description": "Deletes the snapshot represented by the `snapshot-uuid`.", "operationId": "deleteCatalogSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of Catalog", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -8178,7 +8178,7 @@ "System Security Plan" ], "summary": "Adds a new system security plan.", - "description": "Adds a new system security plan.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", + "description": "Adds a new system security plan.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). If present, the implementaiton must use this value as the `content-uuid`. If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", "operationId": "postSystemSecurityPlan", "responses": { "201": { @@ -8303,22 +8303,22 @@ ] } }, - "/system-security-plan/{ContentUUID}": { + "/system-security-plan/{content-uuid}": { "get": { "tags": [ "System Security Plan" ], - "summary": "Returns the system security plan represented by the system security plan ID.", - "description": "Returns the system security plan represented by the system security plan ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", + "summary": "Returns the system security plan represented by the `content-uuid`.", + "description": "Returns the system security plan represented by the `content-uuid`.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getSystemSecurityPlanById", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -8406,17 +8406,17 @@ "tags": [ "System Security Plan" ], - "summary": "Replaces the system security plan represented by the system security plan ID.", - "description": "Replaces the system security plan represented by the system security plan ID.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", + "summary": "Replaces the system security plan represented by the `content-uuid`.", + "description": "Replaces the system security plan represented by the `content-uuid`.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", "operationId": "putSystemSecurityPlan", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -8539,17 +8539,17 @@ "tags": [ "System Security Plan" ], - "summary": "Deletes the system security plan represented by the system security plan ID.", - "description": "Deletes the system security plan represented by the system security plan ID.", + "summary": "Deletes the system security plan represented by the `content-uuid`.", + "description": "Deletes the system security plan represented by the `content-uuid`.", "operationId": "deleteSystemSecurityPlan", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -8618,7 +8618,7 @@ ] } }, - "/system-security-plan/{ContentUUID}/attachment": { + "/system-security-plan/{content-uuid}/attachment": { "get": { "tags": [ "System Security Plan" @@ -8628,12 +8628,12 @@ "operationId": "getSystemSecurityPlanAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -8716,12 +8716,12 @@ "operationId": "postSystemSecurityPlanAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -8827,7 +8827,7 @@ ] } }, - "/system-security-plan/{ContentUUID}/attachment/{resourceUUID}": { + "/system-security-plan/{content-uuid}/attachment/{resource-uuid}": { "get": { "tags": [ "System Security Plan" @@ -8837,12 +8837,12 @@ "operationId": "getSystemSecurityPlanAttachmentByUuid", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -8955,12 +8955,12 @@ "operationId": "putSystemSecurityPlanAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -9076,12 +9076,12 @@ "operationId": "deleteSystemSecurityPlanAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -9159,7 +9159,7 @@ ] } }, - "/system-security-plan/{ContentUUID}/attachment/{resourceUUID}/resource": { + "/system-security-plan/{content-uuid}/attachment/{resource-uuid}/resource": { "get": { "tags": [ "System Security Plan" @@ -9169,12 +9169,12 @@ "operationId": "getSystemSecurityPlanAttachmentResourceBy", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -9266,12 +9266,12 @@ "operationId": "putSystemSecurityPlanAttachmentResource", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -9388,7 +9388,7 @@ ] } }, - "/system-security-plan/{ContentUUID}/snapshot": { + "/system-security-plan/{content-uuid}/snapshot": { "get": { "tags": [ "System Security Plan" @@ -9398,12 +9398,12 @@ "operationId": "getSystemSecurityPlanSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -9486,12 +9486,12 @@ "operationId": "postSystemSecurityPlanSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -9606,22 +9606,22 @@ ] } }, - "/system-security-plan/{ContentUUID}/snapshot/{snapshotID}": { + "/system-security-plan/{content-uuid}/snapshot/{snapshot-uuid}": { "get": { "tags": [ "System Security Plan" ], - "summary": "Returns the snapshot represented by the snapshot ID.", - "description": "Returns the snapshot represented by the snapshot ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", + "summary": "Returns the snapshot represented by the `snapshot-uuid`.", + "description": "Returns the snapshot represented by the `snapshot-uuid`.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getSystemSecurityPlanSnapshotById", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -9723,12 +9723,12 @@ "operationId": "putSystemSecurityPlanSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -9848,17 +9848,17 @@ "tags": [ "System Security Plan" ], - "summary": "Deletes the snapshot represented by the snapshot ID.", - "description": "Deletes the snapshot represented by the snapshot ID.", + "summary": "Deletes the snapshot represented by the `snapshot-uuid`.", + "description": "Deletes the snapshot represented by the `snapshot-uuid`.", "operationId": "deleteSystemSecurityPlanSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of SystemSecurityPlan", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -10019,7 +10019,7 @@ "Plan of Action and Milestones" ], "summary": "Adds a new plan of action and milestones.", - "description": "Adds a new plan of action and milestones.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", + "description": "Adds a new plan of action and milestones.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). If present, the implementaiton must use this value as the `content-uuid`. If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", "operationId": "postPlanOfActionAndMilestones", "responses": { "201": { @@ -10144,22 +10144,22 @@ ] } }, - "/plan-of-action-and-milestones/{ContentUUID}": { + "/plan-of-action-and-milestones/{content-uuid}": { "get": { "tags": [ "Plan of Action and Milestones" ], - "summary": "Returns the plan of action and milestones represented by the plan of action and milestones ID.", - "description": "Returns the plan of action and milestones represented by the plan of action and milestones ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", + "summary": "Returns the plan of action and milestones represented by the `content-uuid`.", + "description": "Returns the plan of action and milestones represented by the `content-uuid`.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getPlanOfActionAndMilestonesById", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -10247,17 +10247,17 @@ "tags": [ "Plan of Action and Milestones" ], - "summary": "Replaces the plan of action and milestones represented by the plan of action and milestones ID.", - "description": "Replaces the plan of action and milestones represented by the plan of action and milestones ID.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", + "summary": "Replaces the plan of action and milestones represented by the `content-uuid`.", + "description": "Replaces the plan of action and milestones represented by the `content-uuid`.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", "operationId": "putPlanOfActionAndMilestones", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -10380,17 +10380,17 @@ "tags": [ "Plan of Action and Milestones" ], - "summary": "Deletes the plan of action and milestones represented by the plan of action and milestones ID.", - "description": "Deletes the plan of action and milestones represented by the plan of action and milestones ID.", + "summary": "Deletes the plan of action and milestones represented by the `content-uuid`.", + "description": "Deletes the plan of action and milestones represented by the `content-uuid`.", "operationId": "deletePlanOfActionAndMilestones", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -10459,7 +10459,7 @@ ] } }, - "/plan-of-action-and-milestones/{ContentUUID}/attachment": { + "/plan-of-action-and-milestones/{content-uuid}/attachment": { "get": { "tags": [ "Plan of Action and Milestones" @@ -10469,12 +10469,12 @@ "operationId": "getPlanOfActionAndMilestonesAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -10557,12 +10557,12 @@ "operationId": "postPlanOfActionAndMilestonesAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -10668,7 +10668,7 @@ ] } }, - "/plan-of-action-and-milestones/{ContentUUID}/attachment/{resourceUUID}": { + "/plan-of-action-and-milestones/{content-uuid}/attachment/{resource-uuid}": { "get": { "tags": [ "Plan of Action and Milestones" @@ -10678,12 +10678,12 @@ "operationId": "getPlanOfActionAndMilestonesAttachmentByUuid", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -10796,12 +10796,12 @@ "operationId": "putPlanOfActionAndMilestonesAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -10917,12 +10917,12 @@ "operationId": "deletePlanOfActionAndMilestonesAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -11000,7 +11000,7 @@ ] } }, - "/plan-of-action-and-milestones/{ContentUUID}/attachment/{resourceUUID}/resource": { + "/plan-of-action-and-milestones/{content-uuid}/attachment/{resource-uuid}/resource": { "get": { "tags": [ "Plan of Action and Milestones" @@ -11010,12 +11010,12 @@ "operationId": "getPlanOfActionAndMilestonesAttachmentResourceBy", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -11107,12 +11107,12 @@ "operationId": "putPlanOfActionAndMilestonesAttachmentResource", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -11229,7 +11229,7 @@ ] } }, - "/plan-of-action-and-milestones/{ContentUUID}/snapshot": { + "/plan-of-action-and-milestones/{content-uuid}/snapshot": { "get": { "tags": [ "Plan of Action and Milestones" @@ -11239,12 +11239,12 @@ "operationId": "getPlanOfActionAndMilestonesSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -11327,12 +11327,12 @@ "operationId": "postPlanOfActionAndMilestonesSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -11447,22 +11447,22 @@ ] } }, - "/plan-of-action-and-milestones/{ContentUUID}/snapshot/{snapshotID}": { + "/plan-of-action-and-milestones/{content-uuid}/snapshot/{snapshot-uuid}": { "get": { "tags": [ "Plan of Action and Milestones" ], - "summary": "Returns the snapshot represented by the snapshot ID.", - "description": "Returns the snapshot represented by the snapshot ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", + "summary": "Returns the snapshot represented by the `snapshot-uuid`.", + "description": "Returns the snapshot represented by the `snapshot-uuid`.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getPlanOfActionAndMilestonesSnapshotById", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -11564,12 +11564,12 @@ "operationId": "putPlanOfActionAndMilestonesSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -11689,17 +11689,17 @@ "tags": [ "Plan of Action and Milestones" ], - "summary": "Deletes the snapshot represented by the snapshot ID.", - "description": "Deletes the snapshot represented by the snapshot ID.", + "summary": "Deletes the snapshot represented by the `snapshot-uuid`.", + "description": "Deletes the snapshot represented by the `snapshot-uuid`.", "operationId": "deletePlanOfActionAndMilestonesSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of PlanOfActionAndMilestones", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -11860,7 +11860,7 @@ "Component Definition" ], "summary": "Adds a new component definition.", - "description": "Adds a new component definition.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", + "description": "Adds a new component definition.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). If present, the implementaiton must use this value as the `content-uuid`. If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", "operationId": "postComponentDefinition", "responses": { "201": { @@ -11985,22 +11985,22 @@ ] } }, - "/component-definition/{ContentUUID}": { + "/component-definition/{content-uuid}": { "get": { "tags": [ "Component Definition" ], - "summary": "Returns the component definition represented by the component definition ID.", - "description": "Returns the component definition represented by the component definition ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", + "summary": "Returns the component definition represented by the `content-uuid`.", + "description": "Returns the component definition represented by the `content-uuid`.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getComponentDefinitionById", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -12088,17 +12088,17 @@ "tags": [ "Component Definition" ], - "summary": "Replaces the component definition represented by the component definition ID.", - "description": "Replaces the component definition represented by the component definition ID.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", + "summary": "Replaces the component definition represented by the `content-uuid`.", + "description": "Replaces the component definition represented by the `content-uuid`.\n\n The client must include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format.\n\n The implementation _must_ accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n", "operationId": "putComponentDefinition", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -12221,17 +12221,17 @@ "tags": [ "Component Definition" ], - "summary": "Deletes the component definition represented by the component definition ID.", - "description": "Deletes the component definition represented by the component definition ID.", + "summary": "Deletes the component definition represented by the `content-uuid`.", + "description": "Deletes the component definition represented by the `content-uuid`.", "operationId": "deleteComponentDefinition", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -12300,7 +12300,7 @@ ] } }, - "/component-definition/{ContentUUID}/attachment": { + "/component-definition/{content-uuid}/attachment": { "get": { "tags": [ "Component Definition" @@ -12310,12 +12310,12 @@ "operationId": "getComponentDefinitionAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -12398,12 +12398,12 @@ "operationId": "postComponentDefinitionAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -12509,7 +12509,7 @@ ] } }, - "/component-definition/{ContentUUID}/attachment/{resourceUUID}": { + "/component-definition/{content-uuid}/attachment/{resource-uuid}": { "get": { "tags": [ "Component Definition" @@ -12519,12 +12519,12 @@ "operationId": "getComponentDefinitionAttachmentByUuid", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -12637,12 +12637,12 @@ "operationId": "putComponentDefinitionAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -12758,12 +12758,12 @@ "operationId": "deleteComponentDefinitionAttachment", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -12841,7 +12841,7 @@ ] } }, - "/component-definition/{ContentUUID}/attachment/{resourceUUID}/resource": { + "/component-definition/{content-uuid}/attachment/{resource-uuid}/resource": { "get": { "tags": [ "Component Definition" @@ -12851,12 +12851,12 @@ "operationId": "getComponentDefinitionAttachmentResourceBy", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -12948,12 +12948,12 @@ "operationId": "putComponentDefinitionAttachmentResource", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -13070,7 +13070,7 @@ ] } }, - "/component-definition/{ContentUUID}/snapshot": { + "/component-definition/{content-uuid}/snapshot": { "get": { "tags": [ "Component Definition" @@ -13080,12 +13080,12 @@ "operationId": "getComponentDefinitionSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -13168,12 +13168,12 @@ "operationId": "postComponentDefinitionSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } } ], @@ -13288,22 +13288,22 @@ ] } }, - "/component-definition/{ContentUUID}/snapshot/{snapshotID}": { + "/component-definition/{content-uuid}/snapshot/{snapshot-uuid}": { "get": { "tags": [ "Component Definition" ], - "summary": "Returns the snapshot represented by the snapshot ID.", - "description": "Returns the snapshot represented by the snapshot ID.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", + "summary": "Returns the snapshot represented by the `snapshot-uuid`.", + "description": "Returns the snapshot represented by the `snapshot-uuid`.\n\n When processing this request, the implementation _must_ honor the `Accept` HTTP header for JSON, XML, and YAML. When `Accept` is set to:\n- `application/json` or `application/oscal+json` return the OSCAL content in JSON format;\n- `application/xml` (preferred by RFC 7303) or `text/xml` (deprecated by RFC 7303) or `application/oscal+xml` return the OSCAL content in XML format; or\n- `application/yaml` or `text/yaml` return the OSCAL content in YAML format.\n\n When returning the OSCAL content, the implementation _must_ set the `Content-type` header to:\n - `application/json` when returning the OSCAL content in JSON format;\n - `application/xml` when returning the OSCAL content in XML format; or\n - `application/yaml` when return the OSCAL content in YAML format.\n", "operationId": "getComponentDefinitionSnapshotById", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -13405,12 +13405,12 @@ "operationId": "putComponentDefinitionSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -13530,17 +13530,17 @@ "tags": [ "Component Definition" ], - "summary": "Deletes the snapshot represented by the snapshot ID.", - "description": "Deletes the snapshot represented by the snapshot ID.", + "summary": "Deletes the snapshot represented by the `snapshot-uuid`.", + "description": "Deletes the snapshot represented by the `snapshot-uuid`.", "operationId": "deleteComponentDefinitionSnapshot", "parameters": [ { - "name": "ContentUUID", + "name": "content-uuid", "in": "path", "description": "ID of ComponentDefinition", "required": true, "schema": { - "$ref": "#/components/schemas/ContentUUID" + "$ref": "#/components/schemas/content-uuid" } }, { @@ -14177,9 +14177,8 @@ "OSCALModelSnapshotEntry": { "type": "object", "properties": { - "file-id": { - "type": "string", - "pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[45][0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$" + "content-uuid": { + "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_catalog_schema.json#/definitions/assembly_oscal-catalog_catalog/properties/uuid" }, "title": { "type": "string" @@ -14248,9 +14247,8 @@ "OSCALModelEntry": { "type": "object", "properties": { - "file-id": { - "type": "string", - "pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[45][0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$" + "content-uuid": { + "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_catalog_schema.json#/definitions/assembly_oscal-catalog_catalog/properties/uuid" }, "title": { "type": "string" @@ -14334,11 +14332,8 @@ "maxLength": 72, "pattern": "^(\\p{Ll}|_)(\\p{L}|\\p{N}|[.\\-_])*$" }, - "ContentUUID": { - "type": "string", - "minLength": 36, - "maxLength": 36, - "pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[45][0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$" + "content-uuid": { + "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_catalog_schema.json#/definitions/assembly_oscal-catalog_catalog/properties/uuid" } }, "securitySchemes": { diff --git a/README.md b/README.md index 9c7df37..1bde3d6 100644 --- a/README.md +++ b/README.md @@ -59,7 +59,7 @@ The issue is JSON elements only have _children_, while XML elements have both _a ## Viewing / Editing The proposed OSCAL REST OpenAPI specification is expressed using the OpenAPI 3.1 standard: -[RAW](OSCALRestOpenAPI.json) | [VIEWER](https://raw.githack.com/EasyDynamics/oscal-rest/develop/viewer/index.html?url=https://raw.githubusercontent.com/EasyDynamics/oscal-rest/develop/OSCALRestOpenAPI.json) +[RAW](OSCALRestOpenAPI.json) | [VIEWER](https://editor.swagger.io?url=https://raw.githubusercontent.com/EasyDynamics/oscal-rest/develop/OSCALRestOpenAPI.json) ## Contributing and Feedback From 0b7b1706a73df4f5685759b7cb48586df7222987 Mon Sep 17 00:00:00 2001 From: Brian Ruf Date: Thu, 5 Sep 2024 15:10:43 -0400 Subject: [PATCH 08/17] fixed ResourceUUID --- OSCALRestOpenAPI.json | 70 +++++++++++++++++++++---------------------- 1 file changed, 35 insertions(+), 35 deletions(-) diff --git a/OSCALRestOpenAPI.json b/OSCALRestOpenAPI.json index 320810b..237fc6b 100644 --- a/OSCALRestOpenAPI.json +++ b/OSCALRestOpenAPI.json @@ -834,7 +834,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -952,7 +952,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -1073,7 +1073,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -1166,7 +1166,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -1263,7 +1263,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -2775,7 +2775,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -2893,7 +2893,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -3014,7 +3014,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -3107,7 +3107,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -3204,7 +3204,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -5164,7 +5164,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -5282,7 +5282,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -5403,7 +5403,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -5496,7 +5496,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -5593,7 +5593,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -7005,7 +7005,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -7123,7 +7123,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -7244,7 +7244,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -7337,7 +7337,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -7434,7 +7434,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -8846,7 +8846,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -8964,7 +8964,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -9085,7 +9085,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -9178,7 +9178,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -9275,7 +9275,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -10687,7 +10687,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -10805,7 +10805,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -10926,7 +10926,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -11019,7 +11019,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -11116,7 +11116,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -12528,7 +12528,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -12646,7 +12646,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -12767,7 +12767,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -12860,7 +12860,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, @@ -12957,7 +12957,7 @@ } }, { - "name": "resourceUUID", + "name": "resource-uuid", "in": "path", "description": "UUID of Back Matter Resource", "required": true, From d2f675ddf99094dce1eb9c3089d0aea849fdd107 Mon Sep 17 00:00:00 2001 From: Brian Ruf Date: Thu, 5 Sep 2024 15:13:08 -0400 Subject: [PATCH 09/17] formatting --- OSCALRestOpenAPI.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/OSCALRestOpenAPI.json b/OSCALRestOpenAPI.json index 237fc6b..09fd2aa 100644 --- a/OSCALRestOpenAPI.json +++ b/OSCALRestOpenAPI.json @@ -166,7 +166,7 @@ "Assessment Plan" ], "summary": "Adds a new assessment plan.", - "description": "Adds a new assessment plan.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). If present, the implementaiton must use this value as the `content-uuid`. If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", + "description": "Adds a new assessment plan.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). \n\n- If present, the implementaiton must use this value as the `content-uuid`. \n- If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", "operationId": "postAssessmentPlan", "responses": { "201": { @@ -2007,7 +2007,7 @@ "Profile" ], "summary": "Adds a new profile.", - "description": "Adds a new profile.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). If present, the implementaiton must use this value as the `content-uuid`. If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", + "description": "Adds a new profile.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). \n\n- If present, the implementaiton must use this value as the `content-uuid`. \n- If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", "operationId": "postProfile", "responses": { "201": { @@ -4496,7 +4496,7 @@ "Assessment Results" ], "summary": "Adds a new assessment results.", - "description": "Adds a new assessment results.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). If present, the implementaiton must use this value as the `content-uuid`. If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", + "description": "Adds a new assessment results.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). \n\n- If present, the implementaiton must use this value as the `content-uuid`. \n- If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", "operationId": "postAssessmentResults", "responses": { "201": { @@ -6337,7 +6337,7 @@ "Catalog" ], "summary": "Adds a new catalog.", - "description": "Adds a new catalog.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). If present, the implementaiton must use this value as the `content-uuid`. If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", + "description": "Adds a new catalog.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). \n\n- If present, the implementaiton must use this value as the `content-uuid`. \n- If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", "operationId": "postCatalog", "responses": { "201": { @@ -8178,7 +8178,7 @@ "System Security Plan" ], "summary": "Adds a new system security plan.", - "description": "Adds a new system security plan.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). If present, the implementaiton must use this value as the `content-uuid`. If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", + "description": "Adds a new system security plan.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). \n\n- If present, the implementaiton must use this value as the `content-uuid`. \n- If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", "operationId": "postSystemSecurityPlan", "responses": { "201": { @@ -10019,7 +10019,7 @@ "Plan of Action and Milestones" ], "summary": "Adds a new plan of action and milestones.", - "description": "Adds a new plan of action and milestones.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). If present, the implementaiton must use this value as the `content-uuid`. If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", + "description": "Adds a new plan of action and milestones.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). \n\n- If present, the implementaiton must use this value as the `content-uuid`. \n- If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", "operationId": "postPlanOfActionAndMilestones", "responses": { "201": { @@ -11860,7 +11860,7 @@ "Component Definition" ], "summary": "Adds a new component definition.", - "description": "Adds a new component definition.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). If present, the implementaiton must use this value as the `content-uuid`. If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", + "description": "Adds a new component definition.\n\n **The client _must_** include the `Content-type` HTML header and set it to one of the following:\n - `application/json` when sending an OSCAL file in JSON format;\n - `application/xml` when sending an OSCAL file in XML format; or\n - `application/yaml` when sending an OSCAL file in YAML format. \n\n **The implementation _must_** accept all three OSCAL formats. OSCAL content sent to the server in any one of the three formats _must_ be made available in all three formats for the relevant GET method/endpoint combinations.\n\n **The implementation _must_** check for the presence of an `identifer` with a `scheme` value of `http://oscal.io/oscal/identifier/content-uuid` in the document ID array (`//metaschema/document-ids`). \n\n- If present, the implementaiton must use this value as the `content-uuid`. \n- If not present, the implementation must generate a v4 or v5 UUID for use as the `content-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/content-uuid` as the `scheme` value. \n", "operationId": "postComponentDefinition", "responses": { "201": { From ec925af0b9d798aafeb030c4a791df8ebc0b7a1f Mon Sep 17 00:00:00 2001 From: Brian Ruf Date: Thu, 5 Sep 2024 15:14:04 -0400 Subject: [PATCH 10/17] fixed snapshotID --- OSCALRestOpenAPI.json | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/OSCALRestOpenAPI.json b/OSCALRestOpenAPI.json index 09fd2aa..3c0a66c 100644 --- a/OSCALRestOpenAPI.json +++ b/OSCALRestOpenAPI.json @@ -1613,7 +1613,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, @@ -1720,7 +1720,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, @@ -1850,7 +1850,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, @@ -3554,7 +3554,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, @@ -3661,7 +3661,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, @@ -3791,7 +3791,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, @@ -5943,7 +5943,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, @@ -6050,7 +6050,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, @@ -6180,7 +6180,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, @@ -7784,7 +7784,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, @@ -7891,7 +7891,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, @@ -8021,7 +8021,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, @@ -9625,7 +9625,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, @@ -9732,7 +9732,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, @@ -9862,7 +9862,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, @@ -11466,7 +11466,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, @@ -11573,7 +11573,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, @@ -11703,7 +11703,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, @@ -13307,7 +13307,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, @@ -13414,7 +13414,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, @@ -13544,7 +13544,7 @@ } }, { - "name": "snapshotID", + "name": "snapshot-uuid", "in": "path", "description": "ID of Snapshot", "required": true, From 249ad21e9de0d8b0e0fa149ce756665c7fcb9409 Mon Sep 17 00:00:00 2001 From: Brian Ruf Date: Mon, 9 Sep 2024 13:12:42 -0400 Subject: [PATCH 11/17] improved XML handling --- OSCALRestOpenAPI.json | 35 +++++++---------------------------- 1 file changed, 7 insertions(+), 28 deletions(-) diff --git a/OSCALRestOpenAPI.json b/OSCALRestOpenAPI.json index 3c0a66c..071b6f4 100644 --- a/OSCALRestOpenAPI.json +++ b/OSCALRestOpenAPI.json @@ -13631,10 +13631,7 @@ }, "OSCALCatalogXML": { "type": "object", - "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_catalog_schema.json#/definitions/assembly_oscal-catalog_catalog", - "xml": { - "name": "catalog" - } + "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_catalog_schema.json#/definitions/assembly_oscal-catalog_catalog" }, "OSCALProfile": { "type": "object", @@ -13646,10 +13643,7 @@ }, "OSCALProfileXML": { "type": "object", - "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_profile_schema.json#/definitions/assembly_oscal-profile_profile", - "xml": { - "name": "profile" - } + "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_profile_schema.json#/definitions/assembly_oscal-profile_profile" }, "OSCALComponentDefinition": { "type": "object", @@ -13661,10 +13655,7 @@ }, "OSCALComponentDefinitionXML": { "type": "object", - "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_component_schema.json#/definitions/assembly_oscal-component-definition_component-definition", - "xml": { - "name": "component-definition" - } + "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_component_schema.json#/definitions/assembly_oscal-component-definition_component-definition" }, "OSCALSystemSecurityPlan": { "type": "object", @@ -13676,10 +13667,7 @@ }, "OSCALSystemSecurityPlanXML": { "type": "object", - "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_ssp_schema.json#/definitions/assembly_oscal-ssp_system-security-plan", - "xml": { - "name": "system-security-plan" - } + "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_ssp_schema.json#/definitions/assembly_oscal-ssp_system-security-plan" }, "OSCALPlanOfActionAndMilestones": { "type": "object", @@ -13691,10 +13679,7 @@ }, "OSCALPlanOfActionAndMilestonesXML": { "type": "object", - "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_poam_schema.json#/definitions/assembly_oscal-poam_plan-of-action-and-milestones", - "xml": { - "name": "plan-of-action-and-milestones" - } + "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_poam_schema.json#/definitions/assembly_oscal-poam_plan-of-action-and-milestones" }, "OSCALAssessmentPlan": { "type": "object", @@ -13706,10 +13691,7 @@ }, "OSCALAssessmentPlanXML": { "type": "object", - "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_assessment-plan_schema.json#/definitions/assembly_oscal-ap_assessment-plan", - "xml": { - "name": "assessment-plan" - } + "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_assessment-plan_schema.json#/definitions/assembly_oscal-ap_assessment-plan" }, "OSCALErrorMessage": { "type": "object", @@ -13732,10 +13714,7 @@ }, "OSCALAssessmentResultsXML": { "type": "object", - "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_assessment-results_schema.json#/definitions/assembly_oscal-ar_assessment-results", - "xml": { - "name": "assessment-results" - } + "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_assessment-results_schema.json#/definitions/assembly_oscal-ar_assessment-results" }, "OSCALAttachmentEntry": { "$ref": "#/components/schemas/OSCALResource" From 231b1c4b7ace59aa2846d0572888ce3d2ffddfb5 Mon Sep 17 00:00:00 2001 From: Brian Ruf Date: Tue, 10 Sep 2024 11:41:50 -0400 Subject: [PATCH 12/17] updated descriptions for POST snapshots and POST resolved-snapshots --- OSCALRestOpenAPI.json | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/OSCALRestOpenAPI.json b/OSCALRestOpenAPI.json index 071b6f4..255b456 100644 --- a/OSCALRestOpenAPI.json +++ b/OSCALRestOpenAPI.json @@ -1470,7 +1470,7 @@ "Assessment Plan" ], "summary": "Creates a snapshot of the file in its current state.", - "description": "Creates a snapshot of the file in its current state. The implementation _must_ assign and track a unique identifier for the snapshot, by which the snapshot may be referenced later. The implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", + "description": "Creates a snapshot of the file in its current state. The implementation must generate a v4 or v5 UUID for use as the `snapshot-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/snapshot-uuid` as the scheme value.\n\nThe implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "postAssessmentPlanSnapshot", "parameters": [ { @@ -3411,7 +3411,7 @@ "Profile" ], "summary": "Creates a snapshot of the file in its current state.", - "description": "Creates a snapshot of the file in its current state. The implementation _must_ assign and track a unique identifier for the snapshot, by which the snapshot may be referenced later. The implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", + "description": "Creates a snapshot of the file in its current state. The implementation must generate a v4 or v5 UUID for use as the `snapshot-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/snapshot-uuid` as the scheme value.\n\n The implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "postProfileSnapshot", "parameters": [ { @@ -3959,7 +3959,7 @@ "Profile" ], "summary": "Resolves the profile and saves the result.", - "description": "Processes the profile and creates a snapshot as a resolved profile catalog. The implementation _must_ assign and track a unique identifier for the snapshot, by which the snapshot may be referenced later. The implementation _must_ add the `snapshot-created` property and a `snapshot-type` set to `resolved-profile` in the OSCAL document's `metadata` as follows:\n\n - **Resolved Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Resolved Snapshot Type** Property [**1 or more**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"resolved-profile\"`\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation implementation _may_ set a `snapshot-description` property, as well as `snapshot-label` and additional `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Resolved Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional resolved snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Resolved Snapshot Type** Property [**1 or more**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"resolved-profile\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", + "description": "Processes the profile and creates a snapshot as a resolved profile catalog. The implementation must generate a v4 or v5 UUID for use as the `resolved-snapshot-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/resolved-snapshot-uuid` as the scheme value.\n\n The implementation _must_ add the `snapshot-created` property and a `snapshot-type` set to `resolved-profile` in the OSCAL document's `metadata` as follows:\n\n - **Resolved Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Resolved Snapshot Type** Property [**1 or more**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"resolved-profile\"`\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation implementation _may_ set a `snapshot-description` property, as well as `snapshot-label` and additional `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Resolved Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional resolved snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Resolved Snapshot Type** Property [**1 or more**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"resolved-profile\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "postProfileResolvedSnapshot", "parameters": [ { @@ -5800,7 +5800,7 @@ "Assessment Results" ], "summary": "Creates a snapshot of the file in its current state.", - "description": "Creates a snapshot of the file in its current state. The implementation _must_ assign and track a unique identifier for the snapshot, by which the snapshot may be referenced later. The implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", + "description": "Creates a snapshot of the file in its current state. The implementation must generate a v4 or v5 UUID for use as the `snapshot-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/snapshot-uuid` as the scheme value.\n\n The implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "postAssessmentResultsSnapshot", "parameters": [ { @@ -7641,7 +7641,7 @@ "Catalog" ], "summary": "Creates a snapshot of the file in its current state.", - "description": "Creates a snapshot of the file in its current state. The implementation _must_ assign and track a unique identifier for the snapshot, by which the snapshot may be referenced later. The implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", + "description": "Creates a snapshot of the file in its current state. The implementation must generate a v4 or v5 UUID for use as the `snapshot-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/snapshot-uuid` as the scheme value.\n\n The implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "postCatalogSnapshot", "parameters": [ { @@ -9482,7 +9482,7 @@ "System Security Plan" ], "summary": "Creates a snapshot of the file in its current state.", - "description": "Creates a snapshot of the file in its current state. The implementation _must_ assign and track a unique identifier for the snapshot, by which the snapshot may be referenced later. The implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", + "description": "Creates a snapshot of the file in its current state. The implementation must generate a v4 or v5 UUID for use as the `snapshot-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/snapshot-uuid` as the scheme value.\n\n The implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "postSystemSecurityPlanSnapshot", "parameters": [ { @@ -11323,7 +11323,7 @@ "Plan of Action and Milestones" ], "summary": "Creates a snapshot of the file in its current state.", - "description": "Creates a snapshot of the file in its current state. The implementation _must_ assign and track a unique identifier for the snapshot, by which the snapshot may be referenced later. The implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", + "description": "Creates a snapshot of the file in its current state. The implementation must generate a v4 or v5 UUID for use as the `snapshot-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/snapshot-uuid` as the scheme value.\n\n The implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "postPlanOfActionAndMilestonesSnapshot", "parameters": [ { @@ -13164,7 +13164,7 @@ "Component Definition" ], "summary": "Creates a snapshot of the file in its current state.", - "description": "Creates a snapshot of the file in its current state. The implementation _must_ assign and track a unique identifier for the snapshot, by which the snapshot may be referenced later. The implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", + "description": "Creates a snapshot of the file in its current state.The implementation must generate a v4 or v5 UUID for use as the `snapshot-uuid` and insert it into document ID array using `http://oscal.io/oscal/identifier/snapshot-uuid` as the scheme value.\n\n The implementation _must_ add the `snapshot-created` property to the OSCAL document's `metadata` as follows:\n\n - **Snapshot Created** Property [**Exactly 1 (REQUIRED)**]:\n - `\"name\" : \"snapshot-created\"`\n - `\"value\" : \"2024-03-24T16:10:42.251Z\"` (date-time-with-timezone)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n The implementation _may_ add a `snapshot-description` property, as well as `snapshot-label` and `snapshot-type` properties to the OSCAL document's `metadata` as follows when included in the payload from the client:\n\n - **Snapshot Description** Property [**0 or 1 (OPTIONAL)**]:\n - `\"name\" : \"snapshot-description\"`\n - `\"value\" : \"na\"` (`value` is required by OSCAL, but not needed for this property. It can include any string.)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n - `\"remarks\" : \"An optional snapshot description.\"` (markup-multiline)\n\n - **Snapshot Label** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-label\"`\n - `\"value\" : \"v1.2.3\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n - **Snapshot Type** Property [**0 or more (OPTIONAL)**]:\n - `\"name\" : \"snapshot-type\"`\n - `\"value\" : \"published\"` (token)\n - `\"ns\" : \"http://oscal.io/ns/oscal/1.0.0\"`\n\n All of the above properties are OSCAL extensions and must include the namespace (`ns`) information.\n", "operationId": "postComponentDefinitionSnapshot", "parameters": [ { From 17c41a9d5a32e975e512e9f6869513d5162afef4 Mon Sep 17 00:00:00 2001 From: Brian Ruf Date: Wed, 11 Sep 2024 16:16:13 -0400 Subject: [PATCH 13/17] removed 'status' from snapshot list --- OSCALRestOpenAPI.json | 3 --- 1 file changed, 3 deletions(-) diff --git a/OSCALRestOpenAPI.json b/OSCALRestOpenAPI.json index 255b456..4a9c1af 100644 --- a/OSCALRestOpenAPI.json +++ b/OSCALRestOpenAPI.json @@ -14186,9 +14186,6 @@ "type": "string" } }, - "status": { - "type": "string" - }, "remarks": { "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_catalog_schema.json#/definitions/field_oscal-metadata_remarks" } From d5ae371cd850ac62280f3c9d04b23c04274fc009 Mon Sep 17 00:00:00 2001 From: Brian Ruf Date: Wed, 11 Sep 2024 16:45:04 -0400 Subject: [PATCH 14/17] added to attachments list --- OSCALRestOpenAPI.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/OSCALRestOpenAPI.json b/OSCALRestOpenAPI.json index 4a9c1af..5586bf3 100644 --- a/OSCALRestOpenAPI.json +++ b/OSCALRestOpenAPI.json @@ -13934,6 +13934,10 @@ "OSCALAttachmentNoBase64": { "type": "object", "properties": { + "content-uuid": { + "type": "string", + "pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-4[0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$" + }, "resource-uuid": { "type": "string", "pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-4[0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$" From 7813c5f95b991df6a14816f56fdd4a65e11176a1 Mon Sep 17 00:00:00 2001 From: Brian Ruf Date: Thu, 12 Sep 2024 12:20:32 -0400 Subject: [PATCH 15/17] better aligned attachment handling with OSCAL syntax --- OSCALRestOpenAPI.json | 72 +++++++++++++------------------------------ 1 file changed, 22 insertions(+), 50 deletions(-) diff --git a/OSCALRestOpenAPI.json b/OSCALRestOpenAPI.json index 5586bf3..96c9b4b 100644 --- a/OSCALRestOpenAPI.json +++ b/OSCALRestOpenAPI.json @@ -13719,16 +13719,13 @@ "OSCALAttachmentEntry": { "$ref": "#/components/schemas/OSCALResource" }, - "OSCALAttachmentEntryXML": { - "$ref": "#/components/schemas/OSCALResourceXML" - }, "OSCALAttachments": { "type": "object", "properties": { "attachment-list": { "type": "array", "items": { - "$ref": "#/components/schemas/OSCALAttachmentNoBase64" + "$ref": "#/components/schemas/OSCALResourceNoBase64" } } } @@ -13931,7 +13928,7 @@ } } }, - "OSCALAttachmentNoBase64": { + "OSCALResourceNoBase64": { "type": "object", "properties": { "content-uuid": { @@ -13942,21 +13939,28 @@ "type": "string", "pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-4[0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$" }, - "file-name": { + "title": { "type": "string" }, - "media-type": { + "description": { "type": "string" }, - "title": { - "type": "string" + "document-ids": { + "type": "array", + "items": { + "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_catalog_schema.json#/definitions/field_oscal-metadata_document-id" + } }, - "published": { - "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_catalog_schema.json#/definitions/field_oscal-metadata_published" + "citation": { + "$ref": "#/components/schemas/OSCALCitation" + }, + "rlinks": { + "$ref": "#/components/schemas/OSCALRLinks" }, "remarks": { - "type": "string" - } + "$ref": "#/components/schemas/OSCALRemarks" + } + } }, "OSCALResource": { @@ -13964,7 +13968,11 @@ "properties": { "resource": { "properties": { - "uuid": { + "content-uuid": { + "type": "string", + "pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-4[0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$" + }, + "resource-uuid": { "type": "string", "pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-4[0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$" }, @@ -13996,42 +14004,6 @@ } } }, - "OSCALResourceXML": { - "type": "object", - "properties": { - "uuid": { - "type": "string", - "pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-4[0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$" - }, - "title": { - "type": "string" - }, - "description": { - "type": "string" - }, - "document-ids": { - "type": "array", - "items": { - "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_catalog_schema.json#/definitions/field_oscal-metadata_document-id" - } - }, - "citation": { - "$ref": "#/components/schemas/OSCALCitation" - }, - "rlinks": { - "$ref": "#/components/schemas/OSCALRLinks" - }, - "base64": { - "$ref": "#/components/schemas/OSCALBase64" - }, - "remarks": { - "$ref": "#/components/schemas/OSCALRemarks" - } - }, - "xml": { - "name": "resource" - } - }, "OSCALCitation": { "type": "object", "properties": { From 46f9e2cd0d9fe289c86178d569e013bc05b84829 Mon Sep 17 00:00:00 2001 From: Brian Ruf Date: Thu, 12 Sep 2024 14:15:02 -0400 Subject: [PATCH 16/17] further normalized /resource endpoints --- OSCALRestOpenAPI.json | 46 +++++++++++++++++++++++++++++++++++++------ 1 file changed, 40 insertions(+), 6 deletions(-) diff --git a/OSCALRestOpenAPI.json b/OSCALRestOpenAPI.json index 96c9b4b..c93e9d8 100644 --- a/OSCALRestOpenAPI.json +++ b/OSCALRestOpenAPI.json @@ -13717,7 +13717,45 @@ "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_assessment-results_schema.json#/definitions/assembly_oscal-ar_assessment-results" }, "OSCALAttachmentEntry": { - "$ref": "#/components/schemas/OSCALResource" + "type": "object", + "properties": { + "resource": { + "properties": { + "content-uuid": { + "type": "string", + "pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-4[0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$" + }, + "resource-uuid": { + "type": "string", + "pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-4[0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$" + }, + "title": { + "type": "string" + }, + "description": { + "type": "string" + }, + "document-ids": { + "type": "array", + "items": { + "$ref": "https://raw.githubusercontent.com/EasyDynamics/OSCAL/json-schema-ref-by-path/json/schema/oscal_catalog_schema.json#/definitions/field_oscal-metadata_document-id" + } + }, + "citation": { + "$ref": "#/components/schemas/OSCALCitation" + }, + "rlinks": { + "$ref": "#/components/schemas/OSCALRLinks" + }, + "base64": { + "$ref": "#/components/schemas/OSCALBase64" + }, + "remarks": { + "$ref": "#/components/schemas/OSCALRemarks" + } + } + } + } }, "OSCALAttachments": { "type": "object", @@ -13968,11 +14006,7 @@ "properties": { "resource": { "properties": { - "content-uuid": { - "type": "string", - "pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-4[0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$" - }, - "resource-uuid": { + "uuid": { "type": "string", "pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-4[0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$" }, From 09faf36b4e322ff5813dd7421eed76afac0804e3 Mon Sep 17 00:00:00 2001 From: Brian Ruf Date: Thu, 12 Sep 2024 14:51:00 -0400 Subject: [PATCH 17/17] incremented version number --- OSCALRestOpenAPI.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OSCALRestOpenAPI.json b/OSCALRestOpenAPI.json index c93e9d8..05fe7cb 100644 --- a/OSCALRestOpenAPI.json +++ b/OSCALRestOpenAPI.json @@ -12,7 +12,7 @@ "name" : "Creative Commons Attribution Share Alike 4.0 International", "url" : "https://github.com/EasyDynamics/oscal-rest/blob/develop/LICENSE" }, - "version": "1.0.1" + "version": "1.0.2" }, "externalDocs": { "description": "Find out more about OSCAL",