> ## Documentation Index
> Fetch the complete documentation index at: https://www.vobiz.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Update an RCS sender

> Updates the sender's profile on the RCS platform and then on your account, and returns the updated sender. Send only the fields you want to change; fields you leave out keep their value.



## OpenAPI

````yaml openapi-sms.yaml PUT /senders/{id}
openapi: 3.0.3
info:
  title: Vobiz Messaging API
  description: >
    Send and receive SMS, MMS and RCS messages, buy messaging numbers, register
    for

    US 10DLC and toll-free, run broadcasts, manage conversations, opt-outs and
    webhooks.


    **Base URL:** `https://api.vobiz.ai/api/v1/sms`


    **Authentication:** every request needs the `X-Auth-ID` and `X-Auth-Token`
    headers.

    The account is taken from your credentials; you never put an account ID in a
    path or body.

    Field names in this API are camelCase.
  version: '1.0'
  contact:
    email: support@vobiz.ai
    url: https://vobiz.ai
servers:
  - url: https://api.vobiz.ai/api/v1/sms
    description: Production
security:
  - AuthID: []
    AuthToken: []
tags:
  - name: Messages
    description: Send messages and inspect their delivery state.
  - name: Numbers
    description: >-
      Messaging-capable numbers on your account, inventory search, purchase and
      release.
  - name: Coverage
    description: Where you can send, per country.
  - name: Conversations
    description: Two-way threads between one of your numbers and a contact.
  - name: Opt-outs
    description: Numbers that must not receive messages on a channel.
  - name: Webhooks
    description: Subscriptions that deliver message and broadcast events to your server.
  - name: Broadcasts
    description: Bulk sends from an uploaded recipient list.
  - name: RCS Senders
    description: RCS sender (agent) identities and their message templates.
  - name: 10DLC Brands
    description: US 10DLC brand registration.
  - name: 10DLC Campaigns
    description: US 10DLC campaigns, toll-free verification and supporting documents.
paths:
  /senders/{id}:
    parameters:
      - name: id
        in: path
        required: true
        description: >-
          The sender's `id` (UUID), as returned by `POST /senders` or `GET
          /senders`. An unknown id returns `sender not found`.
        schema:
          type: string
          format: uuid
        example: 5d7f9b1c-3e5a-4c7e-9f1b-3d5f7a9c1e3b
    put:
      tags:
        - RCS Senders
      summary: Update an RCS sender
      description: >-
        Updates the sender's profile on the RCS platform and then on your
        account, and returns the updated sender. Send only the fields you want
        to change; fields you leave out keep their value. `provider`,
        `senderName` and `hostingRegion` are fixed after creation. Every
        failure, including an unknown id, returns `400`.
      operationId: update-sender
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateSenderRequest'
            example:
              displayName: Example Brand Support
              description: Order updates, returns and support for Example Brand customers.
              websites:
                - url: https://example.com/help
                  label: Help centre
      responses:
        '200':
          description: The updated sender.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Sender'
              example:
                id: 7a1c3e5f-9b2d-4c6e-8f0a-1b3d5e7f9a21
                accountId: MA_XXXXXXXX
                provider: YOUR_ROUTING_IDENTIFIER
                senderName: example-brand
                displayName: Example Brand Support
                description: >-
                  Order updates, returns and support for Example Brand
                  customers.
                billingCategory: CONVERSATIONAL
                useCase: TRANSACTIONAL
                hostingRegion: NORTH_AMERICA
                status: pending
                brand:
                  brandName: Example Brand
                color: '#1A73E8'
                websites:
                  - url: https://example.com/help
                    label: Help centre
                createdAt: '2026-10-12T10:30:00Z'
                updatedAt: '2026-10-12T12:00:00Z'
        '400':
          description: >-
            The body is invalid, the sender does not exist on your account, or
            the RCS platform rejected the change.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                body:
                  value:
                    error: invalid request body
                notFound:
                  value:
                    error: sender not found
                platform:
                  value:
                    error: 'provider update sender failed: <description>'
        '401':
          $ref: '#/components/responses/Unauthorized'
      x-codeSamples:
        - lang: typescript
          label: Node SDK
          source: >
            import { VobizClient } from "@vobiz/sdk";


            const client = new VobizClient({ apiKey: "MA_XXXXXXXX", authToken:
            "YOUR_AUTH_TOKEN" });


            await client.sms.rcsSenders.updateSender({
                id: "5d7f9b1c-3e5a-4c7e-9f1b-3d5f7a9c1e3b",
                displayName: "Example Brand Support",
                description: "Order updates, returns and support for Example Brand customers.",
                websites: [{
                        url: "https://example.com/help",
                        label: "Help centre"
                    }]
            })
        - lang: python
          label: Python SDK
          source: |
            from vobiz import Vobiz

            client = Vobiz(api_key="MA_XXXXXXXX", auth_token="YOUR_AUTH_TOKEN")

            from vobiz.sms import SenderWebsite

            client.sms.rcs_senders.update_sender(
                id="5d7f9b1c-3e5a-4c7e-9f1b-3d5f7a9c1e3b",
                display_name="Example Brand Support",
                description="Order updates, returns and support for Example Brand customers.",
                websites=[
                    SenderWebsite(
                        url="https://example.com/help",
                        label="Help centre",
                    )
                ],
            )
        - lang: go
          label: Go SDK
          source: |
            import (
                "context"

                vobiz "github.com/vobiz-ai/Vobiz-Go-SDK"
                "github.com/vobiz-ai/Vobiz-Go-SDK/client"
                "github.com/vobiz-ai/Vobiz-Go-SDK/option"
                "github.com/vobiz-ai/Vobiz-Go-SDK/sms"
            )

            c := client.NewClient(
                option.WithAPIKey("MA_XXXXXXXX"),
                option.WithAuthToken("YOUR_AUTH_TOKEN"),
            )

            request := &sms.UpdateSenderRequest{
                    ID: "5d7f9b1c-3e5a-4c7e-9f1b-3d5f7a9c1e3b",
                    DisplayName: vobiz.String(
                        "Example Brand Support",
                    ),
                    Description: vobiz.String(
                        "Order updates, returns and support for Example Brand customers.",
                    ),
                    Websites: []*sms.SenderWebsite{
                        &sms.SenderWebsite{
                            URL: vobiz.String(
                                "https://example.com/help",
                            ),
                            Label: vobiz.String(
                                "Help centre",
                            ),
                        },
                    },
                }
            c.Sms.RcsSenders.UpdateSender(
                    context.TODO(),
                    request,
                )
        - lang: java
          label: Java SDK
          source: |
            import com.vobiz.api.VobizApiClient;

            VobizApiClient client = VobizApiClient
                .builder()
                .apiKey("MA_XXXXXXXX")
                .authToken("YOUR_AUTH_TOKEN")
                .build();

            client.sms().rcsSenders().updateSender(
                "5d7f9b1c-3e5a-4c7e-9f1b-3d5f7a9c1e3b",
                UpdateSenderRequest
                    .builder()
                    .displayName("Example Brand Support")
                    .description("Order updates, returns and support for Example Brand customers.")
                    .websites(
                        Optional.of(
                            Arrays.asList(
                                SenderWebsite
                                    .builder()
                                    .url("https://example.com/help")
                                    .label("Help centre")
                                    .build()
                            )
                        )
                    )
                    .build()
            );
        - lang: ruby
          label: Ruby SDK
          source: >
            require 'vobiz'


            client = Vobiz::Client.new(api_key: 'MA_XXXXXXXX', auth_token:
            'YOUR_AUTH_TOKEN')


            client.sms.rcs_senders.update_sender(
              id: "5d7f9b1c-3e5a-4c7e-9f1b-3d5f7a9c1e3b",
              display_name: "Example Brand Support",
              description: "Order updates, returns and support for Example Brand customers.",
              websites: [{
                url: "https://example.com/help",
                label: "Help centre"
              }]
            )
        - lang: csharp
          label: C# SDK
          source: |
            using Vobiz;
            using Vobiz.Sms;

            var client = new VobizApiClient("YOUR_AUTH_TOKEN", "MA_XXXXXXXX");

            await client.Sms.RcsSenders.UpdateSenderAsync(
                new UpdateSenderRequest
                {
                    Id = "5d7f9b1c-3e5a-4c7e-9f1b-3d5f7a9c1e3b",
                    DisplayName = "Example Brand Support",
                    Description = "Order updates, returns and support for Example Brand customers.",
                    Websites = new List<SenderWebsite>()
                    {
                        new SenderWebsite { Url = "https://example.com/help", Label = "Help centre" },
                    },
                }
            );
        - lang: php
          label: PHP SDK
          source: >
            <?php


            require 'vendor/autoload.php';


            use Vobiz\VobizClient;


            $client = new VobizClient(apiKey: 'MA_XXXXXXXX', authToken:
            'YOUR_AUTH_TOKEN');


            $client->sms->rcsSenders->updateSender(
                '5d7f9b1c-3e5a-4c7e-9f1b-3d5f7a9c1e3b',
                new UpdateSenderRequest([
                    'displayName' => 'Example Brand Support',
                    'description' => 'Order updates, returns and support for Example Brand customers.',
                    'websites' => [
                        new SenderWebsite([
                            'url' => 'https://example.com/help',
                            'label' => 'Help centre',
                        ]),
                    ],
                ]),
            );
components:
  schemas:
    UpdateSenderRequest:
      type: object
      description: >-
        Any subset of the editable RCS sender fields. Fields you leave out keep
        their value; `provider`, `senderName` and `hostingRegion` are fixed
        after creation.
      properties:
        displayName:
          type: string
          description: The brand name recipients see at the top of the conversation.
          example: Example Brand
        description:
          type: string
          description: >-
            Short description of your business or the sender's purpose, shown on
            the sender's info page.
          example: Order updates and support for Example Brand customers.
        billingCategory:
          type: string
          description: >-
            How the RCS platform bills conversations from this sender, for
            example `CONVERSATIONAL` or `NON_CONVERSATIONAL`.
          example: CONVERSATIONAL
        useCase:
          type: string
          description: >-
            The kind of traffic the sender carries, for example `OTP`,
            `TRANSACTIONAL`, `PROMOTIONAL` or `MULTI_USE`.
          example: TRANSACTIONAL
        brand:
          allOf:
            - $ref: '#/components/schemas/SenderBrand'
          description: The brand the sender represents.
        color:
          type: string
          description: >-
            Accent colour for the sender's buttons and header, as a hex code
            such as `#1A73E8`.
          example: '#1A73E8'
        phones:
          type: array
          items:
            $ref: '#/components/schemas/SenderPhone'
          description: Contact phone numbers shown on the sender's info page.
        emails:
          type: array
          items:
            $ref: '#/components/schemas/SenderEmail'
          description: Contact email addresses shown on the sender's info page.
        websites:
          type: array
          items:
            $ref: '#/components/schemas/SenderWebsite'
          description: Websites shown on the sender's info page.
        bannerUrl:
          type: string
          format: uri
          example: https://example.com/rcs/banner.jpg
          description: Publicly reachable HTTPS URL of the banner image.
        logoUrl:
          type: string
          format: uri
          example: https://example.com/rcs/logo.png
          description: Publicly reachable HTTPS URL of the logo image.
        privacy:
          allOf:
            - $ref: '#/components/schemas/SenderLink'
          description: Link to your privacy policy.
        termsOfService:
          allOf:
            - $ref: '#/components/schemas/SenderLink'
          description: Link to your terms of service.
        platform:
          allOf:
            - $ref: '#/components/schemas/SenderPlatform'
          description: Identifiers the RCS platform has assigned to your agent.
    Sender:
      type: object
      description: >-
        An RCS sender (agent): the verified brand identity that recipients see
        instead of a phone number. Send RCS from it by passing its `senderName`
        as `from` with `channel: rcs`.
      properties:
        id:
          type: string
          format: uuid
          example: 7a1c3e5f-9b2d-4c6e-8f0a-1b3d5e7f9a21
          description: >-
            Unique identifier of the sender on Vobiz (UUID). Use it in every
            `/senders/{id}` path.
        accountId:
          type: string
          example: MA_XXXXXXXX
          description: Your Vobiz account ID (`MA_...`) that owns the sender.
        provider:
          type: string
          description: Internal routing identifier; do not rely on its value.
          example: YOUR_ROUTING_IDENTIFIER
        senderName:
          type: string
          description: >-
            Unique technical name of the sender on the RCS platform. Pass it as
            `from` when you send RCS. Fixed after creation.
          example: example-brand
        displayName:
          type: string
          description: The brand name recipients see at the top of the conversation.
          example: Example Brand
        description:
          type: string
          example: Order updates and support for Example Brand customers.
          description: Short description shown on the sender's info page.
        billingCategory:
          type: string
          description: >-
            How the RCS platform bills conversations from this sender, for
            example `CONVERSATIONAL` or `NON_CONVERSATIONAL`.
          example: CONVERSATIONAL
        useCase:
          type: string
          description: >-
            The kind of traffic the sender carries, for example `OTP`,
            `TRANSACTIONAL`, `PROMOTIONAL` or `MULTI_USE`.
          example: TRANSACTIONAL
        hostingRegion:
          type: string
          description: >-
            The region where the RCS platform hosts the sender, for example
            `NORTH_AMERICA`, `EUROPE` or `ASIA_PACIFIC`. Fixed after creation.
          example: NORTH_AMERICA
        status:
          type: string
          default: pending
          description: >-
            Launch status reported by the RCS platform, stored on your account.
            `pending` until the platform reports otherwise. Call `GET
            /senders/{id}/status` to refresh it.
          example: pending
        brand:
          allOf:
            - $ref: '#/components/schemas/SenderBrand'
          description: The brand the sender represents. Omitted when not set.
        color:
          type: string
          description: Accent colour as a hex code. Omitted when not set.
          example: '#1A73E8'
        phones:
          type: array
          items:
            $ref: '#/components/schemas/SenderPhone'
          description: >-
            Contact phone numbers shown on the sender's info page. Omitted when
            none are set.
        emails:
          type: array
          items:
            $ref: '#/components/schemas/SenderEmail'
          description: >-
            Contact email addresses shown on the sender's info page. Omitted
            when none are set.
        websites:
          type: array
          items:
            $ref: '#/components/schemas/SenderWebsite'
          description: Websites shown on the sender's info page. Omitted when none are set.
        bannerUrl:
          type: string
          format: uri
          example: https://example.com/rcs/banner.jpg
          description: HTTPS URL of the banner image. Omitted when not set.
        logoUrl:
          type: string
          format: uri
          example: https://example.com/rcs/logo.png
          description: HTTPS URL of the logo image. Omitted when not set.
        privacy:
          allOf:
            - $ref: '#/components/schemas/SenderLink'
          description: Link to your privacy policy.
        termsOfService:
          allOf:
            - $ref: '#/components/schemas/SenderLink'
          description: Link to your terms of service.
        platform:
          allOf:
            - $ref: '#/components/schemas/SenderPlatform'
          description: >-
            Identifiers the RCS platform assigned to your agent. Omitted when
            not set.
        createdAt:
          type: string
          format: date-time
          example: '2026-10-12T10:30:00Z'
          description: When the sender was created on your account (ISO 8601, UTC).
        updatedAt:
          type: string
          format: date-time
          example: '2026-10-12T10:30:00Z'
          description: >-
            When the sender last changed, including status refreshes (ISO 8601,
            UTC).
    Error:
      type: object
      description: >-
        The body of every error response: a flat object with one `error` string
        that explains what went wrong. Use the HTTP status code to decide how to
        handle the error, and log `error` for diagnosis.
      required:
        - error
      properties:
        error:
          type: string
          example: 'recipient has opted out: +14155550123'
          description: >-
            Human-readable explanation of the error, for example `phoneNumber is
            required` or `recipient has opted out: +14155550123`. Branch on the
            HTTP status code rather than on this text.
    SenderBrand:
      type: object
      properties:
        brandName:
          type: string
          example: Example Brand
          description: >-
            Your brand or business name as the RCS platform should record it for
            review.
      description: The brand an RCS sender represents.
    SenderPhone:
      type: object
      properties:
        phoneNumber:
          type: string
          description: The phone number recipients can call, in E.164 format.
          example: '+14155550100'
        label:
          type: string
          example: Support
          description: Text shown next to the number, for example `Customer care`.
      description: A contact phone number shown on an RCS sender's info page.
    SenderEmail:
      type: object
      properties:
        address:
          type: string
          format: email
          example: support@example.com
          description: >-
            The email address recipients can write to, for example
            `support@example.com`.
        label:
          type: string
          example: Support
          description: Text shown next to the address, for example `Support`.
      description: A contact email address shown on an RCS sender's info page.
    SenderWebsite:
      type: object
      properties:
        url:
          type: string
          format: uri
          example: https://example.com
          description: Public HTTPS URL of the website, for example `https://example.com`.
        label:
          type: string
          example: Website
          description: Text shown for the link, for example `Website`.
      description: A website shown on an RCS sender's info page.
    SenderLink:
      type: object
      description: >-
        A labelled link shown on an RCS sender's info page, used for the privacy
        policy and terms of service.
      properties:
        url:
          type: string
          format: uri
          example: https://example.com/privacy
          description: >-
            Public HTTPS URL of the page, for example
            `https://example.com/privacy`.
        label:
          type: string
          example: Privacy policy
          description: Text shown for the link, for example `Privacy policy`.
    SenderPlatform:
      type: object
      description: >-
        Identifiers the RCS platform has assigned to your agent. Set them only
        when you already have them.
      properties:
        applicationId:
          type: string
          example: YOUR_APPLICATION_ID
          description: The application ID of your agent on the RCS platform.
        entityId:
          type: string
          example: YOUR_ENTITY_ID
          description: The entity ID of your agent on the RCS platform.
  responses:
    Unauthorized:
      description: Missing or invalid `X-Auth-ID` / `X-Auth-Token`.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: missing or invalid credentials
  securitySchemes:
    AuthID:
      type: apiKey
      in: header
      name: X-Auth-ID
      description: Your Vobiz account Auth ID (`MA_XXXXXXXX`).
    AuthToken:
      type: apiKey
      in: header
      name: X-Auth-Token
      description: Your Vobiz account Auth Token.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.