-
Notifications
You must be signed in to change notification settings - Fork 0
/
return_receipt_electronic.go
37 lines (31 loc) · 1.12 KB
/
return_receipt_electronic.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package go_usps
// Return Receipt Electronic API
// https://www.usps.com/business/web-tools-apis/track-and-confirm-api.htm#_Toc536704374
// TODO: Not tested (API Authorization failure. User XXXXXXXXXXXX is not authorized to use API PTSRre.)
type PTSRreRequest struct {
USERID string `xml:"USERID,attr"`
TrackID string `xml:"TrackID"`
ClientIp string `xml:"ClientIp,omitempty"`
MpSuffix string `xml:"MpSuffix"`
MpDate string `xml:"MpDate"`
FirstName string `xml:"FirstName"`
LastName string `xml:"LastName"`
Email1 string `xml:"Email1"`
Email2 string `xml:"Email2,omitempty"`
Email3 string `xml:"Email3,omitempty"`
TableCode string `xml:"TableCode"`
CustRegID string `xml:"CustRegID,omitempty"`
}
func (r *PTSRreRequest) toHTTPRequestStr(bool) (string, error) {
return createUSPSApiRequestStr("PTSRre", r)
}
type PTSRreResult struct {
ResultText string `xml:"ResultText"`
ReturnCode string `xml:"ReturnCode"`
}
func (U *USPS) PTSRre(request *PTSRreRequest) (PTSRreResult, error) {
request.USERID = U.Username
result := new(PTSRreResult)
err := U.Client.Execute(request, result)
return *result, err
}