# Create SBOM Part

Register a part

Endpoint: POST /sbom/v1/orgs/{orgId}/parts
Version: 1.0
Security: GlobalSession_header_Authorization

## Path parameters:

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

## Request fields (application/json):

  - `additionalNotes` (string)
    additional notes
    Example: "Artistic License 1.0"

  - `bucketId` (integer, required)
    bucket id
    Example: 205

  - `catalogId` (integer)
    catalog associated to that part
    Example: 644

  - `copyrightText` (string)
    copyright text of the part
    Example: "copyright text"

  - `customFieldValues` (string)
    org specific custom field values for that particular bucket
    Example: "{'field1': 'value1','field2': 'value2'}"

  - `description` (string)
    part description
    Example: "some text"

  - `fileIds` (array)
    ids of files assocaited
    Example: [8587597350144002000,5372633121641905000]

  - `linkId` (integer)
    id of the other part it's linked to
    Example: 323

  - `linkNotes` (string)
    notes about the link
    Example: "link notes"

  - `linkTypeId` (integer)
    type of link to the other part. Ref: Archetypes api for details.
    Example: 345

  - `name` (string, required)
    part name
    Example: "Some Part name"

  - `noticesText` (string)
    notices text
    Example: "some text"

  - `originId` (integer)
    origin of the bucket. A bucket id from which this bucket was cloned or copied from.
    Example: 1

  - `originTypeId` (integer)
    origin type of the bucket. Ref: Archetypes api for details.
    Example: 1

  - `purl` (string)
    package url
    Example: "pkg:alpine/alpine-keys@2.4-r0?arch=x86_64"

  - `status` (string, required)
    status of the part
    Example: "Approved"

  - `typeId` (integer, required)
    type of the part Ref: Archetypes api for details.
    Example: 1

  - `url` (string)
    url
    Example: "Artistic License 1.0"

## Response 201 fields (application/json):

  - `id` (integer, required)
    ID of the newly created bucket
    Example: 205

## 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 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


