---
title: Update communication type
slug: update-communication-type
docTags: 
createdAt: 2026-07-22T14:03:07.964Z
---

{
  "id": "WABw3sZxJBrQtcotBW0uD",
  "type": "api-oas-v2",
  "data": {
    "method": "PUT",
    "url": "https://api.b.preview.loyaltyservices.io/api/v3/communication-types/{communicationCode}",
    "servers": [
      {
        "url": "https://api.b.preview.loyaltyservices.io/api/v3/communication-types/{communicationCode}"
      }
    ],
    "name": "Update communication type",
    "description": "<p>Update a communication type. The channel (Email or SMS) cannot be changed.</p>",
    "contentType": "application/json",
    "request": {
      "pathParameters": [
        {
          "kind": "required",
          "name": "communicationCode",
          "type": "string",
          "example": "WELCOME_EMAIL",
          "description": "Code identifying the communication"
        }
      ],
      "headerParameters": [
        {
          "name": "accept",
          "type": "string",
          "kind": "optional",
          "description": "Generated from available response content types",
          "enum": [
            "application/json"
          ],
          "default": "application/json"
        }
      ],
      "queryParameters": [],
      "bodyDataParameters": [
        {
          "kind": "required",
          "name": "body",
          "type": "object",
          "description": "",
          "customType": "CommunicationType",
          "schema": [
            {
              "name": "code",
              "kind": "required",
              "type": "string",
              "description": "Unique code identifying the communication",
              "example": "WELCOME_EMAIL",
              "maxLength": 50
            },
            {
              "name": "name",
              "kind": "required",
              "type": "string",
              "description": "Name of the communication",
              "example": "Welcome Email",
              "maxLength": 100
            },
            {
              "name": "description",
              "kind": "optional",
              "type": "string",
              "description": "Description of the communication",
              "example": "Sent when a member enrolls",
              "maxLength": 500
            },
            {
              "name": "channel",
              "kind": "required",
              "type": "string<Email | SMS>",
              "description": "<p>Communication channel. One of: Email, SMS</p>",
              "example": "Email",
              "enum": [
                "Email",
                "SMS"
              ]
            },
            {
              "name": "providerCode",
              "kind": "required",
              "type": "string",
              "description": "<p>Delivery provider used to send this communication. Values for this field need to match datacodes setup with a CodeType of: CommunicationProviderType</p>",
              "example": "Braze",
              "maxLength": 50
            },
            {
              "name": "externalCode",
              "kind": "required",
              "type": "string",
              "description": "<p>Identifies the template registered with the channel's delivery provider (e.g. Braze) used to render this communication</p>",
              "example": "d-abc123",
              "maxLength": 100
            },
            {
              "name": "statusCode",
              "kind": "required",
              "type": "string",
              "description": "<p>Values for this field need to match datacodes setup with a CodeType of: CommunicationStatus</p>",
              "example": "Active",
              "maxLength": 50
            }
          ],
          "modelRef": "#/components/schemas/CommunicationType",
          "isExpanded": true
        }
      ],
      "formDataParameters": [],
      "oAuthParameters": [
        {
          "id": "OAuth2",
          "name": "OAuth2",
          "kind": "optional",
          "type": "oauth2",
          "description": "<p>See <a href=\"https://docs.wearephaedon.com/docs/platform-api-authentication\" target=\"_blank\">https://docs.wearephaedon.com/docs/platform-api-authentication</a></p>",
          "oauth2Flows": {
            "clientCredentials": {
              "tokenUrl": "https://phaedon.oktapreview.com/oauth2/auscfbbmieFBGGOzR1d7/v1/token",
              "scopes": {
                "api:custom-data:read": "Grants read access to custom data information",
                "api:custom-data:modify": "Grants modify access to custom data information",
                "api:data-codes:read": "Grants read access to data codes",
                "api:data-codes:modify": "Grants modify access to data codes",
                "api:coupon-compensation:read": "Grants read access to compensations for coupon code",
                "api:coupon-compensation:create": "Grants access to create compensations for coupon code",
                "api:coupon-compensation:modify": "Grants access to edit compensation nights for coupon code",
                "api:coupon-request:modify": "Grants modify access to create coupons",
                "api:member:search": "Grants search access to member information",
                "api:member:verify": "Grants verify access to member information",
                "api:member:merge": "Grants access to merge members",
                "api:member:enroll": "Grants access to enroll members",
                "api:member:modify": "Grants modify access to member information",
                "api:member:read": "Grants read access to member information",
                "api:member:close": "Grants access to close member account",
                "api:member:migrate": "Grants access to migrate member accounts",
                "api:member-address:read": "Grants read access to member address information",
                "api:member-address:modify": "Grants modify access to member address information",
                "api:member-alias:read": "Grants read access to member alias information",
                "api:member-alias:modify": "Grants modify access to member alias information",
                "api:member-badge:read": "Grants read access to member badge information",
                "api:member-badge:modify": "Grants modify access to member badge information",
                "api:member-bonus:add": "Grants access to add a bonus to a member",
                "api:member-bonus:read": "Grants read access to member bonus information",
                "api:member-comments:read": "Grants read access to member comments information",
                "api:member-comments:modify": "Grants modify access to member comments information",
                "api:member-communication:read": "Grants read access to member communication information",
                "api:member-communication:modify": "Grants modify access to member communication information",
                "api:member-coupon:read": "Grants read access to member coupon information",
                "api:member-coupon-use:cancel": "Grants access to cancel member coupon uses",
                "api:member-coupon:transfer": "Grants access to transfer a member coupon",
                "api:member-coupon-use:update": "Grants access to update member coupon uses",
                "api:member-currency:read": "Grants read access to member currency information",
                "api:member-currency:adjust": "Grants access to adjust member currency",
                "api:member-currency:migrate": "Grants access to migrate member currency",
                "api:member-currency-conversion:convert": "Grants access to convert member currency",
                "api:member-email:read": "Grants read access to member email information",
                "api:member-email:modify": "Grants modify access to member email information",
                "api:member-event:read": "Grants read access to member events",
                "api:member-event:modify": "Grants modify access to member events",
                "api:event-rule:read": "Grants read access to event rules",
                "api:event-rule:modify": "Grants access to modify event rule",
                "api:event-rule:admin": "Grants full admin access to event rules",
                "api:member-list:read": "Grants read access to member list information",
                "api:member-list:modify": "Grants modify access to member list information",
                "api:member-partner-link:read": "Grants read access to member partner link information",
                "api:member-partner-link:modify": "Grants modify access to member partner link information",
                "api:member-payment-card:read": "Grants read access to member payment card information",
                "api:member-payment-card:modify": "Grants modify access to member payment card information",
                "api:member-phone:read": "Grants read access to member phone information",
                "api:member-phone:modify": "Grants modify access to member phone information",
                "api:member-preference:read": "Grants read access to member preference information",
                "api:member-preference:modify": "Grants modify access to member preference information",
                "api:member-promotion:read": "Grants read access to member promotion information",
                "api:member-promotion:register": "Grants access to register a member into a promotion",
                "api:member-redemption:create": "Grants redeem access to member redemption information",
                "api:member-redemption:over-redeem": "Grants access to over redeem",
                "api:member-redemption:read": "Grants read access to member redemption information",
                "api:member-redemption:cancel": "Grants access to cancel member redemptions",
                "api:member-redemption:migrate": "Allows migration of member redemption information",
                "api:member-redemption:patch": "Grants patching access to member redemption",
                "api:member-tier:read": "Grants read access to member tier information",
                "api:member-tier:adjust": "Grants access to adjust member tiers",
                "api:member-tier:migrate": "Grants access to migrate member tiers",
                "api:member-transaction:read": "Grants read access to transaction information",
                "api:member-transaction:cancel": "Grants access to cancel transactions",
                "api:member-transaction:clone": "Grants access to clone transactions",
                "api:member-transfer:transfer": "Grants access to do member to member transfers",
                "api:preference:read": "Grants read access to preference information",
                "api:promotion:read": "Grants read access to promotion information",
                "api:tier:read": "Grant read access to tier information",
                "api:promotion:register": "Grants access to register a member into a promotion using token",
                "api:promotion-token:manage": "Grants access to generate promotion token",
                "api:redemption:read": "Grants read access to redemption information",
                "api:redemption:modify": "Grants access to modify redemption information",
                "api:bonus-rule:read": "Grants read access to bonus rule configuration",
                "api:bonus-rule:modify": "Grants access to modify bonus rule configuration",
                "api:bonus-rule:manage": "Grants limited admin access to bonus rule configuration",
                "api:bonus-rule:admin": "Grants full admin access to bonus rules",
                "api:promotion-rule:read": "Grants read access to promotion rule configuration",
                "api:promotion-rule:modify": "Grants access to modify promotion rule configuration",
                "api:promotion-rule:manage": "Grants limited admin access to promotion rule configuration",
                "api:promotion-rule:admin": "Grants full admin access to promotion rules",
                "api:reports:under-investigation": "Grants access to under investigation report",
                "api:transaction:submit": "Grants access to submit transactions",
                "api:transaction:migrate": "Grants access to migrate transactions",
                "api:user:read": "Grants access to read user information",
                "api:user:modify": "Grants access to create user",
                "api:user-task:read": "Grants read access to user tasks",
                "api:user-task:modify": "Grants modify access to user tasks",
                "api:user-role:read": "Grants read access to user roles",
                "api:user-role:modify": "Grants modify access to user roles",
                "api:compensation:read": "Grants read access to hotel summary information",
                "api:compensation:modify": "Grants modify access to hotel summary information",
                "api:member-referral:read": "Grants read access to member referral information",
                "api:member-referral:modify": "Grants modify access to member referral information",
                "api:member-referral-codes:read": "Grants read access to member referral codes",
                "api:member-referral-codes:create": "Grants access to create member referral codes",
                "api:outbound-notification:modify": "Grants access to send outbound notification",
                "api:outbound-notification:read": "Grants access to read outbound notification types",
                "api:background-task:read": "Grants read access to background task information",
                "api:async-task:create": "Grants access to submit operations for background processing",
                "api:async-task:read": "Grants read access to background processing results",
                "api:audit-configuration:read": "Grants read access to audit configuration information",
                "api:audit-configuration:modify": "Grants modify access to audit configuration information",
                "api:badge:read": "Grant read access to badge information",
                "api:broadcast-messages:read": "Grant Read access to broadcast messages",
                "api:expression-config:read": "Grant read access to expression builder configuration",
                "api:managed-entity:read": "Grant read access to managed entity data",
                "api:customer-satisfaction:modify": "Grants modify access to customer satisfaction metrics",
                "api:member-linked-account:modify": "Grant modify access to member linked account",
                "api:member-linked-account:read": "Grants access to read linked member accounts",
                "api:enroll-codes:read": "Grants access to read enroll codes",
                "api:contact-us:modify": "Grants access to submit Contact Us inquiry",
                "api:data-release:read": "Grants read access to data releases",
                "api:points-pool:read": "Grants read access to points pools",
                "api:points-pool:modify": "Grants modify access to points pools",
                "api:segment:read": "Grants read access to segments",
                "api:segment:modify": "Grants modify access to segments",
                "api:communication-type:read": "Grants read access to communication types",
                "api:communication-type:modify": "Grants modify access to communication types",
                "api:member-status-match:read": "Grants read access to status match eligibility and submitted images/applications",
                "api:member-status-match:create": "Grants access to upload status match images and submit applications",
                "api:earning-rule:modify": "Grant modify access to earning rules"
              }
            }
          },
          "requiredScopes": [
            "api:communication-type:modify"
          ]
        }
      ],
      "cookieParameters": []
    },
    "responses": [
      {
        "statusCode": "200",
        "description": "Success",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "description": "",
            "customType": "CommunicationType",
            "schema": [
              {
                "name": "code",
                "kind": "required",
                "type": "string",
                "description": "Unique code identifying the communication",
                "example": "WELCOME_EMAIL",
                "maxLength": 50
              },
              {
                "name": "name",
                "kind": "required",
                "type": "string",
                "description": "Name of the communication",
                "example": "Welcome Email",
                "maxLength": 100
              },
              {
                "name": "description",
                "kind": "optional",
                "type": "string",
                "description": "Description of the communication",
                "example": "Sent when a member enrolls",
                "maxLength": 500
              },
              {
                "name": "channel",
                "kind": "required",
                "type": "string<Email | SMS>",
                "description": "<p>Communication channel. One of: Email, SMS</p>",
                "example": "Email",
                "enum": [
                  "Email",
                  "SMS"
                ]
              },
              {
                "name": "providerCode",
                "kind": "required",
                "type": "string",
                "description": "<p>Delivery provider used to send this communication. Values for this field need to match datacodes setup with a CodeType of: CommunicationProviderType</p>",
                "example": "Braze",
                "maxLength": 50
              },
              {
                "name": "externalCode",
                "kind": "required",
                "type": "string",
                "description": "<p>Identifies the template registered with the channel's delivery provider (e.g. Braze) used to render this communication</p>",
                "example": "d-abc123",
                "maxLength": 100
              },
              {
                "name": "statusCode",
                "kind": "required",
                "type": "string",
                "description": "<p>Values for this field need to match datacodes setup with a CodeType of: CommunicationStatus</p>",
                "example": "Active",
                "maxLength": 50
              }
            ],
            "modelRef": "#/components/schemas/CommunicationType",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "400",
        "description": "Bad request",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "description": "",
            "customType": "ErrorResponse",
            "schema": [
              {
                "name": "errors",
                "kind": "optional",
                "type": "array",
                "description": "List of errors",
                "modelRef": "#/components/schemas/ValidationError",
                "customType": "ValidationError[]",
                "schema": [
                  {
                    "name": "code",
                    "kind": "optional",
                    "type": "string",
                    "description": "Error code assigned to this violation"
                  },
                  {
                    "name": "fieldName",
                    "kind": "optional",
                    "type": "string",
                    "description": "<p>Name of field that violated validation constraint (optional)</p>"
                  },
                  {
                    "name": "message",
                    "kind": "optional",
                    "type": "string",
                    "description": "Internal message describing the error"
                  },
                  {
                    "name": "messageParameters",
                    "kind": "optional",
                    "type": "array",
                    "description": "Error message parameters",
                    "example": "",
                    "itemType": "object",
                    "customType": "object[]",
                    "schema": []
                  }
                ]
              }
            ],
            "modelRef": "#/components/schemas/ErrorResponse",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "401",
        "description": "Unauthorized",
        "jsonExample": "",
        "isExpanded": true
      },
      {
        "statusCode": "403",
        "description": "Forbidden",
        "jsonExample": "",
        "isExpanded": true
      },
      {
        "statusCode": "404",
        "description": "Not found",
        "jsonExample": "",
        "isExpanded": true
      },
      {
        "statusCode": "500",
        "description": "Internal error",
        "jsonExample": "",
        "isExpanded": true
      }
    ],
    "hasXCodeSamples": false,
    "examples": {
      "languages": [
        {
          "id": "4LAfdZuI0y3F0JfQq2yop",
          "language": "curl",
          "label": "cURL",
          "code": "curl --request PUT \\\n     --url https://api.b.preview.loyaltyservices.io/api/v3/communication-types/{communicationCode} \\\n     --header 'accept: application/json' \\\n     --header 'content-type: application/json' \\\n     --data '{\n     \"code\": \"WELCOME_EMAIL\",\n     \"name\": \"Welcome Email\",\n     \"channel\": \"Email\",\n     \"providerCode\": \"Braze\",\n     \"externalCode\": \"d-abc123\",\n     \"statusCode\": \"Active\"\n     }'"
        },
        {
          "id": "6SIdAHelN5Vd4VQANID6P",
          "language": "ruby",
          "label": "Ruby",
          "code": "require \"uri\"\nrequire \"json\"\nrequire \"net/http\"\n\nurl = URI(\"https://api.b.preview.loyaltyservices.io/api/v3/communication-types/{communicationCode}\")\n\nhttps = Net::HTTP.new(url.host, url.port)\nhttps.use_ssl = true\n\nrequest = Net::HTTP::Put.new(url)\nrequest[\"accept\"] = \"application/json\"\nrequest[\"content-type\"] = \"application/json\"\nrequest.body = JSON.dump({\n   \"code\": \"WELCOME_EMAIL\",\n   \"name\": \"Welcome Email\",\n   \"channel\": \"Email\",\n   \"providerCode\": \"Braze\",\n   \"externalCode\": \"d-abc123\",\n   \"statusCode\": \"Active\"\n})\n\nresponse = https.request(request)\nputs response.read_body\n"
        },
        {
          "id": "u7OnKRARJOX4XgjcFjfYa",
          "language": "python",
          "label": "Python",
          "code": "import requests\nimport json\n\nurl = \"https://api.b.preview.loyaltyservices.io/api/v3/communication-types/{communicationCode}\"\n\npayload = json.dumps({\n   \"code\": \"WELCOME_EMAIL\",\n   \"name\": \"Welcome Email\",\n   \"channel\": \"Email\",\n   \"providerCode\": \"Braze\",\n   \"externalCode\": \"d-abc123\",\n   \"statusCode\": \"Active\"\n})\nheaders = {\n   'accept': 'application/json',\n   'content-type': 'application/json'\n}\n\nresponse = requests.request(\"PUT\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
        },
        {
          "id": "eJu4VYwkmOeOvIXFakGZf",
          "language": "java",
          "label": "Java",
          "code": "OkHttpClient client = new OkHttpClient().newBuilder()\n   .build();\nMediaType mediaType = MediaType.parse(\"application/json\");\nRequestBody body = RequestBody.create(mediaType, \"{\\n  \\\"code\\\": \\\"WELCOME_EMAIL\\\",\\n  \\\"name\\\": \\\"Welcome Email\\\",\\n  \\\"channel\\\": \\\"Email\\\",\\n  \\\"providerCode\\\": \\\"Braze\\\",\\n  \\\"externalCode\\\": \\\"d-abc123\\\",\\n  \\\"statusCode\\\": \\\"Active\\\"\\n}\");\nRequest request = new Request.Builder()\n   .url(\"https://api.b.preview.loyaltyservices.io/api/v3/communication-types/{communicationCode}\")\n   .method(\"PUT\", body)\n   .addHeader(\"accept\", \"application/json\")\n   .addHeader(\"content-type\", \"application/json\")\n   .build();\nResponse response = client.newCall(request).execute();"
        }
      ],
      "selectedLanguageId": "4LAfdZuI0y3F0JfQq2yop"
    },
    "results": {
      "languages": [
        {
          "id": "6AG2QkBafAh8Y3jJ7iFaV",
          "language": "200",
          "code": "// Success\n{\n  \"code\": \"WELCOME_EMAIL\",\n  \"name\": \"Welcome Email\",\n  \"description\": \"Sent when a member enrolls\",\n  \"channel\": \"Email\",\n  \"providerCode\": \"Braze\",\n  \"externalCode\": \"d-abc123\",\n  \"statusCode\": \"Active\"\n}"
        },
        {
          "id": "x5kyOjslfcwX1ysMkJmQ_",
          "language": "400",
          "code": "// Bad request\n{\n  \"errors\": [\n    {\n      \"code\": \"\",\n      \"fieldName\": \"\",\n      \"message\": \"\",\n      \"messageParameters\": [\n        {}\n      ]\n    }\n  ]\n}"
        },
        {
          "id": "3DBKSYv25lT1z79UMO4_e",
          "language": "401",
          "code": "// Unauthorized\n"
        },
        {
          "id": "M2Ugbd0SN6vQD-1xvuPeC",
          "language": "403",
          "code": "// Forbidden\n"
        },
        {
          "id": "91Ojdy_yiiQHdrxh8_buX",
          "language": "404",
          "code": "// Not found\n"
        },
        {
          "id": "4jXYuuGlM4Dg1DaIEIgQu",
          "language": "500",
          "code": "// Internal error\n"
        }
      ],
      "selectedLanguageId": "6AG2QkBafAh8Y3jJ7iFaV"
    }
  },
  "children": [
    {
      "text": ""
    }
  ]
}