Evo Voice

<back to all web services

ProvisionCogito

Ensures that a SIP trunk is provisioned for Cogito and that a corresponding outbound SIP trunk is also created on the LiveKit side

Requires Authentication
Requires any of the roles:SystemAdministrator, Manager, Customer
The following routes are available for this service:
POST/endpoints/cogito/provision
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class ProvisionCogitoResponse implements IConvertible
{
    String? sipTrunkId;
    bool? createdNewSipTrunk;
    bool? createdLiveKitTrunk;

    ProvisionCogitoResponse({this.sipTrunkId,this.createdNewSipTrunk,this.createdLiveKitTrunk});
    ProvisionCogitoResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        sipTrunkId = json['sipTrunkId'];
        createdNewSipTrunk = json['createdNewSipTrunk'];
        createdLiveKitTrunk = json['createdLiveKitTrunk'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'sipTrunkId': sipTrunkId,
        'createdNewSipTrunk': createdNewSipTrunk,
        'createdLiveKitTrunk': createdLiveKitTrunk
    };

    getTypeName() => "ProvisionCogitoResponse";
    TypeContext? context = _ctx;
}

/**
* Ensures that a SIP trunk is provisioned for Cogito and that a corresponding outbound SIP trunk is also created on the LiveKit side
*/
// @Api(Description="Ensures that a SIP trunk is provisioned for Cogito and that a corresponding outbound SIP trunk is also created on the LiveKit side")
class ProvisionCogito implements IConvertible
{
    /**
    * The ID of the account to associate the number with
    */
    // @ApiMember(Description="The ID of the account to associate the number with")
    String? accountId;

    ProvisionCogito({this.accountId});
    ProvisionCogito.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        accountId = json['accountId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'accountId': accountId
    };

    getTypeName() => "ProvisionCogito";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'evovoice.io', types: <String, TypeInfo> {
    'ProvisionCogitoResponse': TypeInfo(TypeOf.Class, create:() => ProvisionCogitoResponse()),
    'ProvisionCogito': TypeInfo(TypeOf.Class, create:() => ProvisionCogito()),
});

Dart ProvisionCogito DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /endpoints/cogito/provision HTTP/1.1 
Host: evovoice.io 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"accountId":"String"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"sipTrunkId":"String","createdNewSipTrunk":false,"createdLiveKitTrunk":false}