# Update Archetype

Update an existing archetype

Endpoint: PUT /sbom/v1/orgs/{orgId}/archetypes/{archetypeId}
Version: 1.0
Security: GlobalSession_header_Authorization

## Path parameters:

  - `orgId` (integer, required)
    Organization id
    Example: 38808

  - `archetypeId` (integer, required)
    archetype id
    Example: 101

## Request fields (application/json):

  - `category` (string)
    Following are the 'categories' that the system supports. Specifying a category outside this list does not cause an error, instead creates an archetype with the given 'category'.
	* bucket_types
	* part_types
	* file_sub_types
	* file_types
	* link_types
	* origin_types
    Example: "bucket_types"

  - `key` (string)
    archetype key
    Example: "app_key"

  - `label` (string)
    archetype label
    Example: "Application Name"

  - `source` (string)
    Following are the 'source' that the system supports that can be used to map the archetype. Specifying a source outside this list does not cause an error.
	* internal
	* cyclonedx
	* spdx
    Example: "internal"

## Response 200 fields (application/json):

  - `category` (string)
    Example: "bucket_types"

  - `createdBy` (string)
    Example: {"email":"adam@server.com","firstName":"Adam","id":2435456,"lastName":"Stone"}

  - `createdOn` (string)
    Example: "2022-07-20 04:55:49"

  - `id` (integer)
    Example: 101

  - `key` (string)
    Example: "application_type"

  - `label` (string)
    Example: "Application Name"

  - `modifiedBy` (string)
    Example: {"email":"adam@server.com","firstName":"Adam","id":2435456,"lastName":"Stone"}

  - `modifiedOn` (string)
    Example: "2022-07-20 04:55:49"

  - `orgId` (integer)
    Example: 38808

  - `source` (string)
    Example: "custom"

  - `trailId` (integer)
    Example: 22

## Response 400 fields (application/vnd.goa.error):

  - `fault` (boolean, required)
    Is the error a server-side fault?
    Example: true

  - `id` (string, required)
    ID is a unique identifier for this particular occurrence of the problem.
    Example: "123abc"

  - `message` (string, required)
    Message is a human-readable explanation specific to this occurrence of the problem.
    Example: "server is unable to handle the request"

  - `name` (string, required)
    Name is the name of this class of errors.
    Example: "bad_gateway"

  - `temporary` (boolean, required)
    Is the error temporary?
    Example: true

  - `timeout` (boolean, required)
    Is the error a timeout?
    Example: true

## Response 401 fields (application/vnd.goa.error):

  - `fault` (boolean, required)
    Is the error a server-side fault?
    Example: true

  - `id` (string, required)
    ID is a unique identifier for this particular occurrence of the problem.
    Example: "123abc"

  - `message` (string, required)
    Message is a human-readable explanation specific to this occurrence of the problem.
    Example: "server is unable to handle the request"

  - `name` (string, required)
    Name is the name of this class of errors.
    Example: "bad_gateway"

  - `temporary` (boolean, required)
    Is the error temporary?
    Example: true

  - `timeout` (boolean, required)
    Is the error a timeout?
    Example: true

## Response 403 fields (application/vnd.goa.error):

  - `fault` (boolean, required)
    Is the error a server-side fault?
    Example: true

  - `id` (string, required)
    ID is a unique identifier for this particular occurrence of the problem.
    Example: "123abc"

  - `message` (string, required)
    Message is a human-readable explanation specific to this occurrence of the problem.
    Example: "server is unable to handle the request"

  - `name` (string, required)
    Name is the name of this class of errors.
    Example: "bad_gateway"

  - `temporary` (boolean, required)
    Is the error temporary?
    Example: true

  - `timeout` (boolean, required)
    Is the error a timeout?
    Example: true

## Response 404 fields (application/vnd.goa.error):

  - `fault` (boolean, required)
    Is the error a server-side fault?
    Example: true

  - `id` (string, required)
    ID is a unique identifier for this particular occurrence of the problem.
    Example: "123abc"

  - `message` (string, required)
    Message is a human-readable explanation specific to this occurrence of the problem.
    Example: "server is unable to handle the request"

  - `name` (string, required)
    Name is the name of this class of errors.
    Example: "bad_gateway"

  - `temporary` (boolean, required)
    Is the error temporary?
    Example: true

  - `timeout` (boolean, required)
    Is the error a timeout?
    Example: true

## Response 500 fields (application/vnd.goa.error):

  - `fault` (boolean, required)
    Is the error a server-side fault?
    Example: true

  - `id` (string, required)
    ID is a unique identifier for this particular occurrence of the problem.
    Example: "123abc"

  - `message` (string, required)
    Message is a human-readable explanation specific to this occurrence of the problem.
    Example: "server is unable to handle the request"

  - `name` (string, required)
    Name is the name of this class of errors.
    Example: "bad_gateway"

  - `temporary` (boolean, required)
    Is the error temporary?
    Example: true

  - `timeout` (boolean, required)
    Is the error a timeout?
    Example: true

## Response 502 fields (application/vnd.goa.error):

  - `fault` (boolean, required)
    Is the error a server-side fault?
    Example: true

  - `id` (string, required)
    ID is a unique identifier for this particular occurrence of the problem.
    Example: "123abc"

  - `message` (string, required)
    Message is a human-readable explanation specific to this occurrence of the problem.
    Example: "server is unable to handle the request"

  - `name` (string, required)
    Name is the name of this class of errors.
    Example: "bad_gateway"

  - `temporary` (boolean, required)
    Is the error temporary?
    Example: true

  - `timeout` (boolean, required)
    Is the error a timeout?
    Example: true


