Requires any of the roles: | SystemAdministrator, Manager, Customer |
POST | /addresses |
---|
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';
class AddressInfo implements IConvertible
{
String? id;
String? friendlyName;
bool? emergencyEnabled;
String? customerName;
String? street;
String? city;
String? region;
String? postalCode;
String? isoCountry;
AddressInfo({this.id,this.friendlyName,this.emergencyEnabled,this.customerName,this.street,this.city,this.region,this.postalCode,this.isoCountry});
AddressInfo.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
id = json['id'];
friendlyName = json['friendlyName'];
emergencyEnabled = json['emergencyEnabled'];
customerName = json['customerName'];
street = json['street'];
city = json['city'];
region = json['region'];
postalCode = json['postalCode'];
isoCountry = json['isoCountry'];
return this;
}
Map<String, dynamic> toJson() => {
'id': id,
'friendlyName': friendlyName,
'emergencyEnabled': emergencyEnabled,
'customerName': customerName,
'street': street,
'city': city,
'region': region,
'postalCode': postalCode,
'isoCountry': isoCountry
};
getTypeName() => "AddressInfo";
TypeContext? context = _ctx;
}
/**
* Create a new business address to be used with e911
*/
// @Api(Description="Create a new business address to be used with e911")
class NewAddress implements IConvertible
{
String? accountId;
String? friendlyName;
bool? emergencyEnabled;
String? customerName;
String? street;
String? city;
String? region;
String? postalCode;
String? isoCountry;
NewAddress({this.accountId,this.friendlyName,this.emergencyEnabled,this.customerName,this.street,this.city,this.region,this.postalCode,this.isoCountry});
NewAddress.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
accountId = json['accountId'];
friendlyName = json['friendlyName'];
emergencyEnabled = json['emergencyEnabled'];
customerName = json['customerName'];
street = json['street'];
city = json['city'];
region = json['region'];
postalCode = json['postalCode'];
isoCountry = json['isoCountry'];
return this;
}
Map<String, dynamic> toJson() => {
'accountId': accountId,
'friendlyName': friendlyName,
'emergencyEnabled': emergencyEnabled,
'customerName': customerName,
'street': street,
'city': city,
'region': region,
'postalCode': postalCode,
'isoCountry': isoCountry
};
getTypeName() => "NewAddress";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'team.evovoice.io', types: <String, TypeInfo> {
'AddressInfo': TypeInfo(TypeOf.Class, create:() => AddressInfo()),
'NewAddress': TypeInfo(TypeOf.Class, create:() => NewAddress()),
});
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.
POST /addresses HTTP/1.1
Host: team.evovoice.io
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<NewAddress xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Settings">
<AccountId>String</AccountId>
<City>String</City>
<CustomerName>String</CustomerName>
<EmergencyEnabled>false</EmergencyEnabled>
<FriendlyName>String</FriendlyName>
<ISOCountry>String</ISOCountry>
<PostalCode>String</PostalCode>
<Region>String</Region>
<Street>String</Street>
</NewAddress>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <AddressInfo xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Settings"> <City>String</City> <CustomerName>String</CustomerName> <EmergencyEnabled>false</EmergencyEnabled> <FriendlyName>String</FriendlyName> <ISOCountry>String</ISOCountry> <Id>String</Id> <PostalCode>String</PostalCode> <Region>String</Region> <Street>String</Street> </AddressInfo>