Create OC Essential Service with IP Group

This request enables you to create a new service from lead with an IP Group used to create a SIP connection between the customer tenant service and the Online PSTN gateway. Two new IP Groups are created on the SBC device that is configured to connect calls between the PSTN trunk and Microsoft Teams, one for the SIP leg (<IP_Group_Name-c) and another for the Teams leg (<IP_Group_Name-t). On Live Platform , a single IP Group representing the SIP leg is created serving as the SIP Connection between the customer tenant service and the Online PSTN gateway. IP Groups are mandatory for SIP Registration (see Create Customer from Lead with IP Group (Advanced Configuration).

By default, Operator Connect is configured to work with Microsoft Operator Connect 'peering' mode with two IP groups, one for the Microsoft Teams connection and the other for the SIP Trunk connection. The default Operator Connect Onboarding script creates a default Proxy Set 'Teams-OC ' and default IP Group 'Teams-OC' for this purpose .

Using this request, two new IP Groups are created on the SBC device for the service, one for the SIP leg (<IP_Group_Name-c) and another for the Teams leg (<IP_Group_Name-t). On the Live Platform portal, a single IP Group is created serving as the SIP Connection between the customer tenant service and the Online PSTN gateway.

URI

Copy
{{baseUrl}}/api/v3/customer

HTTP Method

POST

Request Body

Parameter

Type

Description

ConfigurationName

string

OcEssential_IPGROUP_TYPE

CustomerShortName

string

Customer short name with the following validation rules:

Length between 3 and 15 characters
No spaces
Include only literal and numerical characters and underscores

CustomerFulName

string

Generally the company name, however, any value can be used.

siteLocation

siteLocationName": "string",
sbcId: integer (see Get SBC Devices
sbcOnboardingScript":
sbcDeploymentState: string

The configured SBC used to manage calls for this site location.

ovocCustomerType

string

One of the following values:

IPGROUP_TYPE
TENANT_TYPE
IP Group: An IP Group is created for each new customer based on the Customer Shortname. This type is used for the Access Trunk Direct Routing (used for Direct Routing customers when SIP Registration is required).
Tenant ID:-The new customer is created based on the Tenant's Azure ID

channelId

string

Id of the Channel.

msTenantId

string

Microsoft subscription Tenant ID of the Customer lead.

leadId

string

The Id generated for the lead (see Get All OC Leads)

m365Email

string

Email of the M365 tenant.

m365Password

string

Password of the M365 tenant.

invitationEmail

string

Email of the customer tenant Global Admin or Service account operator used for Onboarding and securing the Token connection.

licenseType

integer

1 EssentialPlus Direct Routing
2 Pro Direct Routing
4 OCHosted Operator Connect (OC Essential Plus)
5 OCpro Operator Connect (OC Pro)

umpCustomerGuid

string($uuid)

CustomerGuid created for the customer tenant when Live Cloud OC license is applied.

If this field has a value: The Guid of customer created by the Live Platform for the OC lead with the given msTenantid. This value is equivalent to the Id value extracted using Get Services Brief Details (V3).
If this field is null: An OC license has not yet been applied to the customer lead.

teamsQos

array

Array consisting of the following values:

applicationID
applicationPassword

applicationID

string

 

applicationPassword

string

 

licensedUsersCount

integer

 

scriptParameters

list array

List array including the following values:

additionalProp1": "string",
additionalProp2": "string",
additionalProp3": "string",

webhooks

List array

List array including the following values:

invitationIsPending
customerCreated
didChange

invitationIsPending

  Customer invitation is pending.

customerCreated

  Customer has been created,

didChange

 

 

Example Request Body

Copy

{
  "configurationName": "OcEssential_IPGROUP_TYPE",
  "msTenantId": "f9f53ee0-56e1-43f6-8fe3-5fb322986657",
  "customerShortName": "Bradx35340067",
  "customerFullName": "Bradx35340067",
  "scriptParameters": {
    "ProxySet": "SIPTrunk",
    "OnlinePstnGateway":"oc1.sandbox2.audiocodes.be"}

}

Example Response

The initial response displays the Task Id.

Parameter

 

Type

Description

Task Id

string

The queued task Id that is generated for this action. You must run the Task request to retrieve the status of the action. See Task Status. Note that the wst string in the prefix is unique for this endpoint.

Copy
{
"jobId": "wst_80b54f45-6643-4fdf-960a-638c18edb787"
}

The execution of the request may take a few minutes. The status will progress from 'In Progress' to 'Completed Success'.

Copy
{
    "id": "wst_80b54f45-6643-4fdf-960a-638c18edb787",
    "status": "CompletedSuccess",
    "details": [
        "Converted"
    ],
    "executionMessages": [
        {
            "level": "Information",
            "message": "SBC sbc-onboarding done for site Bradx35340067."
        },
        {
            "level": "Information",
            "message": "Site created in Ovoc"
        }
    ],
    "outputData": {}
}

Response Codes

200 Success

Parameter

Type

Description

id

string

Task Id

status

string

One of the following values:

In Progress
Completed Success
Completed Failed

details

string

One of the following values:

Converted

executionMessages

list array

List array including the following parameters:

level
message

level

string

One of the following values:

Information
Error

message

string

The following messages are displayed if the customer is created successfully (displayed in the output of the Get Task Id request):
Copy
 "message": "Site created in Ovoc"
Copy
"message": "SBC sbc-onboarding done for site Bradx35340067."
The following Request body includes a customer name with more than 15 characters.
Copy
{
  "configurationName": "OcEssential_IPGROUP_TYPE",
  "msTenantId": "7463427b-8c95-45b4-90ec-7710da369c32",
  "customerShortName": "BradEurope4497123456",
  "customerFullName": "BradEurope44972123456",
  "scriptParameters": {
    "ProxySet": "SIPTrunk",
    "OnlinePstnGateway":"oc1.sandbox2.audiocodes.be"}

}
As a result, the following error is displayed in the output of the Get Task Id request):
Copy
{
    "id": "wst_df298001-41b3-495a-804b-aebecb028723",
    "status": "CompletedFailed",
    "details": [
        "Failed"
    ],
    "executionMessages": [
        {
            "level": "Error",
            "message": "'Customer Short Name' must be between 3 and 15 characters."
        }
    ],
    "outputData": {}
}
The following Request body includes an invalid character ".":
Copy
 {
  "configurationName": "OcEssential_IPGROUP_TYPE",
  "msTenantId": "7463427b-8c95-45b4-90ec-7710da369c32",
  "customerShortName": "BradEurope.4497",
  "customerFullName": "BradEurope4497",
  "scriptParameters": {
    "ProxySet": "SIPTrunk",
    "OnlinePstnGateway":"oc1.sandbox2.audiocodes.be"}

}
As a result, the following error is displayed in the output of the Get Task Id request:
Copy
{
    "id": "wst_7accb116-e200-4008-b97d-345cea3250df",
    "status": "CompletedFailed",
    "details": [
        "Failed"
    ],
    "executionMessages": [
        {
            "level": "Error",
            "message": "Customer Short Name contains invalid characters. Allowed characters: letters, numbers and '_'."
        },
        {
            "level": "Error",
            "message": "Customer Full Name contains invalid characters. Allowed characters: letters, numbers, _, ' and space."
        }
    ],
    "outputData": {}
}

umpCustomerGuid

string($uuid)

CustomerGuid created for the customer tenant. This value is equivalent to the Id value extracted using Get Services Brief Details (V3).

If this field is null: An OC license has not yet been applied to the customer lead.

outputData

list array

Additional information.

405 Method Not Allowed:
Copy
{
    "type": "https://httpstatuses.com/500",
    "title": "Internal Server Error",
    "status": 500,
    "traceId": "00-5bcfb1f75627574e43998a4558b34f5e-85a4aabfabc87feb-00"
}
500 Internal Server Error
Copy
{
    "type": "https://httpstatuses.com/500",
    "title": "Internal Server Error",
    "status": 500,
    "traceId": "00-5bcfb1f75627574e43998a4558b34f5e-85a4aabfabc87feb-00"
}