Update Agent

Use this endpoint to update the Agent using the Channel Manager API. It changes agent metadata, images, possibly phone number, description.

Example

Find the description for all variables used in each code snippet below:

KeyDescription
VONAGE_API_KEY

Your Vonage API key (see it on your dashboard).

VONAGE_API_SECRET

Your Vonage API secret (also available on your dashboard).

CHANNEL_MANAGER_RCS_AGENT_ID

The ID of the RCS agent.

CHANNEL_MANAGER_RCS_AGENT_DISPLAY_NAME

The unique display name of the RCS Agent.

CHANNEL_MANAGER_RCS_AGENT_SENDER_ID

A unique sender identifier for the RCS Agent on the Vonage platform.

CHANNEL_MANAGER_RCS_AGENT_HOSTING_REGION

The geographic location where your RCS business messaging service will be hosted and operated.

CHANNEL_MANAGER_RCS_AGENT_PURPOSE

Specifies the intended use of the RCS Agent.

CHANNEL_MANAGER_RCS_AGENT_BILLING_CATEGORY

Specifies the pricing model applied to messages sent via this RCS Agent.

CHANNEL_MANAGER_RCS_BRAND_ID

The ID of the RCS brand.

CHANNEL_MANAGER_RCS_AGENT_TAGLINE

A short phrase that represents the RCS Agent.

CHANNEL_MANAGER_RCS_AGENT_BRAND_COLOR

The hexadecimal color code for the primary color used in UI elements.

CHANNEL_MANAGER_RCS_AGENT_PHONE_NUMBER

End-user contact number in E.164 format.

CHANNEL_MANAGER_RCS_AGENT_EMAIL_ADDRESS

The contact email address for the RCS Agent.

CHANNEL_MANAGER_RCS_AGENT_WEBSITE_ADDRESS

The website address for the RCS Agent.

VONAGE_APPLICATION_ID

The Vonage Application ID.

Prerequisites

If you do not have an application you can create one. Make sure you also configure your webhooks.

Write the code

Add the following to update-agent.sh:

curl -X PUT https://api.nexmo.com/v1/channel-manager/rcs/agents/${CHANNEL_MANAGER_RCS_AGENT_ID} \
  -u "${VONAGE_API_KEY}:${VONAGE_API_SECRET}" \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -d $'{
		"basic_info": {
    "display_name": "'${CHANNEL_MANAGER_RCS_AGENT_DISPLAY_NAME}'",
    "sender_id": "'${CHANNEL_MANAGER_RCS_AGENT_SENDER_ID}'",
    "hosting_region": "'${CHANNEL_MANAGER_RCS_AGENT_HOSTING_REGION}'",
    "agent_purpose": "'${CHANNEL_MANAGER_RCS_AGENT_PURPOSE}'",
    "billing_category": "'${CHANNEL_MANAGER_RCS_AGENT_BILLING_CATEGORY}'",
    "brand_id": "'${CHANNEL_MANAGER_RCS_BRAND_ID}'"
  },
  "visual_design": {
    "tagline": "'${CHANNEL_MANAGER_RCS_AGENT_TAGLINE}'",
    "brand_color": "'${CHANNEL_MANAGER_RCS_AGENT_BRAND_COLOR}'",
    "phone": [
      {
        "number": "'${CHANNEL_MANAGER_RCS_AGENT_PHONE_NUMBER}'"
      }
    ],
    "email": [
      {
        "address": "'${CHANNEL_MANAGER_RCS_AGENT_EMAIL_ADDRESS}'"
      }
    ],
    "website": [
      {
        "url": "'${CHANNEL_MANAGER_RCS_AGENT_WEBSITE_ADDRESS}'"
      }
    ]
  },
  "application_settings": {
    "application_id": "'${VONAGE_APPLICATION_ID}'"
  },
  "representative": {
      "first_name": "John",
      "last_name": "Doe",
      "email": "john.doe@example.com"
  },
  "carrier_requirements": {
      "agent_preview": {
        "agent_access_instructions": "Provide a method for reviewers to trigger the agent, such as a website where reviewers can invite and add phone numbers."
      },
      "points_of_contact": [
        {
            "first_name": "Jane",
            "last_name": "Smith",
            "email": "jane.smith@example.com",
            "job_title": "Technical Support"
        }
      ],
      "traffic_estimates": {
        "average_global_traffic": "THOUSAND",
        "average_message_rate_per_user": "ONCE_PER_MONTH",
        "users_targeted": "HUNDRED"
      },
      "user_experience": {
        "interactions_description": "This agent handles customer support inquiries and provides product information.",
        "optin_description": "This is a test environment.",
        "optout_description": "Customers can unsubscribe from receiving messages by replying 'STOP' to any message. They can also contact us by email at support@company.com. Users will receive a confirmation message when successfully unsubscribed, and can re-subscribe at any time by replying 'START'.",
        "trigger_description": "This account is used exclusively for sending test messages to introduce RCS capabilities to customers."
      }
    }
  }'

View full source

Run your code

Save this file to your machine and run it:

bash update-agent.sh