Welcome to NAIT

CSI information

NAIT CSI services Endpoint URLs

UAT: https://animaltracecsi-uat.nait.co.nz/external.svc
Production: https://animaltracecsi.nait.co.nz/external.svc

NAIT WSDL URLs

UAT: https://animaltracecsi-uat.nait.co.nz/wsdl/nait.wsdl
Production: https://animaltracecsi.nait.co.nz/wsdl/nait.wsdl

NAIT XML namespace

http://AnimalTraceCSI.nait.co.nz/Schema/2011/11/

Please note the namespace will not change regardless of the environment.

NAIT CSI actions and types

NAIT WSDL is a generic interface (WSDL) that accepts any XML data. This is to provide a cleaner versioning strategy. This Generic WSDL also provides the opportunity for XML received by the service to be directly passed to other interfaces (i.e. web services, database) without any serialization/deserialization overhead.

The message body (the specific Request objects) determine which action and which version of the action to invoke.

Action Name

Request Type

Response Type

Kill Record

KillUpload

KillUploadRequest

KillUploadResponse

KillUploadReplacement

KillUploadReplacementRequest

KillUploadReplacementResponse

KillUploadRemoval

KillUploadRemovalRequest

KillUploadRemovalResponse

Tags

TagReservation

TagReservationRequest

TagReservationResponse

TagUpload

TagUploadRequest

TagUploadResponse

ManageTag

ManageTagRequest

ManageTagResponse

Animals

RegisterAnimals

RegisterAnimalsRequest

RegisterAnimalsResponse

UpdateAnimals

UpdateAnimalsRequest

UpdateAnimalsResponse

ReplaceTags

ReplaceTagsRequest

ReplaceTagsResponse

UndoReplaceTags

UndoReplaceTagsRequest

UndoReplaceTagsResponse

AnimalTreatment

AnimalTreatmentRequest

AnimalTreatmentResponse

DeregisterAnimals

DeregisterAnimalsRequest

DeregisterAnimalsResponse

Movements

MovementUpload

MovementUploadRequest

MovementUploadResponse

MovementUpdate

MovementUpdateRequest

MovementUpdateResponse

ExemptMovementUpload

ExemptMovementUploadRequest

ExemptMovementUploadResponse

ExemptMovementUpdate

ExemptMovementUpdateRequest

ExemptMovementUpdateResponse

Bulk Enquiry

NAITNumberEnquiry

NAITNumberEnquiryRequest NAITNumberEnquiryResponse

AnimalEnquiry

AnimalEnquiryRequest AnimalEnquiryResponse

NextVisualTagEnquiry

NextVisualTagEnquiryRequest NextVisualTagEnquiryResponse

Versioning

Systems that consume the responses returned by NAIT should ignore, without error, any new XML elements which they were not expecting. This approach is commonly described as “Lax Versioning”.  The opposite, which is called “Strict Versioning”, should not be used for NAIT.

Common Questions

When I type the Endpoint URL on my browser, why can I not see the services page?

Please check your browser proxy settings.

Do I need to install client certificates?

No, you do not need to install any client certificate.

How are the above Action, Request type and Response type used in C# .Net?

Action name: Action
Request type: ActionRequest
Response type: ActionResponse

message = System.ServiceModel.Channels.Message.CreateMessage(System.ServiceModel.
Channels.MessageVersion.Soap11, action, body);

<TagUploadRequest xmlns="http://AnimalTraceCSI.nait.co.nz/Schema/2011/11/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">

..................

</TagUploadRequest>

How can I add Username and Password to the Soap header in C# .Net?

message.Headers.Add(System.ServiceModel.Channels.MessageHeader.
CreateHeader("UserName", "http://AnimalTraceCSI.nait.co.nz/Schema/2011/11/Common", userName));

message.Headers.Add(System.ServiceModel.Channels.MessageHeader.
CreateHeader("Password", "http://AnimalTraceCSI.nait.co.nz/Schema/2011/11/Common", password));

How can I create a proxy object from NAIT Schema in .Net?

You can use SVCUTIL command line to create proxy object from NAIT Schema. The syntax is:

@set SVCUTIL="c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\x64\svcutil" @%SVCUTIL% Schema/2011/11/Types.xsd Schema/2011/11/Common.xsd /nologo /namespace:*,NAIT.Schema._2011_11 /o:Classes/2011-11.cs /dataContractOnly