# Update a registration

The endpoint updates the registration with specified ID

Endpoint: PUT /v1/projects/{projectId}/registrations/{registrationId}
Version: 1.0.0
Security: OAuth2

## Path parameters:

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

  - `registrationId` (string, required)
    Id of the registration to be updated

## Request fields (application/json):

  - `callbackUrl` (string)
    Webhook URL to specify an endpoint for delivery of notifications about registration updates
    Example: "senderid.registrations.api.sinch.com"

  - `notificationContacts` (array)
    Email addresses that will be notified of any status changes of the registration.
    Example: ["jane.doe@example.com","john.doe@example.com"]

  - `requestDetails` (array)
    Details of the sender IDs to be registered. Details depend on the specific market requirements defined in the policy.

  - `requestDetails.additionalDetails` (array)
    Additional details required for this registration, e.g. company details, contact information or market specific details (only in RCS). Schema and content depend on the specific market requirements defined in the policy Json format is '{key:value, key:value}' with types like string, array, array of objects
    Example: [{"email":"email@mycompany.com"},{"companyName":"My Company Name","website":"https://www.mycompany.com"}]

  - `requestDetails.senderIdDetails` (array)
    Data related to the sender ID values requested in this registration. Schema and content depend on the specific market requirements defined in the policy. Json format is '{key:value, key:value}' with types like string, array, array of objects
    Example: [{"sender":"a sender value"}]

  - `tags` (array)
    User tags used for the registration. Tag have to start from '#' and contains only alphanumerics and dashes.
    Example: ["#myTag1","#myTag2"]

  - `servicePlanId` (string)
    Service plan ID or System ID that the registration applies to. When included, the sender id will be configured linked to the service/system plan.
    Example: "a23dccbf-919d-462f-8587-dec95a1b44de"

## Response 200 fields (application/json):

  - `attachments` (array)
    Files attached to this registration

  - `attachments.attachmentId` (string)
    Unique identifier of the attachment.
    Example: "d1c7ccbf-919d-462f-8587-dec95a1b11ee"

  - `attachments.createTime` (string)
    Create time of the request. ISO date time format in UTC without timezone offset.
    Example: "2021-11-03T14:30:03"

  - `attachments.fileName` (string)
    Human readable name of the attachment.
    Example: "sender_id_registration_form.docx"

  - `attachments.mimeType` (string)
    MIME type of the attachment file.
    Example: "application/vnd.openxmlformats-officedocument.wordprocessingml.document"

  - `attachments.updateTime` (string)
    Update time of the request. ISO date time format in UTC without timezone offset.
    Example: "2021-11-03T14:30:03"

  - `attachments.uploadStatus` (string)
    Status of the file uploaded
    Enum: "COMPLETED", "WAITING", "FAILED"

  - `attachments.documentType` (string)
    Type of document attached.
    Example: "Passport"

  - `callbackUrl` (string)
    Webhook URL to specify an endpoint for delivery of notifications about registration updates
    Example: "senderid.registrations.api.sinch.com"

  - `createTime` (string)
    Creation time of the request. ISO date time format in UTC without timezone offset.
    Example: "2021-11-03T14:30:03"

  - `etaDate` (string)
    Expected date of the registration approval. ISO date format.
    Example: "2024-11-03"

  - `id` (string)
    Unique registration identifier.
    Example: "d1c7ccbf-919d-462f-8587-dec95a1b11ee"

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

  - `logs.createTime` (string)
    Create time of this log entry. ISO date time format in UTC
    Example: "2021-11-03T14:30:03"

  - `logs.message` (string)
    Optional message with details of the registration status update. Can contain information provided by the agent handling the request.
    Example: "Please update the attachment connected to your request."

  - `logs.registrationState` (string)
    State of the registration after this entry was created
    Example: "PENDING"

  - `notificationContacts` (array)
    Email addresses that will be notified of any status changes of the registration.
    Example: ["jane.doe@example.com","john.doe@example.com"]

  - `owner` (string)
    Display name of the user that created the registration.
    Example: "Jane Doe"

  - `policyId` (string)
    Unique identifier of the policy for this registration.
    Example: "d1c7ccbf-919d-462f-8587-dec95a1b11ee"

  - `price` (object)

  - `price.currency` (string)
    Currency of the fees
    Example: "USD"

  - `price.frequency` (integer)
    Recurrent subscription period in month, 0 if no subscription fees
    Example: 1

  - `price.mode` (string)
    Type of policy pricing.
    Enum: "SUBSCRIBED", "MANUAL", "NONE"

  - `price.recurrentFeeAmount` (string)
    Recurrent subscription fee amount
    Example: "2"

  - `price.setupFeeAmount` (string)
    One time setup fee amount
    Example: "5"

  - `registrationType` (string)
    Specify the sender ID type
    Enum: "ALPHANUMERIC_SENDER_ID", "LONG_NUMBER", "SHORT_CODE", "RCS_AGENT"

  - `requestDetails` (array)
    Details of the sender IDs to be registered. Details depend on the specific market requirements defined in the policy.

  - `senderIds` (array)
    List of sender IDs associated with this registration. If sender IDs are not provided in the request, they will be assigned after registration approval.
    Example: ["senderId1","senderId2"]

  - `status` (string)
    Status of the registration.
    Enum: "DRAFT", "IN_QUEUE", "IN_PROGRESS", "APPROVED", "REJECTED", "PENDING", "ON_HOLD", "PENDING_APPROVAL", "PENDING_ATTACHMENTS"

  - `tags` (array)
    User tags used for the registration. Tag have to start from '#' and contains only alphanumerics and dashes.
    Example: ["#myTag1","#myTag2"]

  - `updateTime` (string)
    Update time of the request. ISO date time format in UTC without timezone offset.
    Example: "2021-11-03T14:30:03"

  - `servicePlanId` (string)
    Service plan ID or System ID that the registration applies to. When included, the sender id will be configured linked to the service/system plan.
    Example: "a23dccbf-919d-462f-8587-dec95a1b44de"

## Response 400 fields (application/json):

  - `error` (object)

  - `error.code` (integer)

  - `error.details` (array)

  - `error.message` (string)

  - `error.status` (string)


