GET | /accounts |
---|
"use strict";
/** @typedef {'Ascend'|'Descend'} */
export var SortOrders;
(function (SortOrders) {
SortOrders["Ascend"] = "Ascend"
SortOrders["Descend"] = "Descend"
})(SortOrders || (SortOrders = {}));
/** @typedef T {any} */
export class ListRequest {
/** @param {{page?:number,all?:boolean,countPerPage?:number,specificIds?:string[],sortField?:string,sortOrder?:SortOrders,simplifiedPaging?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {number}
* @description The page of data to retrieve */
page;
/**
* @type {boolean}
* @description If you want all objects to be returned. This should be used with care */
all;
/**
* @type {number}
* @description The number per page to retrieve */
countPerPage;
/**
* @type {string[]}
* @description Specific IDs */
specificIds;
/**
* @type {string}
* @description Specify a sort field */
sortField;
/**
* @type {SortOrders}
* @description Specify a sort order */
sortOrder;
/**
* @type {boolean}
* @description Disables total / page counts - improves performance. Returns only data. If there is no more data, Items will be empty array */
simplifiedPaging;
}
export class EntityInfo {
/** @param {{id?:string,dateCreated?:string,dateLastModified?:string,createdBy?:string,lastModifiedBy?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description The ID of the object */
id;
/**
* @type {string}
* @description The date the object was created */
dateCreated;
/**
* @type {string}
* @description The date the object was last modified */
dateLastModified;
/**
* @type {string}
* @description The user that created this object */
createdBy;
/**
* @type {string}
* @description The user that last modified this object */
lastModifiedBy;
}
export class BillingItem {
/** @param {{baseCost?:number,rawUnitMultiplier?:number,unitCost?:number,allowance?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
baseCost;
/** @type {number} */
rawUnitMultiplier;
/** @type {number} */
unitCost;
/** @type {number} */
allowance;
}
export class BillingSettings {
/** @param {{base?:BillingItem,localNumbers?:BillingItem,tollFreeNumbers?:BillingItem,inboundVoiceCalls?:BillingItem,outboundVoiceCalls?:BillingItem,inboundFaxes?:BillingItem,outboundFaxes?:BillingItem,inboundSmsMessages?:BillingItem,outboundSmsMessages?:BillingItem,aiInsights?:BillingItem,aiLiveMinutes?:BillingItem,aiMessages?:BillingItem}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {BillingItem} */
base;
/** @type {BillingItem} */
localNumbers;
/** @type {BillingItem} */
tollFreeNumbers;
/** @type {BillingItem} */
inboundVoiceCalls;
/** @type {BillingItem} */
outboundVoiceCalls;
/** @type {BillingItem} */
inboundFaxes;
/** @type {BillingItem} */
outboundFaxes;
/** @type {BillingItem} */
inboundSmsMessages;
/** @type {BillingItem} */
outboundSmsMessages;
/** @type {BillingItem} */
aiInsights;
/** @type {BillingItem} */
aiLiveMinutes;
/** @type {BillingItem} */
aiMessages;
}
export class AccountInfo extends EntityInfo {
/** @param {{name?:string,parentAccountId?:string,twilioAccountSid?:string,ancestorIds?:string[],maxPhoneNumbers?:number,isBYOA?:boolean,trustHubProfileSid?:string,logoId?:string,logoUri?:string,billingSettings?:BillingSettings,id?:string,dateCreated?:string,dateLastModified?:string,createdBy?:string,lastModifiedBy?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/**
* @type {string}
* @description The name of this account */
name;
/**
* @type {string}
* @description The ID of this account's parent */
parentAccountId;
/**
* @type {string}
* @description The twilio account SID */
twilioAccountSid;
/**
* @type {string[]}
* @description The ancestors of this account. Useful for breadcrumbs */
ancestorIds;
/**
* @type {number}
* @description The max number of phone numbers this account can have */
maxPhoneNumbers;
/**
* @type {boolean}
* @description This account is BYOA */
isBYOA;
/**
* @type {string}
* @description TrustHub Profile Sid */
trustHubProfileSid;
/**
* @type {string}
* @description The ID of the logo file */
logoId;
/**
* @type {string}
* @description The URI of the logo file */
logoUri;
/**
* @type {BillingSettings}
* @description The billing settings for this account */
billingSettings;
}
export class ListAccounts extends ListRequest {
/** @param {{nameFilter?:string,page?:number,all?:boolean,countPerPage?:number,specificIds?:string[],sortField?:string,sortOrder?:SortOrders,simplifiedPaging?:boolean}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/**
* @type {string}
* @description Filter the results by name */
nameFilter;
}
/** @typedef T {any} */
export class ListResponse {
/** @param {{items?:AccountInfo[],totalCount?:number,totalPages?:number,hasMorePages?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {AccountInfo[]}
* @description The items */
items;
/**
* @type {number}
* @description The total number of items */
totalCount;
/**
* @type {number}
* @description The total number of pages */
totalPages;
/**
* @type {boolean}
* @description Are there more pages of items? Used with simplified paging */
hasMorePages;
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /accounts HTTP/1.1 Host: team.evovoice.io Accept: application/xml
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <ListResponseOfAccountInfoLIonMsk5 xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Voice.Api"> <HasMorePages>false</HasMorePages> <Items xmlns:d2p1="http://schemas.datacontract.org/2004/07/Voice.Api.Accounts"> <d2p1:AccountInfo> <CreatedBy>String</CreatedBy> <DateCreated>String</DateCreated> <DateLastModified>String</DateLastModified> <Id>String</Id> <LastModifiedBy>String</LastModifiedBy> <d2p1:AncestorIds xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d4p1:string>String</d4p1:string> </d2p1:AncestorIds> <d2p1:BillingSettings> <d2p1:AIInsights> <d2p1:Allowance>0</d2p1:Allowance> <d2p1:BaseCost>0</d2p1:BaseCost> <d2p1:RawUnitMultiplier>0</d2p1:RawUnitMultiplier> <d2p1:UnitCost>0</d2p1:UnitCost> </d2p1:AIInsights> <d2p1:AILiveMinutes> <d2p1:Allowance>0</d2p1:Allowance> <d2p1:BaseCost>0</d2p1:BaseCost> <d2p1:RawUnitMultiplier>0</d2p1:RawUnitMultiplier> <d2p1:UnitCost>0</d2p1:UnitCost> </d2p1:AILiveMinutes> <d2p1:AIMessages> <d2p1:Allowance>0</d2p1:Allowance> <d2p1:BaseCost>0</d2p1:BaseCost> <d2p1:RawUnitMultiplier>0</d2p1:RawUnitMultiplier> <d2p1:UnitCost>0</d2p1:UnitCost> </d2p1:AIMessages> <d2p1:Base> <d2p1:Allowance>0</d2p1:Allowance> <d2p1:BaseCost>0</d2p1:BaseCost> <d2p1:RawUnitMultiplier>0</d2p1:RawUnitMultiplier> <d2p1:UnitCost>0</d2p1:UnitCost> </d2p1:Base> <d2p1:InboundFaxes> <d2p1:Allowance>0</d2p1:Allowance> <d2p1:BaseCost>0</d2p1:BaseCost> <d2p1:RawUnitMultiplier>0</d2p1:RawUnitMultiplier> <d2p1:UnitCost>0</d2p1:UnitCost> </d2p1:InboundFaxes> <d2p1:InboundSmsMessages> <d2p1:Allowance>0</d2p1:Allowance> <d2p1:BaseCost>0</d2p1:BaseCost> <d2p1:RawUnitMultiplier>0</d2p1:RawUnitMultiplier> <d2p1:UnitCost>0</d2p1:UnitCost> </d2p1:InboundSmsMessages> <d2p1:InboundVoiceCalls> <d2p1:Allowance>0</d2p1:Allowance> <d2p1:BaseCost>0</d2p1:BaseCost> <d2p1:RawUnitMultiplier>0</d2p1:RawUnitMultiplier> <d2p1:UnitCost>0</d2p1:UnitCost> </d2p1:InboundVoiceCalls> <d2p1:LocalNumbers> <d2p1:Allowance>0</d2p1:Allowance> <d2p1:BaseCost>0</d2p1:BaseCost> <d2p1:RawUnitMultiplier>0</d2p1:RawUnitMultiplier> <d2p1:UnitCost>0</d2p1:UnitCost> </d2p1:LocalNumbers> <d2p1:OutboundFaxes> <d2p1:Allowance>0</d2p1:Allowance> <d2p1:BaseCost>0</d2p1:BaseCost> <d2p1:RawUnitMultiplier>0</d2p1:RawUnitMultiplier> <d2p1:UnitCost>0</d2p1:UnitCost> </d2p1:OutboundFaxes> <d2p1:OutboundSmsMessages> <d2p1:Allowance>0</d2p1:Allowance> <d2p1:BaseCost>0</d2p1:BaseCost> <d2p1:RawUnitMultiplier>0</d2p1:RawUnitMultiplier> <d2p1:UnitCost>0</d2p1:UnitCost> </d2p1:OutboundSmsMessages> <d2p1:OutboundVoiceCalls> <d2p1:Allowance>0</d2p1:Allowance> <d2p1:BaseCost>0</d2p1:BaseCost> <d2p1:RawUnitMultiplier>0</d2p1:RawUnitMultiplier> <d2p1:UnitCost>0</d2p1:UnitCost> </d2p1:OutboundVoiceCalls> <d2p1:TollFreeNumbers> <d2p1:Allowance>0</d2p1:Allowance> <d2p1:BaseCost>0</d2p1:BaseCost> <d2p1:RawUnitMultiplier>0</d2p1:RawUnitMultiplier> <d2p1:UnitCost>0</d2p1:UnitCost> </d2p1:TollFreeNumbers> </d2p1:BillingSettings> <d2p1:IsBYOA>false</d2p1:IsBYOA> <d2p1:LogoId>String</d2p1:LogoId> <d2p1:LogoUri>String</d2p1:LogoUri> <d2p1:MaxPhoneNumbers>0</d2p1:MaxPhoneNumbers> <d2p1:Name>String</d2p1:Name> <d2p1:ParentAccountId>String</d2p1:ParentAccountId> <d2p1:TrustHubProfileSid>String</d2p1:TrustHubProfileSid> <d2p1:TwilioAccountSid>String</d2p1:TwilioAccountSid> </d2p1:AccountInfo> </Items> <TotalCount>0</TotalCount> <TotalPages>0</TotalPages> </ListResponseOfAccountInfoLIonMsk5>