Platform API

<back to all web services

CreateStaff

Requires Authentication
The following routes are available for this service:
All Verbs/api/organisations/{ContactId}/create/staff
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;

public class dtos
{

    public static class CreateStaff
    {
        /**
        * Organisation Contact to create staff for
        */
        @ApiMember(DataType="Guid", Description="Organisation Contact to create staff for", IsRequired=true, Name="ContactId")
        public UUID ContactId = null;

        /**
        * Details of the virtual contact being created
        */
        @ApiMember(DataType="UserProfileSummaryCoreModel", Description="Details of the virtual contact being created", IsRequired=true, Name="Contact")
        public UserProfileSummaryModel Contact = null;
        
        public UUID getContactId() { return ContactId; }
        public CreateStaff setContactId(UUID value) { this.ContactId = value; return this; }
        public UserProfileSummaryModel getContact() { return Contact; }
        public CreateStaff setContact(UserProfileSummaryModel value) { this.Contact = value; return this; }
    }

    public static class UserProfileSummaryModel
    {
        /**
        * User Profile Id
        */
        @ApiMember(DataType="Guid", Description="User Profile Id", Name="UserProfileId")
        public UUID UserProfileId = null;

        /**
        * User linked to the profile
        */
        @ApiMember(DataType="Guid", Description="User linked to the profile", Name="UserId")
        public UUID UserId = null;

        /**
        * Contact linked to the profile
        */
        @ApiMember(DataType="Guid", Description="Contact linked to the profile", Name="ContactId")
        public UUID ContactId = null;

        /**
        * User linked to the profile
        */
        @ApiMember(DataType="string", Description="User linked to the profile", Name="UserName")
        public String UserName = null;

        /**
        * User Profile Name
        */
        @ApiMember(DataType="string", Description="User Profile Name", Name="ProfileName")
        public String ProfileName = null;

        /**
        * Full name of the contact linked to the profile
        */
        @ApiMember(DataType="string", Description="Full name of the contact linked to the profile", Name="ContactFullName")
        public String ContactFullName = null;

        /**
        * Email Address of the contact linked to the profile
        */
        @ApiMember(DataType="string", Description="Email Address of the contact linked to the profile", Name="EmailAddress")
        public String EmailAddress = null;

        /**
        * Email signature of the contact linked to the profile
        */
        @ApiMember(DataType="string", Description="Email signature of the contact linked to the profile", Name="EmailSignature")
        public String EmailSignature = null;

        /**
        * Mobile number of the contact linked to the profile
        */
        @ApiMember(DataType="string", Description="Mobile number of the contact linked to the profile", Name="MobileNumber")
        public String MobileNumber = null;

        /**
        * Phone number of the contact linked to the profile
        */
        @ApiMember(DataType="string", Description="Phone number of the contact linked to the profile", Name="PhoneNumber")
        public String PhoneNumber = null;

        /**
        * Type of contact (person, organisation etc.) linked to the profile
        */
        @ApiMember(DataType="string", Description="Type of contact (person, organisation etc.) linked to the profile", Name="ContactTypeId")
        public UUID ContactTypeId = null;

        /**
        * Type of contact (person, organisation etc.) linked to the profile
        */
        @ApiMember(DataType="string", Description="Type of contact (person, organisation etc.) linked to the profile", Name="ContactTypeName")
        public String ContactTypeName = null;

        /**
        * First name of the contact linked to the profile
        */
        @ApiMember(DataType="string", Description="First name of the contact linked to the profile", Name="FirstName")
        public String FirstName = null;

        /**
        * Surname of the contact linked to the profile
        */
        @ApiMember(DataType="string", Description="Surname of the contact linked to the profile", Name="Surname")
        public String Surname = null;

        /**
        * Title of contact linked to the profile
        */
        @ApiMember(DataType="string", Description="Title of contact linked to the profile", Name="Title")
        public String Title = null;

        /**
        * Legal name of contact linked to the profile
        */
        @ApiMember(DataType="string", Description="Legal name of contact linked to the profile", Name="LegalName")
        public String LegalName = null;

        /**
        * Trading name of contact linked to the profile
        */
        @ApiMember(DataType="string", Description="Trading name of contact linked to the profile", Name="TradingName")
        public String TradingName = null;

        /**
        * Australian Business Number
        */
        @ApiMember(DataType="string", Description="Australian Business Number", Name="Abn", ParameterType="query")
        public String Abn = null;

        /**
        * Australian Company Number
        */
        @ApiMember(DataType="string", Description="Australian Company Number", Name="Acn", ParameterType="query")
        public String Acn = null;

        /**
        * Australian Registered Body Number
        */
        @ApiMember(DataType="string", Description="Australian Registered Body Number", Name="Arbn", ParameterType="query")
        public String Arbn = null;

        /**
        * Indicates if the Contact is registered for GST.
        */
        @ApiMember(DataType="bool", Description="Indicates if the Contact is registered for GST.", Name="GstRegistered", ParameterType="query")
        public Boolean GstRegistered = null;

        /**
        * True if english is a secondary language for the contact.
        */
        @ApiMember(DataType="bool", Description="True if english is a secondary language for the contact.", Name="ESL", ParameterType="query")
        public Boolean ESL = null;

        /**
        * Language that is the primary language for the contact.
        */
        @ApiMember(DataType="string", Description="Language that is the primary language for the contact.", Name="Language", ParameterType="query")
        public String Language = null;

        /**
        * True if an interpreter is required.
        */
        @ApiMember(DataType="bool", Description="True if an interpreter is required.", Name="InterpreterRequired", ParameterType="query")
        public Boolean InterpreterRequired = null;

        /**
        * Licensee specific notes about the contact.
        */
        @ApiMember(DataType="string", Description="Licensee specific notes about the contact.", Name="LicenseeNotes", ParameterType="query")
        public String LicenseeNotes = null;

        /**
        * Profile photo of contact linked to the profile
        */
        @ApiMember(DataType="string", Description="Profile photo of contact linked to the profile", Name="ProfilePhotoUrl")
        public String ProfilePhotoUrl = null;

        /**
        * Thumbnail photo of contact linked to the profile
        */
        @ApiMember(DataType="string", Description="Thumbnail photo of contact linked to the profile", Name="ProfilePhotoThumbnailUrl")
        public String ProfilePhotoThumbnailUrl = null;

        /**
        * Profile photo id of contact linked to the profile
        */
        @ApiMember(DataType="Guid", Description="Profile photo id of contact linked to the profile", Name="ProfileImageId")
        public UUID ProfileImageId = null;

        /**
        * Profile description
        */
        @ApiMember(DataType="string", Description="Profile description", Name="Description")
        public String Description = null;

        /**
        * Employment Industry
        */
        @ApiMember(DataType="string", Description="Employment Industry", Name="EmploymentIndustry")
        public String EmploymentIndustry = null;

        /**
        * Employment Role
        */
        @ApiMember(DataType="string", Description="Employment Role", Name="EmploymentRole")
        public String EmploymentRole = null;

        /**
        * Areas of Work
        */
        @ApiMember(DataType="string", Description="Areas of Work", Name="EmploymentGeographicArea")
        public String EmploymentGeographicArea = null;

        /**
        * The contacts timezone.
        */
        @ApiMember(DataType="Guid", Description="The contacts timezone.", Name="Timezone", ParameterType="query")
        public UUID Timezone = null;

        /**
        * Timezone Name
        */
        @ApiMember(DataType="string", Description="Timezone Name", Name="TimezoneName", ParameterType="query")
        public String TimezoneName = null;

        /**
        * The primary address of the contact
        */
        @ApiMember(DataType="string", Description="The primary address of the contact", Name="PrimaryAddress", ParameterType="query")
        public String PrimaryAddress = null;

        /**
        * Is this an active contact? Or an inactive contact (deleted account)?
        */
        @ApiMember(DataType="bool", Description="Is this an active contact? Or an inactive contact (deleted account)?", Name="IsActiveContact")
        public Boolean IsActiveContact = null;
        
        public UUID getUserProfileId() { return UserProfileId; }
        public UserProfileSummaryModel setUserProfileId(UUID value) { this.UserProfileId = value; return this; }
        public UUID getUserId() { return UserId; }
        public UserProfileSummaryModel setUserId(UUID value) { this.UserId = value; return this; }
        public UUID getContactId() { return ContactId; }
        public UserProfileSummaryModel setContactId(UUID value) { this.ContactId = value; return this; }
        public String getUserName() { return UserName; }
        public UserProfileSummaryModel setUserName(String value) { this.UserName = value; return this; }
        public String getProfileName() { return ProfileName; }
        public UserProfileSummaryModel setProfileName(String value) { this.ProfileName = value; return this; }
        public String getContactFullName() { return ContactFullName; }
        public UserProfileSummaryModel setContactFullName(String value) { this.ContactFullName = value; return this; }
        public String getEmailAddress() { return EmailAddress; }
        public UserProfileSummaryModel setEmailAddress(String value) { this.EmailAddress = value; return this; }
        public String getEmailSignature() { return EmailSignature; }
        public UserProfileSummaryModel setEmailSignature(String value) { this.EmailSignature = value; return this; }
        public String getMobileNumber() { return MobileNumber; }
        public UserProfileSummaryModel setMobileNumber(String value) { this.MobileNumber = value; return this; }
        public String getPhoneNumber() { return PhoneNumber; }
        public UserProfileSummaryModel setPhoneNumber(String value) { this.PhoneNumber = value; return this; }
        public UUID getContactTypeId() { return ContactTypeId; }
        public UserProfileSummaryModel setContactTypeId(UUID value) { this.ContactTypeId = value; return this; }
        public String getContactTypeName() { return ContactTypeName; }
        public UserProfileSummaryModel setContactTypeName(String value) { this.ContactTypeName = value; return this; }
        public String getFirstName() { return FirstName; }
        public UserProfileSummaryModel setFirstName(String value) { this.FirstName = value; return this; }
        public String getSurname() { return Surname; }
        public UserProfileSummaryModel setSurname(String value) { this.Surname = value; return this; }
        public String getTitle() { return Title; }
        public UserProfileSummaryModel setTitle(String value) { this.Title = value; return this; }
        public String getLegalName() { return LegalName; }
        public UserProfileSummaryModel setLegalName(String value) { this.LegalName = value; return this; }
        public String getTradingName() { return TradingName; }
        public UserProfileSummaryModel setTradingName(String value) { this.TradingName = value; return this; }
        public String getAbn() { return Abn; }
        public UserProfileSummaryModel setAbn(String value) { this.Abn = value; return this; }
        public String getAcn() { return Acn; }
        public UserProfileSummaryModel setAcn(String value) { this.Acn = value; return this; }
        public String getArbn() { return Arbn; }
        public UserProfileSummaryModel setArbn(String value) { this.Arbn = value; return this; }
        public Boolean isGstRegistered() { return GstRegistered; }
        public UserProfileSummaryModel setGstRegistered(Boolean value) { this.GstRegistered = value; return this; }
        public Boolean isEsl() { return ESL; }
        public UserProfileSummaryModel setEsl(Boolean value) { this.ESL = value; return this; }
        public String getLanguage() { return Language; }
        public UserProfileSummaryModel setLanguage(String value) { this.Language = value; return this; }
        public Boolean isInterpreterRequired() { return InterpreterRequired; }
        public UserProfileSummaryModel setInterpreterRequired(Boolean value) { this.InterpreterRequired = value; return this; }
        public String getLicenseeNotes() { return LicenseeNotes; }
        public UserProfileSummaryModel setLicenseeNotes(String value) { this.LicenseeNotes = value; return this; }
        public String getProfilePhotoUrl() { return ProfilePhotoUrl; }
        public UserProfileSummaryModel setProfilePhotoUrl(String value) { this.ProfilePhotoUrl = value; return this; }
        public String getProfilePhotoThumbnailUrl() { return ProfilePhotoThumbnailUrl; }
        public UserProfileSummaryModel setProfilePhotoThumbnailUrl(String value) { this.ProfilePhotoThumbnailUrl = value; return this; }
        public UUID getProfileImageId() { return ProfileImageId; }
        public UserProfileSummaryModel setProfileImageId(UUID value) { this.ProfileImageId = value; return this; }
        public String getDescription() { return Description; }
        public UserProfileSummaryModel setDescription(String value) { this.Description = value; return this; }
        public String getEmploymentIndustry() { return EmploymentIndustry; }
        public UserProfileSummaryModel setEmploymentIndustry(String value) { this.EmploymentIndustry = value; return this; }
        public String getEmploymentRole() { return EmploymentRole; }
        public UserProfileSummaryModel setEmploymentRole(String value) { this.EmploymentRole = value; return this; }
        public String getEmploymentGeographicArea() { return EmploymentGeographicArea; }
        public UserProfileSummaryModel setEmploymentGeographicArea(String value) { this.EmploymentGeographicArea = value; return this; }
        public UUID getTimezone() { return Timezone; }
        public UserProfileSummaryModel setTimezone(UUID value) { this.Timezone = value; return this; }
        public String getTimezoneName() { return TimezoneName; }
        public UserProfileSummaryModel setTimezoneName(String value) { this.TimezoneName = value; return this; }
        public String getPrimaryAddress() { return PrimaryAddress; }
        public UserProfileSummaryModel setPrimaryAddress(String value) { this.PrimaryAddress = value; return this; }
        public Boolean getIsActiveContact() { return IsActiveContact; }
        public UserProfileSummaryModel setIsActiveContact(Boolean value) { this.IsActiveContact = value; return this; }
    }

    @ApiResponse(Description="Contact Id of the newly invited/ created contact")
    public static class AddContactResponse
    {
        public UUID ContactId = null;
        public ResponseStatus ResponseStatus = null;
        
        public UUID getContactId() { return ContactId; }
        public AddContactResponse setContactId(UUID value) { this.ContactId = value; return this; }
        public ResponseStatus getResponseStatus() { return ResponseStatus; }
        public AddContactResponse setResponseStatus(ResponseStatus value) { this.ResponseStatus = value; return this; }
    }

}

Java CreateStaff DTOs

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

HTTP + OTHER

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

POST /api/organisations/{ContactId}/create/staff HTTP/1.1 
Host: pfapi.pstpf.com.au 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"ContactId":"00000000-0000-0000-0000-000000000000","Contact":{"UserProfileId":"00000000-0000-0000-0000-000000000000","UserId":"00000000-0000-0000-0000-000000000000","ContactId":"00000000-0000-0000-0000-000000000000","UserName":"String","ProfileName":"String","ContactFullName":"String","EmailAddress":"String","EmailSignature":"String","MobileNumber":"String","PhoneNumber":"String","ContactTypeId":"00000000-0000-0000-0000-000000000000","ContactTypeName":"String","FirstName":"String","Surname":"String","Title":"String","LegalName":"String","TradingName":"String","Abn":"String","Acn":"String","Arbn":"String","GstRegistered":false,"ESL":false,"Language":"String","InterpreterRequired":false,"LicenseeNotes":"String","ProfilePhotoUrl":"String","ProfilePhotoThumbnailUrl":"String","ProfileImageId":"00000000-0000-0000-0000-000000000000","Description":"String","EmploymentIndustry":"String","EmploymentRole":"String","EmploymentGeographicArea":"String","Timezone":"00000000-0000-0000-0000-000000000000","TimezoneName":"String","PrimaryAddress":"String","IsActiveContact":false}}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"ContactId":"00000000-0000-0000-0000-000000000000","ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}