Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Reverted from v. 35

Table of Contents

RegistrationResultV2

 

Name

Type

Description 

registrationResult

String

The outcome of the registration process.  It will be one of:

  • SUCCESSFUL_REGISTRATION - personal details was successfully extracted from an identity card, and those details passed the verification step.
  • UNMATCHED_DOCUMENT - personal details was successfully extracted from an identity card, but those details did not pass the verification step.
  • UNREADABLE_DOCUMENT - personal details could not be extracted from an identity card.
userDataUserDataV2The personal details and identity card image information.currentStatusCurrentStatusV2The current status of the verification attempt.

 

UserDataV2

Name

Type

Description

name

Name

The person's name.

addressAddressThe person's address.dobDateOfBirthThe person's date of birth.documentNumberStringThe document number that was extracted from an identity card.documentTypeStringThe document type of the identity card.  Please refer to the list of supported Identity Card Types.imageCodeStringA reference to the image and OCR results in greenID.base64FaceStringThis member is currently unpopulated, and is reserved for future use.faceMimeTypeStringThis member is currently unpopulated, and is reserved for future use.extraUserDataList<NameValuePair>A list of extra data items.

CurrentStatusV2

This type is intended to provide information about what has just happened, as well as giving an overview of the current verification status, and the list of data sources that will help the verification attempt become fully verified.  Always presenting this information helps to reduce the chattiness between greenID and the customer application

CurrentStatus

The CurrentStatus object is the sole return type of all the web methods in the API.  It is intended to provide information about what has just happened, as well as giving an overview of the person’s current verification status, and the list of data sources that will help the person become fully verified.  Always presenting this information helps to reduce the chattiness between greenID and the customer application.

 

Name

Type

Description

sourceList

SourceList

This member contains a list of Source objects, each of which corresponds to a data source that is available to the person for the purpose of becoming fully verified.  The SetFields web method expects one of these names as thesourceId input parameter.

verificationResult

RichVerificationResult

This member contains all of the verification information currently available for a person.  It is a complete record of all checks that have been performed, their results, and an indicator of the person’s overall verification status.

sourceFields

SourceFields

This member contains a list of fields that are required for a particular data source.  This includes the field’s name, type and other pertinent information for displaying and collecting a value for the field.

checkResultCheckResultThis member indicates the outcome of a check against a data source that was performed during a call to the SetFields web method.  This member also indicates whether the check is still in progress.
userTokenStringThis field is for future features in the API, and can be ignored for now.

CheckResult

The CheckResult object is intended to give a snapshot of the status of a check that has been performed during a call to the SetFields web method.

 

Name

Type

Description

sourceList

stillWorking

SourceListV2

boolean

This member

contains a list of SourceV2 objects, each of which corresponds to a data source that is available to the person for the purpose of becoming fully verified.  The SetFields web method expects a source name chosen from this list as the sourceId input parameter.

verificationResult

VerificationResultV2

This member contains all of the verification information currently available for a verification attempt.  It is a complete record of all checks that have been performed, their results, and an indicator of the overall verification status.

sourceFields

SourceFieldsV2

This member contains a list of fields that are required for a particular data source.  This includes the field’s name, type and other pertinent information for displaying and collecting a value for the field.  This member will only be populated when a method that fetches source fields is called, i.e. GetFields.

checkResultLastCheckResultV2This member indicates the outcome of a check against a data source that was performed during a call to the SetFields web method.  This member also indicates whether the check is still in progress.verificationTokenStringThis field is for the SimpleUI, and can be ignored.

LastCheckResultV2

This type is intended to give a snapshot of the status of the most recent check that has been performed during a call to the SetFields web method.

 

Name

Type

Description

stillWorking

boolean

This member indicates whether the check is still in progress.  This feature is still under development; currently the value is always false.

state

String

This member gives the current state of the check.  Valid values are:

  • “VERIFIED” – the check against the data source has succeeded.
  • “VERIFIED_ADMIN” – an administrative user has marked the check as successful, after manual inspection of the results.  This mostly applies to checks that were previously “Pending review” (see below).
  • “VERIFIED_WITH_CHANGES” – the check against the data source passed, but the person made some changes to their details in order to pass.  If the changes are acceptable according to the customer’s rules, then this state is applied; otherwise the status may remain as “PENDING”.
  • “PENDING” – the check against the data source passed, but the person made some changes to their details in order to pass, and manual intervention is required to assess the changes.
  • “ERROR” – an error was experienced during the check, for example, the data source was unavailable.
  • “LOCKED_OUT” – some data sources have a limited number of attempts associated with them, and if that threshold is exceeded, then the person is prevented from trying again.
  • “AUTOFAIL” – applies to background checks, and indicates that a check that was attempted automatically has failed, i.e. the check against the data source was not successful.
  • “IN_PROGRESS” – the check is currently in progress, i.e. the check has been started, but not enough data has been gathered to allow the check to be completed.
  • “NOT_FOUND_ON_LIST” – this status applies watchlist style checks.
  • “FOUND_ON_LIST” – this status also applies to watchlist style checks.
  • “PASSED” - this status applies to the device/fraud watchlist source, and indicates a non-suspicious result.
  • “FAILED” - this status applies to a source when the check has been unsuccessful - ether the data has not matched or (in the case of some interactive checks) the user has changed some data violating the the requirements of the rules.
  • “EMPTY” – indicates this check has not been used.

SourceListV2

 

Name

Type

Description

sources

List<SourceV2>

Simply a list of SourceV2 objects.

 

SourceV2

 

Name

Type

Description

state

String

This member reflects the current state of the source.  The valid values are the same as the state member of the LastCheckResultV2 object.  If a source has not been used, then this member will be “EMPTY”.

passed

boolean

This member indicates whether this source has been passed, i.e. the check is in one of the verified states.

name

String

This member is the name of the data source.  This name is expected to be used to refer to this data source in calls to the SetFields web method.

availablebooleanThis member indicates whether this data source is currently available; sometimes a particular data source may not be available.notRequiredbooleanThis member indicates whether this data source can help a person become fully verified.  If the value is true, then there is no point using this data source because it cannot help the person become fully verified.oneSourceLeftbooleanThis member indicates whether completing this data source will make a person fully verified.  This member is very valuable because it indicates which sources should be attempted first, thereby shortening the verification process.orderintThe order in which the source would be displayed if it were being displayed by greenID.  Sources that are more likely to result in the person becoming fully verified are at the top of the list, i.e. their “order” number is lower.attributesList<NameValuePair>This member contains a list of HTML attributes that should be applied to any HTML input collecting input from a person.  For example, the HTML attribute “class=’required’” would be represented by a NameValuePair withname=”class” and value=”required”.versionintThe version of this data source.  For details, please refer to Data Source Versions.

 

SourceFieldsV2

 

Name

Type

Description

fieldList

FieldListV2

This member contains a list of fields that are required for a particular data source.  The members of list represent HTML fields for collecting input from the person.

rawDataStringThis member contains an HTML fragment that, if displayed, will present HTML fields for collecting data from a person in order to perform a check against a data source.  Some customer may prefer this approach rather than generating their own HTML from the data contained in the fieldList member.

 

FieldListV2

 

Name

Type

Description

field

List<FieldV2>

This member simply contains a list of FieldV2 objects.

 

FieldV2

 

Name

Type

Description

type

String

The type of HTML input that is required (at least strongly suggested) for collecting the data for this field from the person.  For example, a value of “text” would indicate a simple HTML text input is appropriate.

name

String

The name of the HTML input that would collect data for this field from the person.  The name also indicates what the data field is, for example, the value “aec_givenname” indicates the field holds the given name for the AEC data source.

value

String

This member contains any pre-existing value for the HTML field.  For example, the Field with the name “aec_givenname” will be pre-populated with the person’s given name (derived from the person’s master record established during the call to the RegisterUser web method) the first time the GetFields method is called with the sourceId “aec”.

labelStringThis member contains label.  Please refer to the section on Labels above.orderintAn integer that defines an ordering on the fields.selectItemList<NameValuePair>This member contains a list of item names and values for a select item FieldV2.attributeList<NameValuePair>This member contains a list of the names and values of any HTML attributes that this Field has.  For example, the attribute class=”required” would be represented by a NameValuePair with name=”class” and value=”required”.

 

CurrentStatus

The CurrentStatus object is the sole return type of all the web methods in the API.  It is intended to provide information about what has just happened, as well as giving an overview of the person’s current verification status, and the list of data sources that will help the person become fully verified.  Always presenting this information helps to reduce the chattiness between greenID and the customer application.

 

...

Name

...

Type

...

Description

...

sourceList

...

SourceList

...

This member contains a list of Source objects, each of which corresponds to a data source that is available to the person for the purpose of becoming fully verified.  The SetFields web method expects one of these names as thesourceId input parameter.

...

verificationResult

...

RichVerificationResult

...

This member contains all of the verification information currently available for a person.  It is a complete record of all checks that have been performed, their results, and an indicator of the person’s overall verification status.

...

sourceFields

...

SourceFields

...

This member contains a list of fields that are required for a particular data source.  This includes the field’s name, type and other pertinent information for displaying and collecting a value for the field.

...

CheckResult

The CheckResult object is intended to give a snapshot of the status of a check that has been performed during a call to the SetFields web method.

 

...

Name

...

Type

...

Description

...

stillWorking

...

boolean

...

This member indicates whether the check is still in progress.  This feature is still under development; currently the value is always false.

...

state

...

String

...

This member gives the current state of the check.  Refer to the Reference Table for Individual Source States for valid values.

SourceList

 

...

Name

...

Type

...

Description

...

sources

...

List<Source>

...

Simply a list of Source objects.

Source

 

...

Name

...

Type

...

Description

...

state

...

String

...

This member reflects the current state of the source.  The valid values are the same as the state member of the CheckResult object.  If a source has not been used, then this member will be “EMPTY”.

...

passed

...

boolean

...

This member indicates whether this source has been passed, i.e. the check is in one of the verified states.

...

name

...

String

...

This member is the name of the data source.  This name is expected to be used to refer to this data source in calls to the SetFields web method.

...

List<NameValuePair>

...

SourceFields

...

Name

...

Type

...

Description

...

fieldList

...

FieldList

...

This member contains a list of fields that are required for a particular data source.  The members of list represent HTML fields for collecting input from the person.

...

FieldList

...

Name

...

Type

...

Description

...

sourceField

...

List<Field>

...

This member simply contains a list of Field objects.

Field

 

...

Name

...

Type

...

Description

...

type

...

String

...

The type of HTML input that is required (at least strongly suggested) for collecting the data for this field from the person.  For example, a value of “text” would indicate a simple HTML text input is appropriate.

...

name

...

String

...

The name of the HTML input that would collect data for this field from the person.  The name also indicates what the data field is, for example, the value “aec_givenname” indicates the field holds the given name for the AEC data source.

...

value

...

String

...

This member contains any pre-existing value for the HTML field.  For example, the Field with the name “aec_givenname” will be pre-populated with the person’s given name (derived from the person’s master record established during the call to the RegisterUser web method) the first time the GetFields method is called with the sourceId “aec”.

...

InputFields

...

Name

...

Type

...

Description

...

input

...

List<NameValuePair> 

...

This member contains a list of names and values that correspond to input parameters to the SetFields web method.  The names are expected to be those that have previously been returned from the GetFields method for a particular data source.  For example, a Visa number will be represented by a NameValuePairwith name=”visa_number” and value=”11111111”.

DateOfBirth

This type is a convenience type for holding a partial date, especially useful for representing dates of birth.  This type holds just the date part, and does not contain any reference to a time component or timezone; this avoids potential issues with date of birth timestamps arising from different timezones.

 

Name

Type

Description

day

int

The day component of a date of birth.

month

int

The month component of a date of birth.

year

int

The full year component of a date of birth, for example 1975, i.e. not 75.

VerificationResultV2

This type describes the person’s verification results to date.  This is always returned so that the caller always has the latest results for that person.

 

Name

Type

Description

verificationId

String

The unique identifier for the verification attempt.

overallVerificationStatus

String

This member indicates the outcome of the entire verification process.  It is one of:

 

  • “VERIFIED” – the person has been verified against the specified ruleset.
  • “VERIFED_ADMIN” – the person was manually verified by an administrative user, via the admin panel.
  • “VERIFIED_WITH_CHANGES” – the person was verified against the specified ruleset, but with some acceptable changes to their data.
  • “IN_PROGRESS” – the person has not yet been verified, but further checks may be attempted.
  • “PENDING” – the person has been verified against the ruleset, but some changes were made to their data that require manual inspection before they can be verified.
  • “LOCKED_OUT” – the person has been locked out completely; this is dependent upon the customer’s lockout rules.

 

ruleIdStringThe identifier for the rule that was used to determine the verification outcome.modeStringThis member indicates the verification mode that was used.  The mode is null, except in the following cases:
  • “POSTOFFICE” – the person was verified by completing a Post Office form and visiting a branch of Australia Post, where their identity documents were manually inspected.
  • “ASSISTED” – the person was verified by an administrative user.
  • “EXTERNAL” – the person was verified outside of greenID, and the results have been loaded in to greenID.
dateVerifiedStringThe date this person became verified (null if they have not yet been verified).individualResultsList<CheckResultV2>This member holds a list of results for the individual checks that have been performed to date.

CheckResultV2

This type contains all the details of a check against a particular data source.

 

Name

 

Type

 

Description

 

name

String

The name of the check.

state

String

The state of the check; the values are the same as those of the state member of the LastCheckResultV2 type, please refer to that list.

method

String

The method used to complete the check. This will be one of:

 

  • "UC" - the check was performed in "interactive" mode.
  • "DB" - the check was performed in "background" mode.

 

modeStringThis member indicates the mode of the check, and has the same set of possible values as the mode member of the VerificationResultV2.dateVerifiedDateThis member indicates when the check became verified (or null if the check is not verified).fieldResultsList<FieldResultV2>This member is a list of results for fields that were checked, or were changed.  Note that this may mean the array is empty.postOfficeDataPostOfficeDataIf the name member of this object is “PostOffice”, then this field will be populated.  This member represents the raw data received from Australia Post.extraDataList<NameValuePair>A list of extra data items.

 

FieldResultV2

 

Name

 

Type

 

Description

 

name

String

This member is the name of the field the result applies to.  The list of possible names will be consistent with the name returned by the GetFields web method.

status

String

This member indicates the status of the field.  The possible values are:

 

  • “CONFIRMED”
  • “CHANGED”
  • “ADDITION”
  • “NO_MATCH”
  • “MISSING”

 

dataDifference

String

This member contains changed values, i.e. if a value was changed by the person in order to pass this check, then this member will contain the value that the data was changed to.  This is the value that was checked and verified.

dataStringThis member contains the original data that was supplied the time of registration, i.e. the “master record”.  If the status member is “ADDITION”, then this data was not supplied with the master record.addressTypeStringThis member contains additional information about this field.  Currently, the value is one of:
  • “previousAddress” – indicates this field was checked as part of the person’s previous address.
  • “currentAddress” – indicates this field was checked as part of the person’s current address.
formatStringThis member indicates the format of the data in this field.  The value of this field will vary according to individual customer configurations.  The most common value is “plain”, which indicates a plain text field.extraDataList<NameValuePair>A list of extra data items.

 

indicates whether the check is still in progress.  This feature is still under development; currently the value is always false.

state

String

This member gives the current state of the check.  Refer to the Reference Table for Individual Source States for valid values.

SourceList

 

Name

Type

Description

sources

List<Source>

Simply a list of Source objects.

Source

 

Name

Type

Description

state

String

This member reflects the current state of the source.  The valid values are the same as the state member of the CheckResult object.  If a source has not been used, then this member will be “EMPTY”.

passed

boolean

This member indicates whether this source has been passed, i.e. the check is in one of the verified states.

name

String

This member is the name of the data source.  This name is expected to be used to refer to this data source in calls to the SetFields web method.

availablebooleanThis member indicates whether this data source is currently available; sometimes a particular data source may not be available.
notRequiredbooleanThis member indicates whether this data source can help a person become fully verified.  If the value is true, then there is no point using this data source because it cannot help the person become fully verified.
oneSourceLeftbooleanThis member indicates whether completing this data source will make a person fully verified.  This member is very valuable because it indicates which sources should be attempted first, thereby shortening the verification process.
orderintThe order in which the source would be displayed if it were being displayed by greenID.  Sources that are more likely to result in the person becoming fully verified are at the top of the list, i.e. their “order” number is lower.
attributes

List<NameValuePair>

This member contains a list of HTML attributes that should be applied to any HTML input collecting input from a person.  For example, the HTML attribute “class=’required’” would be represented by a NameValuePair withname=”class” and value=”required”.

SourceFields

Name

Type

Description

fieldList

FieldList

This member contains a list of fields that are required for a particular data source.  The members of list represent HTML fields for collecting input from the person.

rawDataStringThis member contains an HTML fragment that, if displayed, will present HTML fields for collecting data from a person in order to perform a check against a data source.  Some customer may prefer this approach rather than generating their own HTML from the data contained in the fieldList member.

FieldList

Name

Type

Description

sourceField

List<Field>

This member simply contains a list of Field objects.

Field

 

Name

Type

Description

type

String

The type of HTML input that is required (at least strongly suggested) for collecting the data for this field from the person.  For example, a value of “text” would indicate a simple HTML text input is appropriate.

name

String

The name of the HTML input that would collect data for this field from the person.  The name also indicates what the data field is, for example, the value “aec_givenname” indicates the field holds the given name for the AEC data source.

value

String

This member contains any pre-existing value for the HTML field.  For example, the Field with the name “aec_givenname” will be pre-populated with the person’s given name (derived from the person’s master record established during the call to the RegisterUser web method) the first time the GetFields method is called with the sourceId “aec”.

labelStringThis member contains label.  Please refer to the section on Labels.
selectItemList<NameValuePair> This member contains a list of item names and values for a select item Field.
attributeList<NameValuePair> This member contains a list of the names and values of any HTML attributes that this Field has.  For example, the attribute class=”required” would be represented by a NameValuePair with name=”class” and value=”required”.

InputFields

Name

Type

Description

input

List<NameValuePair> 

This member contains a list of names and values that correspond to input parameters to the SetFields web method.  The names are expected to be those that have previously been returned from the GetFields method for a particular data source.  For example, a Visa number will be represented by a NameValuePairwith name=”visa_number” and value=”11111111”.

DateOfBirth

This type is a convenience type for holding a partial date, especially useful for representing dates of birth.  This type holds just the date part, and does not contain any reference to a time component or timezone; this avoids potential issues with date of birth timestamps arising from different timezones.

 

Name

Type

Description

day

int

The day component of a date of birth.

month

int

The month component of a date of birth.

year

int

The full year component of a date of birth, for example 1975, i.e. not 75.

RichVerificationResult

The RichVerificationResult type describes the person’s verification results to date.  This is always returned so that the caller always has the latest results for that person.

...

 

Name

Type

Description

name

String

The name of the check. For example, if a check against the Electoral Roll was attempted, then the name would be “AEC”. As each customer will accept a different set of checks, customers should refer to their individual rules document for the list of names that they can expect. Refer to Data Source Reference for a list of data source names.

state

String

The state of the individual check. For a list of possible states, please see the Reference Table of individual source states.

method

String

The method via which the check was carried out. This is an enumerated type, for a list of possible values, please see the Reference Table of Method Names.

resultDataStringThis field contains extra data that may be passed on from database checks, for example this field may contain XML for a specific check. This will be specific to an individual customer’s setup, by default it is not returned.
modeStringThe verification mode used for this specific check. This shows HOW the check was made. Please see the Reference Table of possible modes. This can be null which indicates that no mode was used.
dateVerifiedDateThe date that this particular check became verified (or null if the check is not verified).
fieldResults

List<RichFieldResult>

AusAddress

The AusAddress complex type has the following structure:  

state

Member

Type

Required?

Description

Contract

flatNumber

 

String

255 Chars

No

 

The flat number component of an address. For example, in the address “1/5 Fake St”, “1” is the flat number.

 

streetNumber

 

String

255 Chars

No

 

The street number component of an address. In the example above, “5” is the street number.

 

 

streetName

 

String

255 Chars

Yes

 

The name of the street.

 

Cannot be null. Cannot be the empty string.

 

streetType

 

String

255 Chars

Yes

 

A valid Australian street type.

 

A valid Australian street type, or its recognised abbreviation. For a full list of acceptable values, please see Street Types

 

suburb

String

255 Chars

Yes

The suburb or town component of the individual's address.

Cannot be null. Cannot be the empty string.

For New Zealand addresses, this field should contain the suburb; the "city" address element is not required by any current greenID New Zealand data sources.

Only the fields that were successfully checked, or were changed, are returned. Any field that was not checked is not returned. Note that this may mean the array is empty.

postOfficeDataPostOfficeDataIf and only if the name of the RichCheckResult is “PostOffice” then this member will be present. Otherwise it will be null. This represents the raw data retrieved from Australia Post.

RichFieldResult

 

Name

Type

Description

name

String

The name of the field. The possible name will depend on the source used. Again which sources used will depend on the individual customer setup, and new sources, with potentially new fields are constantly being added. For a list of possible field names for each source, please refer to the Data Source Reference tables.

status

String

This member indicates the status of the field.  Refer to the Reference Table for Field Status for possible values.

dataDifference

String

This member will contain changed values. That is, if a value was changed in order to become verified, then this member will contain the value that was the data was changed to, and subsequently verified.

dataStringThis member contains the original data that was supplied the time of registration, or the “master record”.   In the case of a status of ADDITION (see the Reference Table of Field Status) then this will hold the added data.dataInfoStringThis contains information about the data. At this time it contains either “previousAddress” or “currentAddress” to indicate which address this data was checked as.labelStringThis field represents a human readable version of name, it will reflect what the user may see on the screen when they fill the details in. The data in this field is designed for reporting purposes and can change without notice.formatStringThis member indicates the format of the data in this field.  The value of this field will vary according to individual customer configurations.  The most common value is “plain”, which indicates a plain text field.

array is empty.

postOfficeDataPostOfficeDataIf and only if the name of the RichCheckResult is “PostOffice” then this member will be present. Otherwise it will be null. This represents the raw data retrieved from Australia Post.

RichFieldResult

 

Name

Type

Description

name

String

The name of the field. The possible name will depend on the source used. Again which sources used will depend on the individual customer setup, and new sources, with potentially new fields are constantly being added. For a list of possible field names for each source, please refer to the Data Source Reference tables.

status

String

This member indicates the status of the field.  Refer to the Reference Table for Field Status for possible values.

dataDifference

String

This member will contain changed values. That is, if a value was changed in order to become verified, then this member will contain the value that was the data was changed to, and subsequently verified.

dataStringThis member contains the original data that was supplied the time of registration, or the “master record”.   In the case of a status of ADDITION (see the Reference Table of Field Status) then this will hold the added data.
dataInfoStringThis contains information about the data. At this time it contains either “previousAddress” or “currentAddress” to indicate which address this data was checked as.
labelStringThis field represents a human readable version of name, it will reflect what the user may see on the screen when they fill the details in. The data in this field is designed for reporting purposes and can change without notice.
formatStringThis member indicates the format of the data in this field.  The value of this field will vary according to individual customer configurations.  The most common value is “plain”, which indicates a plain text field.

AusAddress

The AusAddress complex type has the following structure:  

Member

Type

Required?

Description

Contract

flatNumber

 

String

255 Chars

No

 

The flat number component of an address. For example, in the address “1/5 Fake St”, “1” is the flat number.

 

streetNumber

 

String

255 Chars

YesNo

 

The state street number component of the individual's address. Must be a valid Australian state or territoryan address. In the example above, “5” is the street number.

 

One of:

 

ACT

streetName

NSW

 

NT

String

QLD

255 Chars

SA

Yes

  • TAS
  • VIC
  • WA
  • Note that this field is not required for New Zealand addresses.postcode

     

    The name of the street.

     

    Cannot be null. Cannot be the empty string.

     

    streetType

     

    String

    255 Chars

    Yes

    The postcode component of the individual's address. Must be a valid Australian postcode.

    Must be 4 numbers between 0 and 9 (i.e. as a regular expression: ^[\d]{4}$)

    country

      

    A valid Australian street type.

     

    A valid Australian street type, or its recognised abbreviation. For a full list of acceptable values, please see Street Types

     

    suburb

    String

    255 Chars

    Yes

    The country code. This must be the ISO 3166 country code. The country code can be given in either the alpha-2, alpha-3 or numeric format.

    Please refer to https://www.iso.org/obp/ui/#search for a full (and up to date) list of ISO 3166 country codes.

     

    AusAddress

    This type is a convenience type for holding an address.  Note that although this type is called "AusAddress", international addresses can be passed, see A Note on Addresses. .

     

    Name

     

    Type

     

    Description

     

    propertyNameStringThe property name, e.g. "Skywalker Ranch".

    flatNumber

    String

    The flat/unit number, e.g. "1/23" or "Unit 42".

    streetNumber

    String

    The street number, e.g. "23".

    streetType

    StringThe street type, e.g. "Street", "Circuit", etc.suburbStringThe suburb/town/city.
    stateStringThe state/province.postcodeStringThe post/zip code.countryStringISO 3166 alpha2 country code, i.e. the two character country abbreviation such as "AU" or "NZ".  For full details about the country codes, please refer to http

    suburb or town component of the individual's address.

    Cannot be null. Cannot be the empty string.

    For New Zealand addresses, this field should contain the suburb; the "city" address element is not required by any current greenID New Zealand data sources.

    state

     

    String

    255 Chars

    Yes

     

    The state component of the individual's address. Must be a valid Australian state or territory.

     

    One of:

    • ACT
    • NSW
    • NT
    • QLD
    • SA
    • TAS
    • VIC
    • WA
    Note that this field is not required for New Zealand addresses.

    postcode

     

    String

    255 Chars

    Yes

    The postcode component of the individual's address. Must be a valid Australian postcode.

    Must be 4 numbers between 0 and 9 (i.e. as a regular expression: ^[\d]{4}$)

    country

     

    String

    255 Chars

    Yes

    The country code. This must be the ISO 3166 country code. The country code can be given in either the alpha-2, alpha-3 or numeric format.

    Please refer to https://www.iso.org/

    isocountry_codes/iso_3166_code_lists/english_country_names_and_code_elements.htm

    ui/#search for a full (and up to date) list of ISO 3166 country codes.

     

    PostOfficeData 

    The complex type PostOfficeData has the structure described below.  

    This type and the following members are for the most part exact representations of the fields found in an Australia Post contract. The reader should be aware of the individual Australia Post contract they will be using to ensure that they can match up the fields. These fields are retrieved from a flat file and stored in Strings with no interpretation of the meanings of the fields. Not all implementations of an Australia Post contract will have all the fields detailed below.

    Member

    Type

    Description

    Contract

    customerId

     

    String

    255 Chars

    This parameter is GreenID's identifier for the client application. The value is supplied by GreenID.

     

    Not null.

     

    documents

    String

    Human readable string that is a comma separated list of all the names of the documents used to verify this user.

    Not null.

    header

    detailRecordHeader

    Representation of the header of the flat file received from Australia Post

    Not null.

    poFileName

     

    String

    255 Chars

    The name of the actual file read from Australia Post

     

    Not null.

     

    records

    documentRecord[]

    List of individual representations of the documents used to verify this User

    Not null.

     

    DetailRecordHeader 

    The complex type DetailRecordHeader has the structure described below:  

    Member

    Type

    Description

    Contract

    amount

    String

    255 Chars

    Unsigned amount in cents.

     

    channelId

     

    String

    255 Chars

    0 = default

     

    date

     

    String

    255 Chars

    ddmmyy (NOTE: system generated date with no slashes)

     

    dateOfBirth

     

    String

    255 Chars

    ddmmyyyy represents the date of birth on the form that was checked.

     

    filler

     

    String

    255 Chars

    Often there will be filler, it serves no purpose and should be ignored.

     

     

    formVersion

     

    String

    255 Chars

    A-Z

     

     

    givenName

     

    String

    255 Chars

    16 characters of the given name that was on the form that was checked.

     

     

    id

    Long

    Extra identifier that identifies this record. Not set by Australia Post.

     

    idWizardRefNo

     

    String

    255 Chars

     

     

     

    paymentMethod

     

    String

    255 Chars

    '00' = Cash/EFTPOS/Direct Debit, '01'-'09' = number of Cheques, '11' = VISA, '12 = MasterCard. Note: This may differ per contract, but in general the above applies.

     

     

    phoneNo

     

    String

    255 Chars

    Phone number as entered on the form that was checked.

     

     

     

    postOfficeName

     

    String

    255 Chars

    Presumably the name of the Post Office the form was checked at.

     

     

     

    recordNo

     

    String

    255 Chars

    Seems to be fixed as ‘1’

     

     

     

    recordType

     

    String

    255 Chars

    Seems to be fixed as ‘5’

     

     

    referenceNo

     

    String

    255 Chars

    The reference number used to identify this user. Most often this will be the userId. It must be 16 characters or less.

     

    surname

     

    String

    255 Chars

    20 characters of the surname that was on the form that was checked.

     

     

    totalNumberOfIdDocument

     

    String

    255 Chars

    Number of documents used to verify this user

     

     

    typeCode

     

    String

    255 Chars

     

     

    uniqueReferenceNumber

     

    String

    255 Chars

    wwwwwwttnnnnn, first 6 digits are AP Work Centre Code.

     

    DocumentRecord 

    The complex type DocumentRecord has the structure described below:  

    Member

    Type

    Description

    Contract

    amount

     

    String

    255 Chars

    Always zero

     

     

     

    comments

     

    String

    255 Chars

     

     

     

    countryOfIssue

     

    String

    255 Chars

    Name of country from the document if applicable

     

     

     

    dateOfBirthMatchesaForm

     

    String

    255 Chars

    Y = Yes, X = not applicable

     

     

    documentExpiryDate

     

    String

    255 Chars

    dd/mm/yyyy; spaces if not applicable NOTE: (manually entered date with slashes)

     

     

    documentName

     

    String

    255 Chars

    This is an automatic lookup to convert the idDocumentType member into a human readable document name.

     

     

    documentNumber

     

    String

    255 Chars

    Alphanumeric, eg passport number.

     

     

    filler

     

    String

    255 Chars

    Often there will be filler, it serves no purpose and should be ignored.

     

     

    id

    Long

    Extra identifier that identifies this record. Not set by Australia Post.

     

    idDocumentType

     

    String

    255 Chars

    Code number representing the document type. The lookup for the name is done automatically and stored in the documentName member.

     

    idWizardRefNo

     

    String

    255 Chars

     

     

     

     

    issuedBy

     

    String

    255 Chars

    This may be present instead of country of Issue, stateOrTerritoryOfIssue, utilityAccountIssuer and utilityAccountType. It may selectively hold this information in a less rigid format.

     

     

    issueDate

     

    String

    255 Chars

    dd/mm/yyyy; spaces if not applicable NOTE: (manually entered date with slashes)

    May not be present.

     

     

    nameMatchesForm

     

    String

    255 Chars

    Y = Yes, X = not applicable

     

     

    photoMatch

     

    String

    255 Chars

    Y = Yes, X = not applicable

     

     

    recordNo

     

    Strin

    255 Chars

     

     

     

     

    recordType

     

    String

    255 Chars

     

     

     

     

    referenceNo

     

    String

    255 Chars

     

     

     

     

    residentialAddressMatchesForm

     

    String

    255 Chars

    Y = Yes, X = not applicable

     

    stateOrTerritoryOfIssue

     

    String

    255 Chars

    ACT, QLD, NSW, NT, SA, TAS, VIC or WA;

     

     

    utilityAccountIssuer

     

    String

    255 Chars

    If specifically a utility, then the name.

     

     

    utilityAccountType

     

    String

    255 Chars

    01 = electricity, 02 = gas, 03 = water, 04 = telephone

     

     

    NameValuePair

    The NameValuePair complex type has the following structure:

     

    Member

    Type

    Required?

    Description

    Contract

    name

    String

    255 Chars

    No

    This will identify the data that is stored in this pair.

    Needs to match an agreed upon value and be unique in the list.

    value

    String

    255 Chars

    No

    The actual data being passed in this pair.

     

     

     

     

    Name

    The Name complex type has the following structure: 

    Member

    Type

    Required?

    Description

    Contract

    honorific

    String

    255 Chars

    No

    The honorific component of a person’s name, eg. “Mr”, “Miss”, etc.

     

     

     

     

    givenName

    String

    255 Chars

    Yes

    A person’s given name.

    Cannot be null. Cannot be the empty string.

    middleNames

    String

    255 Chars

    No

    A person’s middle names. Note that there can be multiple names.

     

    surname

    String

    255 Chars

    Yes

    A person’s surname or last name.

    Cannot be null. Cannot be the empty string.