dial-rule-matching-to-uri and dial-rule-translation-destination-user. The dial plan comes from the path. The response is 202: the change is published and applied within a few seconds, so a read straight after it may not show the change yet. Send synchronous=yes to wait up to 2 seconds and get 200 with the created rule instead.409. To change a rule's match fields later, delete it and create a new one: PUT updates only the other fields.domain is admin-only. Requires Super User scope. Super User Read Only can use GET; every other scope gets 403. The server sets domain to admin-only itself. For a plan that belongs to a domain, use the /domains/{domain}/dialplans/... form.Authorization: Bearer ********************synchronous=yes: the created rule, once applied.curl --location 'https://awqacore01.crexendocloud.com/ns-api/v2/dialplans/DID Table/dialrules' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data-raw '{
"dial-rule-matching-to-uri": "sip:15555550100@*",
"dial-rule-application": "to-user",
"dial-rule-translation-destination-user": "1001",
"dial-rule-translation-destination-host": "example.com",
"dial-rule-description": "Main line"
}'{
"domain": "admin-only",
"dial-rule-dial-plan": "DID Table",
"dial-rule-matching-to-uri": "sip:15555550100@*",
"dialrule": "c2lwOjE1NTU1NTUwMTAwQCo",
"enabled": "yes",
"dial-rule-matching-from-uri": "*",
"dial-rule-matching-day-of-week": "*",
"dial-rule-matching-start-date": "*",
"dial-rule-matching-end-date": "*",
"dial-rule-matching-start-time": "*",
"dial-rule-matching-end-time": "*",
"dial-rule-application": "to-user",
"dial-rule-parameter": "",
"dial-rule-translation-destination-scheme": "sip:",
"dial-rule-translation-destination-user": "1001",
"dial-rule-translation-destination-host": "example.com",
"dial-rule-translation-source-name": "[*]",
"dial-rule-translation-source-scheme": "[*]",
"dial-rule-translation-source-user": "[*]",
"dial-rule-translation-source-host": "[*]",
"dial-rule-description": "Main line"
}