# Updates a Brand Order.

Updates a brand Order. Only INCOMPLETE or NEW orders can be retried. Retry flow will get new properties and attachments from the brand and apply the same validations as create Order. No body is needed.

Endpoint: POST /v1/projects/{projectId}/us/brands/{brandId}/orders/{orderId}/retry
Version: 1.0.0
Security: OAuth2

## Path parameters:

  - `projectId` (string, required)
    Customer's project id

  - `brandId` (string, required)
    Brand ID reference

  - `orderId` (string, required)
    Order ID

## Response 200 fields (application/json):

  - `brandOrderId` (string)
    The unique identifier for the brand order.

  - `brandId` (string)
    Brand ID this Order belongs to.

  - `status` (string)
    Brand order status represents the current state of the brand order in the system. When a brand order is created, it is in NEW status. After that, it can be moved to PENDING status when the validation process starts, then it can be moved to REJECTED or INCOMPLETE if the validation process fails, or to COMPLETED if the validation process is successful. When a brand order is in INCOMPLETE status, customer can update the brand/brand order. Updating the brand order moves the brand order to PENDING_REVIEW state, what means that is waiting for another review after the customer changes. Finally, a brand order can be moved to ARCHIVED status after a cancellation.
    Enum: "NEW", "PENDING", "PENDING_REVIEW", "REJECTED", "INCOMPLETE", "COMPLETED", "ARCHIVED"

  - `metadataName` (string)
    Metadata name of the brand order, which identifies the type of the order and the process it follows. This field is useful to quickly check the type of the order without having to call the Get Brand Order endpoint.
    Enum: "US_SC_REGISTRY", "US_SC_GCH", "US_SC_GCH_CONTENT_PROVIDER", "US_10DLC_TCR_PRIVATE_BRAND_REGISTRATION", "US_10DLC_TCR_PUBLIC_BRAND_REGISTRATION", "US_10DLC_TCR_PRIVATE_BRAND_UPDATE", "US_10DLC_TCR_PUBLIC_BRAND_UPDATE", "US_10DLC_TCR_PRIVATE_MOCK", "US_10DLC_TCR_PUBLIC_MOCK", "US_10DLC_TCR_SOLE_PROPRIETOR", "US_10DLC_TCR_PRIVATE_STANDARD_BRAND_REGISTRATION", "US_10DLC_TCR_PRIVATE_ENHANCED_BRAND_REGISTRATION", "US_10DLC_TCR_PUBLIC_STANDARD_BRAND_REGISTRATION", "US_10DLC_TCR_PUBLIC_ENHANCED_BRAND_REGISTRATION", "US_RCS_TCR_PRIVATE_BRAND_REGISTRATION", "US_RCS_TCR_PUBLIC_BRAND_REGISTRATION", "US_RCS_TCR_UPDATE_ASSETS"

  - `logs` (array)
    Detailed history of the status changes this brand went through

  - `logs.createTime` (string)
    Create time of this log entry. ISO date time format in UTC.

  - `logs.message` (string)
    Optional message with details of the brand status update or new channel added. It can contain information provided by the agent handling the request.

  - `logs.brandCurrentState` (string)
    State of the order after this entry was created
    Enum: same as `status` (7 values)

  - `logs.brandPreviousState` (string)
    State of the order before this entry was created
    Enum: same as `status` (7 values)

  - `channels` (array)
    Channels available for this Brand Order

  - `thirdPartyMetadata` (array)
    Third party metadata available for this Brand Order

  - `thirdPartyMetadata.name` (string)
    Third Party metadata property name.

  - `thirdPartyMetadata.value` (string)
    Third party metadata property value.

  - `pricing` (object)
    Includes details of the fee associated with the process to be carried out. For more information about pricing, you may consult your Account Manager or the Sinch Customer Dashboard.

  - `pricing.amount` (string)
    The amount of money.

  - `pricing.currencyCode` (string)
    The currency of the money amount, in ISO 4217 format.

  - `callbackUrl` (string)
    The URL to receive the order status update callback. The URL must be a valid URL and must be reachable from Sinch.

  - `createTime` (string)
    Create time of the request. ISO date time format in UTC.

  - `updateTime` (string)
    Update time of the request. ISO date time format in UTC.

## Response 400 fields (application/problem+json):

  - `type` (string, required)
    A URI reference that identifies the problem type. This URI reference should provide a human-readable explanation of the problem type when dereferenced.

  - `title` (string, required)
    A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for localization purposes.

  - `body` (object) — one of:
    - variant 1:
      - `errors` (array)
        Detailed information about the error. This field can contain multiple error details to provide more context about the error that occurred.
      - `errors.pointer` (string)
        JSON pointer to the field that caused the error, following RFC 6901.
      - `errors.detail` (string)
        A human-readable explanation specific to this occurrence of the problem. Like title, this field is not intended for end users, but rather for developers to understand the details of the error that occurred.
    - variant 2:
      - `detail` (string)
        A human-readable explanation of the error that occurred.


