I was unable to recreate this issue and have some diagnosing/debugging tests/questions you can run to isolate this issue further:
1. Does your extension's serviceFeatures include an object with the featureName === "SMS" && is enabled === true, respectively?
GET /restapi/v1.0/account/~/extension/~/ HTTP/1.1
Host: platform.devtest.ringcentral.com
Authorization: Bearer {{REPLACE_WITH_YOUR_ACCESS_TOKEN}}
Accept: application/json
Content-Type: application/json
The result will be details about the extension you are currently authenticated as via the API. The response will contain a "serviceFeatures" property which is an array of serviceFeatureObjects).
2. Is from.phoneNumber of your SMS POST body an SMS enabled phone number from which your authenticated user can send an SMS?
GET /restapi/v1.0/account/~/extension/~/phone-number HTTP/1.1
Host: platform.devtest.ringcentral.com
Authorization: Bearer {{REPLACE_WITH_YOUR_ACCESS_TOKEN}}
Accept: application/json
Content-Type: application/json
The result will be a list of phone numbers which your currently authenticated user is permitted able to set as "from.phoneNumber" while creating outbound communications. The response will contain a list of phoneNumberObjects and each object will have a "features" property which is an array of features enabled for that phoneNumberObject. Match your SMS from.phoneNumber to the phoneNumberObject records.phoneNumber and validate that "SmsSender" is a feature which is enabled for the phoneNumber you are using as the "from" of your SMS POST body please.
Please report the results of these tests here so I can help you appropriately.