| POST,PUT,OPTIONS | /v1/Scheduler/Book |
|---|
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using CRM.AgencyPlatform.API.Internal;
namespace CRM.AgencyPlatform.API.Internal
{
public partial class Contact
{
public virtual int ContactId { get; set; }
public virtual int ContactType { get; set; }
public virtual string FirstName { get; set; }
public virtual string LastName { get; set; }
public virtual string Name { get; set; }
public virtual string Role { get; set; }
public virtual string Title { get; set; }
public virtual string EmailWork { get; set; }
public virtual string EmailPersonal { get; set; }
public virtual string District { get; set; }
public virtual int DistrictID { get; set; }
public virtual string School { get; set; }
public virtual long SchoolID { get; set; }
public virtual string State { get; set; }
public virtual string StateName { get; set; }
public virtual long StateID { get; set; }
public virtual long CountyID { get; set; }
public virtual string County { get; set; }
public virtual string Phone { get; set; }
public virtual string Department { get; set; }
public virtual string Flow { get; set; }
public virtual DateTime LastContact { get; set; }
public virtual bool DoNotContact { get; set; }
public virtual bool Active { get; set; }
public virtual int AgentId { get; set; }
public virtual string PhoneAlt { get; set; }
public virtual int PeraContactId { get; set; }
public virtual string RoomNumber { get; set; }
public virtual int SourceTypeId { get; set; }
public virtual string SourceTypeDesc { get; set; }
public virtual string SourceNote { get; set; }
public virtual int ContactStatusId { get; set; }
public virtual string ContactStatusDesc { get; set; }
public virtual string SSN { get; set; }
public virtual DateTime DateOfBirth { get; set; }
public virtual bool Deleted { get; set; }
public virtual bool IsShared { get; set; }
public virtual string address_line1 { get; set; }
public virtual string address_city { get; set; }
public virtual string address_state { get; set; }
public virtual string address_zip { get; set; }
public virtual string DeletedBy { get; set; }
public virtual DateTime? DeletedDateTimeUtc { get; set; }
public virtual bool HasNBC { get; set; }
public virtual bool HasFactFinderSheet { get; set; }
public virtual string MiddleInitial { get; set; }
public virtual string Tags { get; set; }
public virtual DateTime DateCreated { get; set; }
public virtual string PhoneLabel { get; set; }
public virtual string AltPhoneLabel { get; set; }
public virtual string Carriers { get; set; }
public virtual string ContactImage { get; set; }
public virtual string CompanyAffiliation { get; set; }
public virtual string AdditionalInformation { get; set; }
public virtual bool HasGiftCard { get; set; }
public virtual int ContactCategory { get; set; }
public virtual int WritingAgentId { get; set; }
public virtual string WritingAgentName { get; set; }
public virtual string MaritalStatus { get; set; }
public virtual decimal TotalDebtAmount { get; set; }
public virtual int NumberOfDebtAccounts { get; set; }
public virtual int FactFinderCodeId { get; set; }
public virtual string BusinessName { get; set; }
public virtual string DBA { get; set; }
public virtual Guid ContactGUID { get; set; }
public virtual DateTime ProjectEndDate { get; set; }
public virtual int Rate { get; set; }
public virtual int JobID { get; set; }
public virtual string JobName { get; set; }
public virtual int JobCount { get; set; }
public virtual bool Locked { get; set; }
public virtual int LockedByAgentId { get; set; }
public virtual DateTime LockedTimestamp { get; set; }
public virtual string Initials { get; set; }
public virtual string ContactCategoryName { get; set; }
public virtual bool SMSOptIn { get; set; }
}
public partial class SchedulerBookRequest
{
public virtual SchedulerTimeslot Timeslot { get; set; }
}
public partial class SchedulerTimeslot
{
public virtual DateTime Day { get; set; }
public virtual TimeSpan Time { get; set; }
public virtual int Duration { get; set; }
public virtual DateTime StartDateTime { get; set; }
public virtual DateTime EndDateTime { get; set; }
public virtual string TimeFriendly { get; set; }
public virtual Contact Contact { get; set; }
public virtual List<Guid> ServiceIds { get; set; } = [];
public virtual Guid LocationId { get; set; }
public virtual bool Unavailable { get; set; }
public virtual List<int> BookedIds { get; set; } = [];
public virtual Guid CalendarId { get; set; }
public virtual string SchedulerUrl { get; set; }
}
}
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 /v1/Scheduler/Book HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<SchedulerBookRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
<Timeslot>
<BookedIds xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:int>0</d3p1:int>
</BookedIds>
<CalendarId>00000000-0000-0000-0000-000000000000</CalendarId>
<Contact>
<Active>false</Active>
<AdditionalInformation>String</AdditionalInformation>
<AgentId>0</AgentId>
<AltPhoneLabel>String</AltPhoneLabel>
<BusinessName>String</BusinessName>
<Carriers>String</Carriers>
<CompanyAffiliation>String</CompanyAffiliation>
<ContactCategory>0</ContactCategory>
<ContactCategoryName>String</ContactCategoryName>
<ContactGUID>00000000-0000-0000-0000-000000000000</ContactGUID>
<ContactId>0</ContactId>
<ContactImage>String</ContactImage>
<ContactStatusDesc>String</ContactStatusDesc>
<ContactStatusId>0</ContactStatusId>
<ContactType>0</ContactType>
<County>String</County>
<CountyID>0</CountyID>
<DBA>String</DBA>
<DateCreated>0001-01-01T00:00:00</DateCreated>
<DateOfBirth>0001-01-01T00:00:00</DateOfBirth>
<Deleted>false</Deleted>
<DeletedBy>String</DeletedBy>
<DeletedDateTimeUtc>0001-01-01T00:00:00</DeletedDateTimeUtc>
<Department>String</Department>
<District>String</District>
<DistrictID>0</DistrictID>
<DoNotContact>false</DoNotContact>
<EmailPersonal>String</EmailPersonal>
<EmailWork>String</EmailWork>
<FactFinderCodeId>0</FactFinderCodeId>
<FirstName>String</FirstName>
<Flow>String</Flow>
<HasFactFinderSheet>false</HasFactFinderSheet>
<HasGiftCard>false</HasGiftCard>
<HasNBC>false</HasNBC>
<Initials>String</Initials>
<IsShared>false</IsShared>
<JobCount>0</JobCount>
<JobID>0</JobID>
<JobName>String</JobName>
<LastContact>0001-01-01T00:00:00</LastContact>
<LastName>String</LastName>
<Locked>false</Locked>
<LockedByAgentId>0</LockedByAgentId>
<LockedTimestamp>0001-01-01T00:00:00</LockedTimestamp>
<MaritalStatus>String</MaritalStatus>
<MiddleInitial>String</MiddleInitial>
<Name>String</Name>
<NumberOfDebtAccounts>0</NumberOfDebtAccounts>
<PeraContactId>0</PeraContactId>
<Phone>String</Phone>
<PhoneAlt>String</PhoneAlt>
<PhoneLabel>String</PhoneLabel>
<ProjectEndDate>0001-01-01T00:00:00</ProjectEndDate>
<Rate>0</Rate>
<Role>String</Role>
<RoomNumber>String</RoomNumber>
<SMSOptIn>false</SMSOptIn>
<SSN>String</SSN>
<School>String</School>
<SchoolID>0</SchoolID>
<SourceNote>String</SourceNote>
<SourceTypeDesc>String</SourceTypeDesc>
<SourceTypeId>0</SourceTypeId>
<State>String</State>
<StateID>0</StateID>
<StateName>String</StateName>
<Tags>String</Tags>
<Title>String</Title>
<TotalDebtAmount>0</TotalDebtAmount>
<WritingAgentId>0</WritingAgentId>
<WritingAgentName>String</WritingAgentName>
<address_city>String</address_city>
<address_line1>String</address_line1>
<address_state>String</address_state>
<address_zip>String</address_zip>
</Contact>
<Day>0001-01-01T00:00:00</Day>
<Duration>0</Duration>
<LocationId>00000000-0000-0000-0000-000000000000</LocationId>
<SchedulerUrl>String</SchedulerUrl>
<ServiceIds xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:guid>00000000-0000-0000-0000-000000000000</d3p1:guid>
</ServiceIds>
<Time>PT0S</Time>
<Unavailable>false</Unavailable>
</Timeslot>
</SchedulerBookRequest>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <int xmlns="http://schemas.microsoft.com/2003/10/Serialization/">0</int>