API Documentation

Client Methods

GET list Return a list of all clients
GET search Return a list of all clients matching search query
GET get/[id] Detailed information for a specific client
POST add Add a client and contacts
PUT update Update a clients details
PUT archive Archive a client
POST delete Delete a client
GET contact/[id] Detailed information for a specific contact
PUT contact/[id] Update a contacts details
POST contact add a contact to a client
DELETE contact/[id] delete a contact
GET documents/[id] Return a list of documents for a client
POST document Add a document to a client
POST addrelationship Add a relationship between clients (Practice Manager only)
POST updaterelationship Update the relationship details between clients (Practice Manager only)
POST deleterelationship Delete the relationship between clients (Practice Manager only)
PARAMETERS
detailed=true Optional Return detailed information of client. See GET get/[id] method for example of detailed client response.
modifiedsince=yyyy-MM-ddTHH:mm:ss Optional Return clients modified since a particular date (UTC), e.g. 2012-06-05T06:00:00
EXAMPLE URL
https://api.workflowmax.com/client.api/list?apiKey=[your API key]&accountKey=[WorkflowMax account key]
Example Response
<Response>
  <Status>OK</Status> 
  <Clients>
    <!-- Refer get/[id] method for full list of client fields  -->
    <Client>
      <ID>255</ID> 
      <Name>XYZ Australia, NZ Business Unit</Name>
      <Email>someone@example.com</Email> 
      <DateOfBirth>1970-11-26</DateOfBirth> 
      <Address /> 
      <City /> 
      <Region /> 
      <PostCode /> 
      <Country /> 
      <PostalAddress>
         Level 32, PWC Building 
         188 Quay Street
         Auckland Central
      </PostalAddress> 
      <PostalCity>Auckland</PostalCity> 
      <PostalRegion /> 
      <PostalPostCode>1001</PostalPostCode>  
      <PostalCountry /> 
      <Phone>(02) 1723 5265</Phone>
      <Fax /> 
      <Website /> 
      <ReferralSource />
      <ExportCode />
      <IsProspect>No</IsProspect> 
      <AccountManager>
        <ID>2</ID> 
        <Name>Jo Blogs</Name> 
      </AccountManager>
      <Type>
        <Name>20th of Month</Name> 
        <CostMarkup>30.00</CostMarkup> 
        <PaymentTerm>DayOfMonth</PaymentTerm>  <!-- DayOfMonth or WithinDays  -->
        <PaymentDay>20</PaymentDay> 
      </Type>
      <Contacts>
        <Contact>
          <ID>220</ID>
          <IsPrimary>yes</IsPrimary>
          <Name>Samantha Benecke</Name> 
          <Salutation>Sam</Salutation> 
          <Addressee>Mrs S Benecke</Addressee> 
          <Mobile /> 
          <Email /> 
          <Phone /> 
          <Position /> 
        </Contact>
      </Contacts>
    </Client>
    <Client>
      <ID>697</ID> 
      <Name>A. Dutchess</Name> 
      <Address /> 
      <City /> 
      <Region /> 
      <PostCode /> 
      <Country /> 
      <PostalAddress>P O Box 123</PostalAddress> 
      <PostalCity>Wellington</PostalCity> 
      <PostalRegion /> 
      <PostalPostCode>6011</PostalPostCode>  
      <PostalCountry />
      <Phone /> 
      <Fax /> 
      <Website /> 
      <Contacts /> 
      <BillingClient>
         <ID>12345</ID>
         <Name>Billing Client</Name>
      </BillingClient>
    </Client>
  </Clients>
</Response>
PARAMETERS
query Required Search query
detailed=true Optional Return detailed information of client. See GET get/[id] method for example of detailed client response.
EXAMPLE URL
https://api.workflowmax.com/client.api/search?apiKey=[your API key]&accountKey=[WorkflowMax account key]&query=XYZ
Example Response
<Response>
  <Status>OK</Status> 
  <Clients>
    <Client>
      <ID>255</ID> 
      <Name>XYZ Australia, NZ Business Unit</Name> 
      <Email>someone@example.com</Email> 
      <DateOfBirth>1970-11-26</DateOfBirth>
      <Address /> 
      <City /> 
      <Region /> 
      <PostCode /> 
      <Country /> 
      <PostalAddress>
         Level 32, PWC Building 
         188 Quay Street
         Auckland Central
      </PostalAddress> 
      <PostalCity>Auckland</PostalCity> 
      <PostalRegion /> 
      <PostalPostCode>1001</PostalPostCode>  
      <PostalCountry /> 
      <Phone>(02) 1723 5265</Phone>
      <Fax /> 
      <Website /> 
      <ReferralSource />
      <ExportCode />
      <IsProspect>No</IsProspect> 
      <AccountManager>
        <ID>2</ID> 
        <Name>Jo Blogs</Name> 
      </AccountManager>
      <Type>
        <Name>20th of Month</Name> 
        <CostMarkup>30.00</CostMarkup> 
        <PaymentTerm>DayOfMonth</PaymentTerm>  <!-- DayOfMonth or WithinDays  -->
        <PaymentDay>20</PaymentDay> 
      </Type>
      <Contacts>
        <Contact>
          <ID>220</ID> 
          <IsPrimary>yes</IsPrimary>
          <Name>Samantha Benecke</Name> 
          <Salutation>Sam</Salutation> 
          <Addressee>Mrs S Benecke</Addressee> 
          <Mobile /> 
          <Email /> 
          <Phone /> 
          <Position /> 
        </Contact>
      </Contacts>
    </Client>
    <Client>
      <ID>697</ID> 
      <Name>A. Dutchess</Name> 
      <Address /> 
      <City /> 
      <Region /> 
      <PostCode /> 
      <Country /> 
      <PostalAddress>P O Box 123</PostalAddress> 
      <PostalCity>Wellington</PostalCity> 
      <PostalRegion /> 
      <PostalPostCode>6011</PostalPostCode>  
      <PostalCountry /> 
      <Phone /> 
      <Fax /> 
      <Website /> 
      <Contacts /> 
      <BillingClient /> 
    </Client>
  </Clients>
</Response>

 

EXAMPLE URL
https://api.workflowmax.com/client.api/get/123?apiKey=[your API key]&accountKey=[WorkflowMax account key]
Example Response
<Response>
  <Status>OK</Status> 
  <Client>
    <ID>218</ID> 
    <Name>Acmer Pty Ltd</Name> 
    <Email>someone@example.com</Email> 
    <DateOfBirth>1970-11-26</DateOfBirth> 
    <Address /> 
    <City /> 
    <Region /> 
    <PostCode /> 
    <Country /> 
    <PostalAddress>
       Level 32, PWC Building 
       188 Quay Street
       Auckland Central
    </PostalAddress> 
    <PostalCity>Auckland</PostalCity> 
    <PostalRegion /> 
    <PostalPostCode>1001</PostalPostCode>  
    <PostalCountry /> 
    <Phone>(02) 1723 5265</Phone> 
    <Fax /> 
    <Website /> 
    <ReferralSource />
    <ExportCode />
    <IsProspect>No</IsProspect> 
    <AccountManager>
      <ID>2</ID> 
      <Name>Jo Blogs</Name> 
    </AccountManager>
    <Type>
      <Name>20th of Month</Name> 
      <CostMarkup>30.00</CostMarkup> 
      <PaymentTerm>DayOfMonth</PaymentTerm>  <!-- DayOfMonth or WithinDays  -->
      <PaymentDay>20</PaymentDay> 
    </Type>
    <Contacts>
      <Contact>
        <ID>193</ID> 
        <IsPrimary>yes</IsPrimary>
        <Name>Wyett E Coyote</Name> 
        <Salutation /> 
        <Addressee /> 
        <Mobile /> 
        <Email /> 
        <Phone /> 
        <Position /> 
      </Contact>
    </Contacts>
     <Notes>
      <Note>
        <Title>note title</Title> 
        <Text>subject of the note</Text> 
        <Folder /> 
        <Date>2008-09-12T13:00:00</Date> 
        <CreatedBy>Jo Bloggs</CreatedBy>
      </Note>
    </Notes>
    </BillingClient>



    <!-- The following fields are returned if the Practice Management module is enabled -->

    <JobManager>
      <ID>3</ID> 
      <Name>John Smith</Name> 
    </JobManager>
    <FirstName />  <!-- Individual Only -->    
    <LastName />   <!-- Individual Only -->
    <OtherName />  <!-- Individual Only -->
    <DateOfBirth />  <!-- Individual Only -->


    <TaxNumber /> 
    <CompanyNumber /> 
    <BusinessNumber /> 
    <BusinessStructure />   <!-- e.g. Individual, Company, Trust, etc  -->
    <BalanceMonth /> 
    <PrepareGST />   <!-- Yes or No -->
    <GSTRegistered />   <!-- Yes or No -->
    <GSTPeriod />  <!-- Monthly, 2 Monthly, 6 Monthly  -->
    <GSTBasis />  <!-- Invoice, Payment, Hybrid  -->
    <ProvisionalTaxBasis />  <!-- Standard Option, Estimate Option, Ratio Option  -->
    <ProvisionalTaxRatio /> 
    <!-- The following fields apply to NZ clients only -->
    <SignedTaxAuthority />  <!-- Yes or No -->
    <TaxAgent /> 
    <AgencyStatus />  <!-- With EOT, Without EOT, Unlinked -->
    <ReturnType />  <!-- IR3, IR3NR, IR4, IR6, IR7, IR9, PTS  -->

    <!-- The following fields apply to AU clients only -->
    <PrepareActivityStatement />  <!-- Yes or No -->
    <PrepareTaxReturn />  <!-- Yes or No -->


    <Groups>
      <Group>
        <ID>987</ID>   
        <Name>Bloggs Family</Name>   
      </Group>
    </Groups>

    <Relationships>
      <Relationship>
        <ID>987</ID>   
        <Type>Shareholder</Type>   
        <RelatedClient>
          <ID>10234</ID>   
          <Name>Bloggs Ltd</Name>   
        </RelatedClient>
        <NumberOfShares>1000</NumberOfShares>  <!-- Only set for Shareholder and Owner relationships -->   
        <Percentage>0</Percentage>  <!-- Only set for Partnership relationships-->
        <StartDate>2011-01-01</StartDate>
        <EndDate>2013-03-31</EndDate>
      </Relationship>
    </Relationships>

  </Client>
</Response>

 

EXAMPLE URL
POST https://api.workflowmax.com/client.api/add?apiKey=[your API key]&accountKey=[WorkflowMax account key]
Example Message
<Client>
  <Name>Bloggs Electrical Ltd</Name>
  <Email></Email>  <!-- optional -->   
  <Address></Address>  <!-- optional -->   
  <City></City>  <!-- optional -->   
  <Region></Region>  <!-- optional -->   
  <PostCode></PostCode>  <!-- optional -->   
  <Country></Country>  <!-- optional -->   
  <PostalAddress></PostalAddress>  <!-- optional -->   
  <PostalCity></PostalCity>  <!-- optional -->   
  <PostalRegion></PostalRegion>  <!-- optional -->   
  <PostalPostCode></PostalPostCode>  <!-- optional -->   
  <PostalCountry></PostalCountry>  <!-- optional -->   
  <Phone></Phone>  <!-- optional -->   
  <Fax></Fax>  <!-- optional -->   
  <WebSite></WebSite>  <!-- optional -->   
  <ReferralSource></ReferralSource>  <!-- optional -->   
  <ExportCode></ExportCode>  <!-- optional --> 
  <IsProspect>No</IsProspect>    <!-- Yes | No --> 
  <AccountManagerID />  <!-- optional - ID of staff member -->
  <Contacts>
    <Contact>
      <Name>Jo Bloggs</Name>
      <IsPrimary>yes</IsPrimary> <!-- If multiple contacts defined, method will interpret last primary client as Primary -->   
      <Salutation></Salutation>  <!-- optional -->   
      <Addressee></Addressee>  <!-- optional -->   
      <Phone></Phone>  <!-- optional -->   
      <Mobile></Mobile>  <!-- optional -->   
      <Email></Email>  <!-- optional -->   
      <Position></Position>  <!-- optional -->   
    </Contact>
  </Contacts>
  <BillingClientID /> <!-- optional ID of billing client -->

  <!-- The following fields are only applicable if the Practice Management module is enabled -->

  <FirstName />   <!-- optional, for individuals only -->   
  <LastName />   <!-- optional, for individuals only -->   
  <OtherName />   <!-- optional, for individuals only -->   
  <DateOfBirth />   <!-- optional, for individuals only -->   


  <JobManagerID />  <!-- optional - ID of staff member -->
  <TaxNumber /> 
  <CompanyNumber /> 
  <BusinessNumber /> 
  <BusinessStructure />   <!-- Name of Business Structure (as per Admin) -->
  <BalanceMonth />  <!-- e.g. Jan, 1, Feb, 2, Mar, 3 etc  -->
  <PrepareGST />   <!-- Yes or No -->
  <GSTRegistered />   <!-- Yes or No -->
  <GSTPeriod />  <!-- 1, 2, 6 -->
  <GSTBasis />  <!-- Invoice, Payment, Hybrid  -->
  <ProvisionalTaxBasis />  <!-- Standard Option, Estimate Option, Ratio Option  -->
  <ProvisionalTaxRatio /> 

  <!-- The following fields apply to NZ clients only -->
  <SignedTaxAuthority />  <!-- Yes or No -->
  <TaxAgent />  <!-- Name of Tax Agent (as per Admin) -->
  <AgencyStatus />  <!-- With EOT, Without EOT, Unlinked -->
  <ReturnType />  <!-- IR3, IR3NR, IR4, IR6, IR7, IR9, PTS  -->

  <!-- The following fields apply to AU clients only -->
  <PrepareActivityStatement />  <!-- Yes or No -->
  <PrepareTaxReturn />  <!-- Yes or No -->

</Client>

The response will include the detailed information of the client as per the GET get/[id] method

 

EXAMPLE URL
PUT https://api.workflowmax.com/client.api/update?apiKey=[your API key]&accountKey=[WorkflowMax account key]
Example Message
<Client>
  <ID>1234</ID>
  <Name>Bloggs Electrical Ltd</Name>
  <Email></Email>  <!-- optional -->   
  <Address></Address>  <!-- optional -->   
  <City></City>  <!-- optional -->   
  <Region></Region>  <!-- optional -->   
  <PostCode></PostCode>  <!-- optional -->   
  <Country></Country>  <!-- optional -->   
  <PostalAddress></PostalAddress>  <!-- optional -->   
  <PostalCity></PostalCity>  <!-- optional -->   
  <PostalRegion></PostalRegion>  <!-- optional -->   
  <PostalPostCode></PostalPostCode>  <!-- optional -->   
  <PostalCountry></PostalCountry>  <!-- optional -->   
  <Phone></Phone>  <!-- optional -->   
  <Fax></Fax>  <!-- optional -->   
  <WebSite></WebSite>  <!-- optional -->   
  <ReferralSource></ReferralSource>  <!-- optional -->   
  <AccountManagerID />  <!-- optional - ID of staff member -->
  <BillingClientID /> <!-- optional ID of billing client -->

  <!-- The following fields are only applicable if the Practice Management module is enabled -->

  <FirstName />   <!-- optional, for individuals only -->   
  <LastName />   <!-- optional, for individuals only -->   
  <OtherName />   <!-- optional, for individuals only -->   
  <DateOfBirth />   <!-- optional, for individuals only -->

  <JobManagerID />  <!-- optional - ID of staff member -->
  <TaxNumber /> 
  <CompanyNumber /> 
  <BusinessNumber /> 
  <BusinessStructure />   <!-- Name of Business Structure (as per Admin) -->
  <BalanceMonth />  <!-- e.g. Jan, 1, Feb, 2, Mar, 3 etc  -->
  <PrepareGST />   <!-- Yes or No -->
  <GSTRegistered />   <!-- Yes or No -->
  <GSTPeriod />  <!-- 1, 2, 6 -->
  <GSTBasis />  <!-- Invoice, Payment, Hybrid  -->
  <ProvisionalTaxBasis />  <!-- Standard Option, Estimate Option, Ratio Option  -->
  <ProvisionalTaxRatio /> 

  <!-- The following fields apply to NZ clients only -->
  <SignedTaxAuthority />  <!-- Yes or No -->
  <TaxAgent />  <!-- Name of Tax Agent (as per Admin) -->
  <AgencyStatus />  <!-- With EOT, Without EOT, Unlinked -->
  <ReturnType />  <!-- IR3, IR3NR, IR4, IR6, IR7, IR9, PTS  -->

  <!-- The following fields apply to AU clients only -->
  <PrepareActivityStatement />  <!-- Yes or No -->
  <PrepareTaxReturn />  <!-- Yes or No -->
</Client>

The response will include the detailed information of the client as per the GET get/[id] method

 

EXAMPLE URL
PUT https://api.workflowmax.com/client.api/archive?apiKey=[your API key]&accountKey=[WorkflowMax account key]
Example Message
 
<Client>
  <ID>1234</ID>
</Client>

The response will include the detailed information of the client as per the GET get/[id] method

 

EXAMPLE URL
POST https://api.workflowmax.com/client.api/delete?apiKey=[your API key]&accountKey=[WorkflowMax account key]
Example Message
 
<Client>
  <ID>1234</ID>
</Client>

 

EXAMPLE URL
https://api.workflowmax.com/client.api/contact/123?apiKey=[your API key]&accountKey=[WorkflowMax account key]
Example Response
<Response>
  <Status>OK</Status> 
  <Contact>
    <ID>123</ID>
    <IsPrimary>yes</IsPrimary>
    <Name>Wyett E Coyote</Name> 
    <Salutation /> 
    <Addressee /> 
    <Mobile /> 
    <Email /> 
    <Phone /> 
    <Position /> 
  </Contact>
</Response>

 

EXAMPLE URL
PUT https://api.workflowmax.com/client.api/contact/123?apiKey=[your API key]&accountKey=[WorkflowMax account key]
Example Message
<Contact>
  <Name>Wyett E Coyote</Name>
  <IsPrimary>yes</IsPrimary> <!-- If multiple contacts defined, method will interpret last primary client as Primary -->
  <Salutation /> 
  <Addressee /> 
  <Mobile /> 
  <Email /> 
  <Phone /> 
  <Position /> 
</Contact>

 

 

EXAMPLE URL
POST https://api.workflowmax.com/client.api/contact?apiKey=[your API key]&accountKey=[WorkflowMax account key]
Example Message
<Contact>
  <Client>
    <ID>142</ID> 
  </Client>
  <Name>Wyett E Coyote</Name>
  <IsPrimary>yes</IsPrimary> <!-- If multiple contacts defined, method will interpret last primary client as Primary -->
  <Salutation /> 
  <Addressee /> 
  <Mobile /> 
  <Email /> 
  <Phone /> 
  <Position /> 
</Contact>

The response will include the detailed information of the contact as per the GET contact/[id] method

 

EXAMPLE URL
DELETE https://api.workflowmax.com/client.api/contact/[id]?apiKey=[your API key]&accountKey=[WorkflowMax account key]

 

EXAMPLE URL
GET https://api.workflowmax.com/client.api/documents/1223?apiKey=[your API key]&accountKey=[WorkflowMax account key]
Example Message
<Documents>
  <Document>
    <Title>Document Title</Title>
    <Text />    <!-- optional -->
    <Folder>Correspondence</Folder>    <!-- optional -->
    <Date>20091023</Date>
    <CreatedBy>Jo Bloggs</CreatedBy>
    <URL>https://my.workflowmax.com/....... </URL>
  </Document>
</Documents>

 

EXAMPLE URL
POST https://api.workflowmax.com/client.api/document?apiKey=[your API key]&accountKey=[WorkflowMax account key]
Example Message
<Document>
  <ClientID>123</ClientID>
  <Title>Document Title</Title>
  <Text>The note relating to the document</Text>
  <Folder>Images</Folder>    <!-- optional -->
  <FileName>example.jpg</FileName>
  <Content>File content base 64 encoded</Content>
</Document>

 

EXAMPLE URL
POST https://api.workflowmax.com/client.api/addrelationship?apiKey=[your API key]&accountKey=[WorkflowMax account key]
Example Message
<Relationship>
  <ClientID>123</ClientID>
  <RelatedClientID>456</RelatedClientID>
  <Type>Shareholder</Type>
  <!-- The following relationship types are supported: Director, Shareholder, Trustee, Beneficiary, Partner, Settlor, Associate, Secretary, Public Officer, Husband, Wife, Spouse, Parent Of, Child Of, Appointer, Member, Auditor, Owner. -->
  <NumberOfShares>1000</NumberOfShares>  <!-- only applicable when adding Shareholder or Owner relationship -->
  <Percentage>123</Percentange>  <!-- only applicable when adding Partnership relationship --> 
  <StartDate />  <!-- optional yyyy-MM-dd -->
  <EndDate />  <!-- optional yyyy-MM-dd -->
</Relationship>

 

EXAMPLE URL
POST https://api.workflowmax.com/client.api/updaterelationship?apiKey=[your API key]&accountKey=[WorkflowMax account key]
Example Message
<Relationship>
  <ID>123</ID>
  <NumberOfShares>1000</NumberOfShares>  <!-- only applicable when Shareholder or Owner relationship -->
  <Percentage>123</Percentange>  <!-- only applicable when adding Partnership relationship --> 
  <StartDate />  <!-- optional yyyy-MM-dd -->
  <EndDate />  <!-- optional yyyy-MM-dd -->
</Relationship>

 

EXAMPLE URL
POST https://api.workflowmax.com/client.api/deleterelationship?apiKey=[your API key]&accountKey=[WorkflowMax account key]
Example Message
<Relationship>
  <ID>123</ID>
</Relationship>

 

No credit card required.