amazonprime

package
v1.3.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 13, 2023 License: GPL-3.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func RootCommand

func RootCommand() *cobra.Command

RootCommand command.

Types

type Offer

type Offer struct {
	ID         string
	Publisher  string
	Title      string
	URL        string
	IsFreeGame bool
}

Offer represents an Amazon Prime offer.

type Response

type Response struct {
	Data struct {
		PrimeOffers []struct {
			CatalogID string `json:"catalogId"`
			ID        string `json:"id"`
			Title     string `json:"title"`
			Assets    []struct {
				Type       string `json:"type"`
				Purpose    string `json:"purpose"`
				Location   string `json:"location"`
				Location2X string `json:"location2x"`
				Typename   string `json:"__typename"`
			} `json:"assets"`
			OfferAssets struct {
				ID       string `json:"id"`
				Pixels   any    `json:"pixels"`
				Typename string `json:"__typename"`
			} `json:"offerAssets"`
			Description       string `json:"description"`
			DeliveryMethod    string `json:"deliveryMethod"`
			IsRetailLinkOffer bool   `json:"isRetailLinkOffer"`
			Priority          int    `json:"priority"`
			Tags              []struct {
				Type     string `json:"type"`
				Tag      string `json:"tag"`
				Typename string `json:"__typename"`
			} `json:"tags"`
			Content struct {
				ExternalURL string   `json:"externalURL"`
				Publisher   string   `json:"publisher"`
				Categories  []string `json:"categories"`
				Typename    string   `json:"__typename"`
			} `json:"content"`
			StartTime     time.Time `json:"startTime"`
			EndTime       time.Time `json:"endTime"`
			Self          any       `json:"self"`
			LinkedJourney struct {
				Offers []struct {
					CatalogID  string `json:"catalogId"`
					GrantsCode bool   `json:"grantsCode"`
					Self       struct {
						Eligibility any    `json:"eligibility"`
						Typename    string `json:"__typename"`
					} `json:"self"`
					Typename string `json:"__typename"`
				} `json:"offers"`
				Typename string `json:"__typename"`
			} `json:"linkedJourney"`
			Typename string `json:"__typename"`
		} `json:"primeOffers"`
		Items struct {
			Items []struct {
				ID               string `json:"id"`
				IsFGWP           bool   `json:"isFGWP"`
				IsRetailLinkItem bool   `json:"isRetailLinkItem"`
				GrantsCode       bool   `json:"grantsCode"`
				Priority         int    `json:"priority"`
				Assets           struct {
					Title             string `json:"title"`
					ExternalClaimLink string `json:"externalClaimLink"`
					Platforms         any    `json:"platforms"`
					CardMedia         struct {
						DefaultMedia struct {
							Src1X    string `json:"src1x"`
							Src2X    string `json:"src2x"`
							Type     string `json:"type"`
							Typename string `json:"__typename"`
						} `json:"defaultMedia"`
						Typename string `json:"__typename"`
					} `json:"cardMedia"`
					Typename string `json:"__typename"`
				} `json:"assets"`
				Journey struct {
					ID     string `json:"id"`
					Offers []struct {
						CatalogID  string `json:"catalogId"`
						GrantsCode bool   `json:"grantsCode"`
						Self       struct {
							Eligibility any    `json:"eligibility"`
							Typename    string `json:"__typename"`
						} `json:"self"`
						Typename string `json:"__typename"`
					} `json:"offers"`
					Typename string `json:"__typename"`
				} `json:"journey"`
				Offers []struct {
					ID                  string    `json:"id"`
					StartTime           time.Time `json:"startTime"`
					EndTime             time.Time `json:"endTime"`
					OfferSelfConnection struct {
						Eligibility any    `json:"eligibility"`
						Typename    string `json:"__typename"`
					} `json:"offerSelfConnection"`
					Typename string `json:"__typename"`
				} `json:"offers"`
				Game struct {
					Assets struct {
						Title    string `json:"title"`
						Typename string `json:"__typename"`
					} `json:"assets"`
					Typename string `json:"__typename"`
				} `json:"game"`
				Typename string `json:"__typename"`
			} `json:"items"`
			Typename string `json:"__typename"`
		} `json:"items"`
		Expiring struct {
			Items []struct {
				ID               string `json:"id"`
				IsFGWP           bool   `json:"isFGWP"`
				IsRetailLinkItem bool   `json:"isRetailLinkItem"`
				GrantsCode       bool   `json:"grantsCode"`
				Priority         int    `json:"priority"`
				Assets           struct {
					Title             string `json:"title"`
					ExternalClaimLink string `json:"externalClaimLink"`
					Platforms         any    `json:"platforms"`
					CardMedia         struct {
						DefaultMedia struct {
							Src1X    string `json:"src1x"`
							Src2X    string `json:"src2x"`
							Type     string `json:"type"`
							Typename string `json:"__typename"`
						} `json:"defaultMedia"`
						Typename string `json:"__typename"`
					} `json:"cardMedia"`
					Typename string `json:"__typename"`
				} `json:"assets"`
				Journey any `json:"journey"`
				Offers  []struct {
					ID                  string    `json:"id"`
					StartTime           time.Time `json:"startTime"`
					EndTime             time.Time `json:"endTime"`
					OfferSelfConnection struct {
						Eligibility any    `json:"eligibility"`
						Typename    string `json:"__typename"`
					} `json:"offerSelfConnection"`
					Typename string `json:"__typename"`
				} `json:"offers"`
				Game struct {
					Assets struct {
						Title    string `json:"title"`
						Typename string `json:"__typename"`
					} `json:"assets"`
					Typename string `json:"__typename"`
				} `json:"game"`
				Typename string `json:"__typename"`
			} `json:"items"`
			Typename string `json:"__typename"`
		} `json:"expiring"`
		Popular struct {
			Items []struct {
				ID               string `json:"id"`
				IsFGWP           bool   `json:"isFGWP"`
				IsRetailLinkItem bool   `json:"isRetailLinkItem"`
				GrantsCode       bool   `json:"grantsCode"`
				Priority         int    `json:"priority"`
				Assets           struct {
					Title             string `json:"title"`
					ExternalClaimLink string `json:"externalClaimLink"`
					Platforms         any    `json:"platforms"`
					CardMedia         struct {
						DefaultMedia struct {
							Src1X    string `json:"src1x"`
							Src2X    string `json:"src2x"`
							Type     string `json:"type"`
							Typename string `json:"__typename"`
						} `json:"defaultMedia"`
						Typename string `json:"__typename"`
					} `json:"cardMedia"`
					Typename string `json:"__typename"`
				} `json:"assets"`
				Journey struct {
					ID     string `json:"id"`
					Offers []struct {
						CatalogID  string `json:"catalogId"`
						GrantsCode bool   `json:"grantsCode"`
						Self       struct {
							Eligibility any    `json:"eligibility"`
							Typename    string `json:"__typename"`
						} `json:"self"`
						Typename string `json:"__typename"`
					} `json:"offers"`
					Typename string `json:"__typename"`
				} `json:"journey"`
				Offers []struct {
					ID                  string    `json:"id"`
					StartTime           time.Time `json:"startTime"`
					EndTime             time.Time `json:"endTime"`
					OfferSelfConnection struct {
						Eligibility any    `json:"eligibility"`
						Typename    string `json:"__typename"`
					} `json:"offerSelfConnection"`
					Typename string `json:"__typename"`
				} `json:"offers"`
				Game struct {
					Assets struct {
						Title    string `json:"title"`
						Typename string `json:"__typename"`
					} `json:"assets"`
					Typename string `json:"__typename"`
				} `json:"game"`
				Typename string `json:"__typename"`
			} `json:"items"`
			Typename string `json:"__typename"`
		} `json:"popular"`
		Games struct {
			Items []struct {
				ID               string `json:"id"`
				IsFGWP           bool   `json:"isFGWP"`
				IsRetailLinkItem bool   `json:"isRetailLinkItem"`
				GrantsCode       bool   `json:"grantsCode"`
				Priority         int    `json:"priority"`
				Assets           struct {
					Title             string `json:"title"`
					ExternalClaimLink any    `json:"externalClaimLink"`
					Platforms         any    `json:"platforms"`
					CardMedia         struct {
						DefaultMedia struct {
							Src1X    string `json:"src1x"`
							Src2X    string `json:"src2x"`
							Type     string `json:"type"`
							Typename string `json:"__typename"`
						} `json:"defaultMedia"`
						Typename string `json:"__typename"`
					} `json:"cardMedia"`
					Typename string `json:"__typename"`
				} `json:"assets"`
				Journey any `json:"journey"`
				Offers  []struct {
					ID                  string    `json:"id"`
					StartTime           time.Time `json:"startTime"`
					EndTime             time.Time `json:"endTime"`
					OfferSelfConnection struct {
						Eligibility any    `json:"eligibility"`
						Typename    string `json:"__typename"`
					} `json:"offerSelfConnection"`
					Typename string `json:"__typename"`
				} `json:"offers"`
				Game struct {
					Assets struct {
						Title    string `json:"title"`
						Typename string `json:"__typename"`
					} `json:"assets"`
					Typename string `json:"__typename"`
				} `json:"game"`
				Typename string `json:"__typename"`
			} `json:"items"`
			Typename string `json:"__typename"`
		} `json:"games"`
		Featured struct {
			Items []struct {
				ID     string `json:"id"`
				IsFGWP bool   `json:"isFGWP"`
				Assets struct {
					CardMedia struct {
						Alt          any `json:"alt"`
						DefaultMedia struct {
							Src1X    string `json:"src1x"`
							Src2X    string `json:"src2x"`
							Type     string `json:"type"`
							Typename string `json:"__typename"`
						} `json:"defaultMedia"`
						Typename string `json:"__typename"`
					} `json:"cardMedia"`
					ExternalClaimLink string `json:"externalClaimLink"`
					Typename          string `json:"__typename"`
				} `json:"assets"`
				Journey struct {
					ID     string `json:"id"`
					Offers []struct {
						CatalogID  string `json:"catalogId"`
						GrantsCode bool   `json:"grantsCode"`
						Self       struct {
							Eligibility any    `json:"eligibility"`
							Typename    string `json:"__typename"`
						} `json:"self"`
						Typename string `json:"__typename"`
					} `json:"offers"`
					Typename string `json:"__typename"`
					Assets   struct {
						Title       string `json:"title"`
						Description string `json:"description"`
						Hero        struct {
							DefaultMedia struct {
								Src1X    string `json:"src1x"`
								Src2X    string `json:"src2x"`
								Type     string `json:"type"`
								Typename string `json:"__typename"`
							} `json:"defaultMedia"`
							Tablet struct {
								Src1X    string `json:"src1x"`
								Src2X    string `json:"src2x"`
								Type     string `json:"type"`
								Typename string `json:"__typename"`
							} `json:"tablet"`
							Desktop struct {
								Src1X    string `json:"src1x"`
								Src2X    string `json:"src2x"`
								Type     string `json:"type"`
								Typename string `json:"__typename"`
							} `json:"desktop"`
							Alt      any    `json:"alt"`
							Typename string `json:"__typename"`
						} `json:"hero"`
						Typename string `json:"__typename"`
					} `json:"assets"`
				} `json:"journey"`
				Offers []struct {
					ID                  string `json:"id"`
					OfferSelfConnection struct {
						Eligibility any    `json:"eligibility"`
						Typename    string `json:"__typename"`
					} `json:"offerSelfConnection"`
					Typename string `json:"__typename"`
				} `json:"offers"`
				Typename string `json:"__typename"`
			} `json:"items"`
			Typename string `json:"__typename"`
		} `json:"featured"`
	} `json:"data"`
}

Response represents the reposone from the Amazon Prime API to list offers.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL