B4X
B4X
Amazon SP-API Get Feeds
See more Amazon SP-API Examples
Returns feed details for the feeds that match the filters that you specify.Chilkat B4X Downloads
Dim success As Boolean = False
' This example requires the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.
Dim authAws As ChilkatAuthAws
authAws.Initialize
authAws.AccessKey = "AWS_ACCESS_KEY"
authAws.SecretKey = "AWS_SECRET_KEY"
authAws.ServiceName = "execute-api"
' Use the region that is correct for your needs.
authAws.Region = "eu-west-1"
Dim rest As ChilkatRest
rest.Initialize("rest")
success = rest.Connect("sandbox.sellingpartnerapi-eu.amazon.com", 443, True, True)
If success = False Then
Log(rest.LastErrorText)
Return
End If
success = rest.SetAuthAws(authAws)
' Load the previously obtained LWA access token.
' See Fetch SP-API LWA Access Token
Dim jsonToken As ChilkatJsonObject
jsonToken.Initialize
success = jsonToken.LoadFile("qa_data/tokens/sp_api_lwa_token.json")
If success = False Then
Log("Failed to load LWA access token.")
Return
End If
' Add the x-amz-access-token request header.
Dim lwa_token As String = jsonToken.StringOf("access_token")
rest.ClearAllHeaders
rest.AddHeader("x-amz-access-token", lwa_token)
rest.ClearAllQueryParams
rest.AddQueryParam("feedTypes", "POST_PRODUCT_DATA")
rest.AddQueryParam("pageSize", "10")
rest.AddQueryParam("processingStatuses", "CANCELLED,DONE")
Dim sbResponse As ChilkatStringBuilder
sbResponse.Initialize
Dim path As String = "/feeds/2021-06-30/feeds"
success = rest.FullRequestNoBodySb("GET", path, sbResponse)
If success = False Then
Log(rest.LastErrorText)
Return
End If
' Examine the response status.
Dim statusCode As Int = rest.ResponseStatusCode
If statusCode <> 200 Then
Log("Response status text: " & rest.ResponseStatusText)
Log("Response body: ")
Log(sbResponse.GetAsString)
Log("Failed.")
Return
End If
Log(sbResponse.GetAsString)
' If successful, gets a JSON response such as the following:
' {
' "feeds": [
' {
' "feedId": "FeedId1",
' "feedType": "POST_PRODUCT_DATA",
' "createdTime": "2019-12-11T13:16:24.630Z",
' "processingStatus": "CANCELLED",
' "processingStartTime": "2019-12-11T13:16:24.630Z",
' "processingEndTime": "2019-12-11T13:16:24.630Z"
' }
' ],
' "nextToken": "VGhpcyB0b2tlbiBpcyBvcGFxdWUgYW5kIGludGVudGlvbmFsbHkgb2JmdXNjYXRlZA=="
' }
' Use this online tool to generate parsing code from sample JSON:
' Generate Parsing Code from JSON
Dim json As ChilkatJsonObject
json.Initialize
json.LoadSb(sbResponse)
Dim feedId As String
Dim feedType As String
Dim createdTime As String
Dim processingStatus As String
Dim processingStartTime As String
Dim processingEndTime As String
Dim nextToken As String = json.StringOf("nextToken")
Dim i As Int = 0
Dim count_i As Int = json.SizeOfArray("feeds")
Do While i < count_i
json.I = i
feedId = json.StringOf("feeds[i].feedId")
feedType = json.StringOf("feeds[i].feedType")
createdTime = json.StringOf("feeds[i].createdTime")
processingStatus = json.StringOf("feeds[i].processingStatus")
processingStartTime = json.StringOf("feeds[i].processingStartTime")
processingEndTime = json.StringOf("feeds[i].processingEndTime")
i = i + 1
Loop
Log("Success!")