1{ 2 "version":"2.0", 3 "metadata":{ 4 "apiVersion":"2024-01-01", 5 "endpointPrefix":"scn", 6 "jsonVersion":"1.1", 7 "protocol":"rest-json", 8 "serviceFullName":"AWS Supply Chain", 9 "serviceId":"SupplyChain", 10 "signatureVersion":"v4", 11 "signingName":"scn", 12 "uid":"supplychain-2024-01-01" 13 }, 14 "operations":{ 15 "CreateBillOfMaterialsImportJob":{ 16 "name":"CreateBillOfMaterialsImportJob", 17 "http":{ 18 "method":"POST", 19 "requestUri":"/api/configuration/instances/{instanceId}/bill-of-materials-import-jobs", 20 "responseCode":200 21 }, 22 "input":{"shape":"CreateBillOfMaterialsImportJobRequest"}, 23 "output":{"shape":"CreateBillOfMaterialsImportJobResponse"}, 24 "errors":[ 25 {"shape":"ServiceQuotaExceededException"}, 26 {"shape":"ThrottlingException"}, 27 {"shape":"ResourceNotFoundException"}, 28 {"shape":"AccessDeniedException"}, 29 {"shape":"ValidationException"}, 30 {"shape":"InternalServerException"}, 31 {"shape":"ConflictException"} 32 ], 33 "documentation":"<p>CreateBillOfMaterialsImportJob creates an import job for the Product Bill Of Materials (BOM) entity. For information on the product_bom entity, see the AWS Supply Chain User Guide.</p> <p>The CSV file must be located in an Amazon S3 location accessible to AWS Supply Chain. It is recommended to use the same Amazon S3 bucket created during your AWS Supply Chain instance creation.</p>", 34 "idempotent":true 35 }, 36 "GetBillOfMaterialsImportJob":{ 37 "name":"GetBillOfMaterialsImportJob", 38 "http":{ 39 "method":"GET", 40 "requestUri":"/api/configuration/instances/{instanceId}/bill-of-materials-import-jobs/{jobId}", 41 "responseCode":200 42 }, 43 "input":{"shape":"GetBillOfMaterialsImportJobRequest"}, 44 "output":{"shape":"GetBillOfMaterialsImportJobResponse"}, 45 "errors":[ 46 {"shape":"ServiceQuotaExceededException"}, 47 {"shape":"ResourceNotFoundException"}, 48 {"shape":"ThrottlingException"}, 49 {"shape":"AccessDeniedException"}, 50 {"shape":"ValidationException"}, 51 {"shape":"InternalServerException"}, 52 {"shape":"ConflictException"} 53 ], 54 "documentation":"<p>Get status and details of a BillOfMaterialsImportJob.</p>" 55 } 56 }, 57 "shapes":{ 58 "AccessDeniedException":{ 59 "type":"structure", 60 "members":{ 61 "message":{"shape":"String"} 62 }, 63 "documentation":"<p>You do not have the required privileges to perform this action.</p>", 64 "error":{ 65 "httpStatusCode":403, 66 "senderFault":true 67 }, 68 "exception":true 69 }, 70 "BillOfMaterialsImportJob":{ 71 "type":"structure", 72 "required":[ 73 "instanceId", 74 "jobId", 75 "status", 76 "s3uri" 77 ], 78 "members":{ 79 "instanceId":{ 80 "shape":"UUID", 81 "documentation":"<p>The BillOfMaterialsImportJob instanceId.</p>" 82 }, 83 "jobId":{ 84 "shape":"UUID", 85 "documentation":"<p>The BillOfMaterialsImportJob jobId.</p>" 86 }, 87 "status":{ 88 "shape":"ConfigurationJobStatus", 89 "documentation":"<p>The BillOfMaterialsImportJob ConfigurationJobStatus.</p>" 90 }, 91 "s3uri":{ 92 "shape":"ConfigurationS3Uri", 93 "documentation":"<p>The S3 URI from which the CSV is read.</p>" 94 }, 95 "message":{ 96 "shape":"String", 97 "documentation":"<p>When the BillOfMaterialsImportJob has reached a terminal state, there will be a message.</p>" 98 } 99 }, 100 "documentation":"<p>The BillOfMaterialsImportJob details.</p>" 101 }, 102 "ClientToken":{ 103 "type":"string", 104 "documentation":"<p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.</p>", 105 "max":126, 106 "min":33 107 }, 108 "ConfigurationJobStatus":{ 109 "type":"string", 110 "documentation":"<p>The status of the job.</p>", 111 "enum":[ 112 "NEW", 113 "FAILED", 114 "IN_PROGRESS", 115 "QUEUED", 116 "SUCCESS" 117 ] 118 }, 119 "ConfigurationS3Uri":{ 120 "type":"string", 121 "min":10, 122 "pattern":"[sS]3://[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]/.+" 123 }, 124 "ConflictException":{ 125 "type":"structure", 126 "members":{ 127 "message":{"shape":"String"} 128 }, 129 "documentation":"<p>Updating or deleting a resource can cause an inconsistent state.</p>", 130 "error":{ 131 "httpStatusCode":409, 132 "senderFault":true 133 }, 134 "exception":true 135 }, 136 "CreateBillOfMaterialsImportJobRequest":{ 137 "type":"structure", 138 "required":[ 139 "instanceId", 140 "s3uri" 141 ], 142 "members":{ 143 "instanceId":{ 144 "shape":"UUID", 145 "documentation":"<p>The AWS Supply Chain instance identifier.</p>", 146 "location":"uri", 147 "locationName":"instanceId" 148 }, 149 "s3uri":{ 150 "shape":"ConfigurationS3Uri", 151 "documentation":"<p>The S3 URI of the CSV file to be imported. The bucket must grant permissions for AWS Supply Chain to read the file.</p>" 152 }, 153 "clientToken":{ 154 "shape":"ClientToken", 155 "documentation":"<p>An idempotency token.</p>", 156 "idempotencyToken":true 157 } 158 }, 159 "documentation":"<p>The request parameters for CreateBillOfMaterialsImportJob.</p>" 160 }, 161 "CreateBillOfMaterialsImportJobResponse":{ 162 "type":"structure", 163 "required":["jobId"], 164 "members":{ 165 "jobId":{ 166 "shape":"UUID", 167 "documentation":"<p>The new BillOfMaterialsImportJob identifier.</p>" 168 } 169 }, 170 "documentation":"<p>The response parameters of CreateBillOfMaterialsImportJob.</p>" 171 }, 172 "GetBillOfMaterialsImportJobRequest":{ 173 "type":"structure", 174 "required":[ 175 "instanceId", 176 "jobId" 177 ], 178 "members":{ 179 "instanceId":{ 180 "shape":"UUID", 181 "documentation":"<p>The AWS Supply Chain instance identifier.</p>", 182 "location":"uri", 183 "locationName":"instanceId" 184 }, 185 "jobId":{ 186 "shape":"UUID", 187 "documentation":"<p>The BillOfMaterialsImportJob identifier.</p>", 188 "location":"uri", 189 "locationName":"jobId" 190 } 191 }, 192 "documentation":"<p>The request parameters for GetBillOfMaterialsImportJob.</p>" 193 }, 194 "GetBillOfMaterialsImportJobResponse":{ 195 "type":"structure", 196 "required":["job"], 197 "members":{ 198 "job":{ 199 "shape":"BillOfMaterialsImportJob", 200 "documentation":"<p>The BillOfMaterialsImportJob.</p>" 201 } 202 }, 203 "documentation":"<p>The response parameters for GetBillOfMaterialsImportJob.</p>" 204 }, 205 "InternalServerException":{ 206 "type":"structure", 207 "members":{ 208 "message":{"shape":"String"} 209 }, 210 "documentation":"<p>Unexpected error during processing of request.</p>", 211 "error":{"httpStatusCode":500}, 212 "exception":true, 213 "fault":true, 214 "retryable":{"throttling":false} 215 }, 216 "ResourceNotFoundException":{ 217 "type":"structure", 218 "members":{ 219 "message":{"shape":"String"} 220 }, 221 "documentation":"<p>Request references a resource which does not exist.</p>", 222 "error":{ 223 "httpStatusCode":404, 224 "senderFault":true 225 }, 226 "exception":true 227 }, 228 "ServiceQuotaExceededException":{ 229 "type":"structure", 230 "members":{ 231 "message":{"shape":"String"} 232 }, 233 "documentation":"<p>Request would cause a service quota to be exceeded.</p>", 234 "error":{ 235 "httpStatusCode":402, 236 "senderFault":true 237 }, 238 "exception":true 239 }, 240 "String":{"type":"string"}, 241 "ThrottlingException":{ 242 "type":"structure", 243 "members":{ 244 "message":{"shape":"String"} 245 }, 246 "documentation":"<p>Request was denied due to request throttling.</p>", 247 "error":{ 248 "httpStatusCode":429, 249 "senderFault":true 250 }, 251 "exception":true, 252 "retryable":{"throttling":true} 253 }, 254 "UUID":{ 255 "type":"string", 256 "max":36, 257 "min":36, 258 "pattern":"[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}" 259 }, 260 "ValidationException":{ 261 "type":"structure", 262 "members":{ 263 "message":{"shape":"String"} 264 }, 265 "documentation":"<p>The input does not satisfy the constraints specified by an AWS service.</p>", 266 "error":{ 267 "httpStatusCode":400, 268 "senderFault":true 269 }, 270 "exception":true 271 } 272 }, 273 "documentation":"<p> AWS Supply Chain is a cloud-based application that works with your enterprise resource planning (ERP) and supply chain management systems. Using AWS Supply Chain, you can connect and extract your inventory, supply, and demand related data from existing ERP or supply chain systems into a single data model. </p> <p>The AWS Supply Chain API supports configuration data import for Supply Planning.</p> <p> All AWS Supply chain API operations are Amazon-authenticated and certificate-signed. They not only require the use of the AWS SDK, but also allow for the exclusive use of AWS Identity and Access Management users and roles to help facilitate access, trust, and permission policies. </p>" 274} 275