vendorOrders

package
v0.0.0-...-f22db7b Latest Latest
Warning

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

Go to latest
Published: Jul 16, 2022 License: MIT Imports: 12 Imported by: 0

Documentation

Overview

Package vendorOrders provides primitives to interact the openapi HTTP API.

Code generated by go-sdk-codegen DO NOT EDIT.

Package vendorOrders provides primitives to interact the openapi HTTP API.

Code generated by go-sdk-codegen DO NOT EDIT.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewGetOrderRequest

func NewGetOrderRequest(endpoint string, purchaseOrderNumber string) (*http.Request, error)

NewGetOrderRequest generates requests for GetOrder

func NewGetOrdersRequest

func NewGetOrdersRequest(endpoint string, params *GetOrdersParams) (*http.Request, error)

NewGetOrdersRequest generates requests for GetOrders

func NewSubmitAcknowledgementRequest

func NewSubmitAcknowledgementRequest(endpoint string, body SubmitAcknowledgementJSONRequestBody) (*http.Request, error)

NewSubmitAcknowledgementRequest calls the generic SubmitAcknowledgement builder with application/json body

func NewSubmitAcknowledgementRequestWithBody

func NewSubmitAcknowledgementRequestWithBody(endpoint string, contentType string, body io.Reader) (*http.Request, error)

NewSubmitAcknowledgementRequestWithBody generates requests for SubmitAcknowledgement with any type of body

Types

type AcknowledgementStatus

type AcknowledgementStatus struct {

	// Acknowledgement code is a unique two digit value which indicates the status of the acknowledgement. For a list of acknowledgement codes that Amazon supports, see the Vendor Direct Fulfillment APIs Use Case Guide.
	Code *string `json:"code,omitempty"`

	// Reason for the acknowledgement code.
	Description *string `json:"description,omitempty"`
}

AcknowledgementStatus defines model for AcknowledgementStatus.

type Address

type Address struct {

	// First line of the address.
	AddressLine1 string `json:"addressLine1"`

	// Additional address information, if required.
	AddressLine2 *string `json:"addressLine2,omitempty"`

	// Additional address information, if required.
	AddressLine3 *string `json:"addressLine3,omitempty"`

	// The attention name of the person at that address.
	Attention *string `json:"attention,omitempty"`

	// The city where the person, business or institution is located.
	City *string `json:"city,omitempty"`

	// The two digit country code. In ISO 3166-1 alpha-2 format.
	CountryCode string `json:"countryCode"`

	// The county where person, business or institution is located.
	County *string `json:"county,omitempty"`

	// The district where person, business or institution is located.
	District *string `json:"district,omitempty"`

	// The name of the person, business or institution at that address.
	Name string `json:"name"`

	// The phone number of the person, business or institution located at that address.
	Phone *string `json:"phone,omitempty"`

	// The postal code of that address. It conatins a series of letters or digits or both, sometimes including spaces or punctuation.
	PostalCode *string `json:"postalCode,omitempty"`

	// The state or region where person, business or institution is located.
	StateOrRegion string `json:"stateOrRegion"`
}

Address defines model for Address.

type Client

type Client struct {
	// The endpoint of the server conforming to this interface, with scheme,
	// https://api.deepmap.com for example. This can contain a path relative
	// to the server, such as https://api.deepmap.com/dev-test, and all the
	// paths in the swagger spec will be appended to the server.
	Endpoint string

	// Doer for performing requests, typically a *http.Client with any
	// customized settings, such as certificate chains.
	Client HttpRequestDoer

	// A callback for modifying requests which are generated before sending over
	// the network.
	RequestBefore RequestBeforeFn

	// A callback for modifying response which are generated before sending over
	// the network.
	ResponseAfter ResponseAfterFn

	// The user agent header identifies your application, its version number, and the platform and programming language you are using.
	// You must include a user agent header in each request submitted to the sales partner API.
	UserAgent string
}

Client which conforms to the OpenAPI3 specification for this service.

func NewClient

func NewClient(endpoint string, opts ...ClientOption) (*Client, error)

Creates a new Client, with reasonable defaults

func (*Client) GetOrder

func (c *Client) GetOrder(ctx context.Context, purchaseOrderNumber string) (*http.Response, error)

func (*Client) GetOrders

func (c *Client) GetOrders(ctx context.Context, params *GetOrdersParams) (*http.Response, error)

func (*Client) SubmitAcknowledgement

func (c *Client) SubmitAcknowledgement(ctx context.Context, body SubmitAcknowledgementJSONRequestBody) (*http.Response, error)

func (*Client) SubmitAcknowledgementWithBody

func (c *Client) SubmitAcknowledgementWithBody(ctx context.Context, contentType string, body io.Reader) (*http.Response, error)

type ClientInterface

type ClientInterface interface {
	// SubmitAcknowledgement request  with any body
	SubmitAcknowledgementWithBody(ctx context.Context, contentType string, body io.Reader) (*http.Response, error)

	SubmitAcknowledgement(ctx context.Context, body SubmitAcknowledgementJSONRequestBody) (*http.Response, error)

	// GetOrders request
	GetOrders(ctx context.Context, params *GetOrdersParams) (*http.Response, error)

	// GetOrder request
	GetOrder(ctx context.Context, purchaseOrderNumber string) (*http.Response, error)
}

The interface specification for the client above.

type ClientOption

type ClientOption func(*Client) error

ClientOption allows setting custom parameters during construction

func WithBaseURL

func WithBaseURL(baseURL string) ClientOption

WithBaseURL overrides the baseURL.

func WithHTTPClient

func WithHTTPClient(doer HttpRequestDoer) ClientOption

WithHTTPClient allows overriding the default Doer, which is automatically created using http.Client. This is useful for tests.

func WithRequestBefore

func WithRequestBefore(fn RequestBeforeFn) ClientOption

WithRequestBefore allows setting up a callback function, which will be called right before sending the request. This can be used to mutate the request.

func WithResponseAfter

func WithResponseAfter(fn ResponseAfterFn) ClientOption

WithResponseAfter allows setting up a callback function, which will be called right after get response the request. This can be used to log.

func WithUserAgent

func WithUserAgent(userAgent string) ClientOption

WithUserAgent set up useragent add user agent to every request automatically

type ClientWithResponses

type ClientWithResponses struct {
	ClientInterface
}

ClientWithResponses builds on ClientInterface to offer response payloads

func NewClientWithResponses

func NewClientWithResponses(endpoint string, opts ...ClientOption) (*ClientWithResponses, error)

NewClientWithResponses creates a new ClientWithResponses, which wraps Client with return type handling

func (*ClientWithResponses) GetOrderWithResponse

func (c *ClientWithResponses) GetOrderWithResponse(ctx context.Context, purchaseOrderNumber string) (*GetOrderResp, error)

GetOrderWithResponse request returning *GetOrderResponse

func (*ClientWithResponses) GetOrdersWithResponse

func (c *ClientWithResponses) GetOrdersWithResponse(ctx context.Context, params *GetOrdersParams) (*GetOrdersResp, error)

GetOrdersWithResponse request returning *GetOrdersResponse

func (*ClientWithResponses) SubmitAcknowledgementWithBodyWithResponse

func (c *ClientWithResponses) SubmitAcknowledgementWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader) (*SubmitAcknowledgementResp, error)

SubmitAcknowledgementWithBodyWithResponse request with arbitrary body returning *SubmitAcknowledgementResponse

func (*ClientWithResponses) SubmitAcknowledgementWithResponse

func (c *ClientWithResponses) SubmitAcknowledgementWithResponse(ctx context.Context, body SubmitAcknowledgementJSONRequestBody) (*SubmitAcknowledgementResp, error)

type ClientWithResponsesInterface

type ClientWithResponsesInterface interface {
	// SubmitAcknowledgement request  with any body
	SubmitAcknowledgementWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader) (*SubmitAcknowledgementResp, error)

	SubmitAcknowledgementWithResponse(ctx context.Context, body SubmitAcknowledgementJSONRequestBody) (*SubmitAcknowledgementResp, error)

	// GetOrders request
	GetOrdersWithResponse(ctx context.Context, params *GetOrdersParams) (*GetOrdersResp, error)

	// GetOrder request
	GetOrderWithResponse(ctx context.Context, purchaseOrderNumber string) (*GetOrderResp, error)
}

ClientWithResponsesInterface is the interface specification for the client with responses above.

type Decimal

type Decimal string

Decimal defines model for Decimal.

type Error

type Error struct {

	// An error code that identifies the type of error that occurred.
	Code string `json:"code"`

	// Additional details that can help the caller understand or fix the issue.
	Details *string `json:"details,omitempty"`

	// A message that describes the error condition.
	Message string `json:"message"`
}

Error defines model for Error.

type ErrorList

type ErrorList []Error

ErrorList defines model for ErrorList.

type GetOrderResp

type GetOrderResp struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *GetOrderResponse
	JSON400      *GetOrderResponse
	JSON401      *GetOrderResponse
	JSON403      *GetOrderResponse
	JSON404      *GetOrderResponse
	JSON415      *GetOrderResponse
	JSON429      *GetOrderResponse
	JSON500      *GetOrderResponse
	JSON503      *GetOrderResponse
}

func ParseGetOrderResp

func ParseGetOrderResp(rsp *http.Response) (*GetOrderResp, error)

ParseGetOrderResp parses an HTTP response from a GetOrderWithResponse call

func (GetOrderResp) Status

func (r GetOrderResp) Status() string

Status returns HTTPResponse.Status

func (GetOrderResp) StatusCode

func (r GetOrderResp) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetOrderResponse

type GetOrderResponse struct {

	// A list of error responses returned when a request is unsuccessful.
	Errors  *ErrorList `json:"errors,omitempty"`
	Payload *Order     `json:"payload,omitempty"`
}

GetOrderResponse defines model for GetOrderResponse.

type GetOrdersParams

type GetOrdersParams struct {

	// The vendor warehouse identifier for the fulfillment warehouse. If not specified, the result will contain orders for all warehouses.
	ShipFromPartyId *string `json:"shipFromPartyId,omitempty"`

	// Returns only the purchase orders that match the specified status. If not specified, the result will contain orders that match any status.
	Status *string `json:"status,omitempty"`

	// The limit to the number of purchase orders returned.
	Limit *int64 `json:"limit,omitempty"`

	// Purchase orders that became available after this date and time will be included in the result. Must be in ISO-8601 date/time format.
	CreatedAfter time.Time `json:"createdAfter"`

	// Purchase orders that became available before this date and time will be included in the result. Must be in ISO-8601 date/time format.
	CreatedBefore time.Time `json:"createdBefore"`

	// Sort the list in ascending or descending order by order creation date.
	SortOrder *string `json:"sortOrder,omitempty"`

	// Used for pagination when there are more orders than the specified result size limit. The token value is returned in the previous API call.
	NextToken *string `json:"nextToken,omitempty"`

	// When true, returns the complete purchase order details. Otherwise, only purchase order numbers are returned.
	IncludeDetails *string `json:"includeDetails,omitempty"`
}

GetOrdersParams defines parameters for GetOrders.

type GetOrdersResp

type GetOrdersResp struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *GetOrdersResponse
	JSON400      *GetOrdersResponse
	JSON403      *GetOrdersResponse
	JSON404      *GetOrdersResponse
	JSON415      *GetOrdersResponse
	JSON429      *GetOrdersResponse
	JSON500      *GetOrdersResponse
	JSON503      *GetOrdersResponse
}

func ParseGetOrdersResp

func ParseGetOrdersResp(rsp *http.Response) (*GetOrdersResp, error)

ParseGetOrdersResp parses an HTTP response from a GetOrdersWithResponse call

func (GetOrdersResp) Status

func (r GetOrdersResp) Status() string

Status returns HTTPResponse.Status

func (GetOrdersResp) StatusCode

func (r GetOrdersResp) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetOrdersResponse

type GetOrdersResponse struct {

	// A list of error responses returned when a request is unsuccessful.
	Errors  *ErrorList `json:"errors,omitempty"`
	Payload *OrderList `json:"payload,omitempty"`
}

GetOrdersResponse defines model for GetOrdersResponse.

type GiftDetails

type GiftDetails struct {

	// Gift message to be printed in shipment.
	GiftMessage *string `json:"giftMessage,omitempty"`

	// Gift wrap identifier for the gift wrapping, if any.
	GiftWrapId *string `json:"giftWrapId,omitempty"`
}

GiftDetails defines model for GiftDetails.

type HttpRequestDoer

type HttpRequestDoer interface {
	Do(req *http.Request) (*http.Response, error)
}

Doer performs HTTP requests.

The standard http.Client implements this interface.

type ItemQuantity

type ItemQuantity struct {

	// Acknowledged quantity. This value should not be zero.
	Amount *int `json:"amount,omitempty"`

	// Unit of measure for the acknowledged quantity.
	UnitOfMeasure *string `json:"unitOfMeasure,omitempty"`
}

ItemQuantity defines model for ItemQuantity.

type Money

type Money struct {

	// A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation.
	Amount *Decimal `json:"amount,omitempty"`

	// Three digit currency code in ISO 4217 format. String of length 3.
	CurrencyCode *string `json:"currencyCode,omitempty"`
}

Money defines model for Money.

type Order

type Order struct {

	// Details of an order.
	OrderDetails *OrderDetails `json:"orderDetails,omitempty"`

	// The purchase order number for this order. Formatting Notes: alpha-numeric code.
	PurchaseOrderNumber string `json:"purchaseOrderNumber"`
}

Order defines model for Order.

type OrderAcknowledgementItem

type OrderAcknowledgementItem struct {

	// The date and time when the order is acknowledged, in ISO-8601 date/time format. For example: 2018-07-16T23:00:00Z / 2018-07-16T23:00:00-05:00 / 2018-07-16T23:00:00-08:00.
	AcknowledgementDate time.Time `json:"acknowledgementDate"`

	// Status of acknowledgement.
	AcknowledgementStatus AcknowledgementStatus `json:"acknowledgementStatus"`

	// Item details including acknowledged quantity.
	ItemAcknowledgements []OrderItemAcknowledgement `json:"itemAcknowledgements"`

	// The purchase order number for this order. Formatting Notes: alpha-numeric code.
	PurchaseOrderNumber string              `json:"purchaseOrderNumber"`
	SellingParty        PartyIdentification `json:"sellingParty"`
	ShipFromParty       PartyIdentification `json:"shipFromParty"`

	// The vendor's order number for this order.
	VendorOrderNumber string `json:"vendorOrderNumber"`
}

OrderAcknowledgementItem defines model for OrderAcknowledgementItem.

type OrderDetails

type OrderDetails struct {
	BillToParty PartyIdentification `json:"billToParty"`

	// The customer order number.
	CustomerOrderNumber string `json:"customerOrderNumber"`

	// A list of items in this purchase order.
	Items []OrderItem `json:"items"`

	// The date the order was placed. This field is expected to be in ISO-8601 date/time format, for example:2018-07-16T23:00:00Z/ 2018-07-16T23:00:00-05:00 /2018-07-16T23:00:00-08:00. If no time zone is specified, UTC should be assumed.
	OrderDate time.Time `json:"orderDate"`

	// Current status of the order.
	OrderStatus   *string             `json:"orderStatus,omitempty"`
	SellingParty  PartyIdentification `json:"sellingParty"`
	ShipFromParty PartyIdentification `json:"shipFromParty"`

	// Address of the party.
	ShipToParty Address `json:"shipToParty"`

	// Shipment details required for the shipment.
	ShipmentDetails ShipmentDetails `json:"shipmentDetails"`
	TaxTotal        *struct {

		// A list of tax line items.
		TaxLineItem *TaxLineItem `json:"taxLineItem,omitempty"`
	} `json:"taxTotal,omitempty"`
}

OrderDetails defines model for OrderDetails.

type OrderItem

type OrderItem struct {

	// Buyer's standard identification number (ASIN) of an item.
	BuyerProductIdentifier *string `json:"buyerProductIdentifier,omitempty"`

	// Gift details for the item.
	GiftDetails *GiftDetails `json:"giftDetails,omitempty"`

	// Numbering of the item on the purchase order. The first item will be 1, the second 2, and so on.
	ItemSequenceNumber string `json:"itemSequenceNumber"`

	// An amount of money, including units in the form of currency.
	NetPrice Money `json:"netPrice"`

	// Details of quantity ordered.
	OrderedQuantity ItemQuantity `json:"orderedQuantity"`

	// Dates for the scheduled delivery shipments.
	ScheduledDeliveryShipment *ScheduledDeliveryShipment `json:"scheduledDeliveryShipment,omitempty"`

	// Total tax details for the line item.
	TaxDetails *struct {

		// A list of tax line items.
		TaxLineItem *TaxLineItem `json:"taxLineItem,omitempty"`
	} `json:"taxDetails,omitempty"`

	// Title for the item.
	Title *string `json:"title,omitempty"`

	// An amount of money, including units in the form of currency.
	TotalPrice *Money `json:"totalPrice,omitempty"`

	// The vendor selected product identification of the item.
	VendorProductIdentifier *string `json:"vendorProductIdentifier,omitempty"`
}

OrderItem defines model for OrderItem.

type OrderItemAcknowledgement

type OrderItemAcknowledgement struct {

	// Details of quantity ordered.
	AcknowledgedQuantity ItemQuantity `json:"acknowledgedQuantity"`

	// Buyer's standard identification number (ASIN) of an item.
	BuyerProductIdentifier *string `json:"buyerProductIdentifier,omitempty"`

	// Line item sequence number for the item.
	ItemSequenceNumber string `json:"itemSequenceNumber"`

	// The vendor selected product identification of the item. Should be the same as was provided in the purchase order.
	VendorProductIdentifier *string `json:"vendorProductIdentifier,omitempty"`
}

OrderItemAcknowledgement defines model for OrderItemAcknowledgement.

type OrderList

type OrderList struct {
	Orders     *[]Order    `json:"orders,omitempty"`
	Pagination *Pagination `json:"pagination,omitempty"`
}

OrderList defines model for OrderList.

type Pagination

type Pagination struct {

	// A generated string used to pass information to your next request. If NextToken is returned, pass the value of NextToken to the next request. If NextToken is not returned, there are no more order items to return.
	NextToken *string `json:"nextToken,omitempty"`
}

Pagination defines model for Pagination.

type PartyIdentification

type PartyIdentification struct {

	// Address of the party.
	Address *Address `json:"address,omitempty"`

	// Assigned identification for the party. For example, warehouse code or vendor code. Please refer to specific party for more details.
	PartyId string `json:"partyId"`

	// Tax registration details of the entity.
	TaxInfo *TaxRegistrationDetails `json:"taxInfo,omitempty"`
}

PartyIdentification defines model for PartyIdentification.

type RequestBeforeFn

type RequestBeforeFn func(ctx context.Context, req *http.Request) error

RequestBeforeFn is the function signature for the RequestBefore callback function

type ResponseAfterFn

type ResponseAfterFn func(ctx context.Context, rsp *http.Response) error

ResponseAfterFn is the function signature for the ResponseAfter callback function

type ScheduledDeliveryShipment

type ScheduledDeliveryShipment struct {

	// Earliest nominated delivery date for the scheduled delivery.
	EarliestNominatedDeliveryDate *time.Time `json:"earliestNominatedDeliveryDate,omitempty"`

	// Latest nominated delivery date for the scheduled delivery.
	LatestNominatedDeliveryDate *time.Time `json:"latestNominatedDeliveryDate,omitempty"`

	// Scheduled delivery service type.
	ScheduledDeliveryServiceType *string `json:"scheduledDeliveryServiceType,omitempty"`
}

ScheduledDeliveryShipment defines model for ScheduledDeliveryShipment.

type ShipmentDates

type ShipmentDates struct {

	// Delivery date promised to the Amazon customer.
	PromisedDeliveryDate *time.Time `json:"promisedDeliveryDate,omitempty"`

	// Time by which the vendor is required to ship the order.
	RequiredShipDate time.Time `json:"requiredShipDate"`
}

ShipmentDates defines model for ShipmentDates.

type ShipmentDetails

type ShipmentDetails struct {

	// When true, the order contain a gift. Include the gift message and gift wrap information.
	IsGift *bool `json:"isGift,omitempty"`

	// When true, this is a priority shipment.
	IsPriorityShipment bool `json:"isPriorityShipment"`

	// When true, a packing slip is required to be sent to the customer.
	IsPslipRequired bool `json:"isPslipRequired"`

	// When true, this order is part of a scheduled delivery program.
	IsScheduledDeliveryShipment *bool `json:"isScheduledDeliveryShipment,omitempty"`

	// Message to customer for order status.
	MessageToCustomer string `json:"messageToCustomer"`

	// Ship method to be used for shipping the order. Amazon defines ship method codes indicating the shipping carrier and shipment service level. To see the full list of ship methods in use, including both the code and the friendly name, search the 'Help' section on Vendor Central for 'ship methods'.
	ShipMethod string `json:"shipMethod"`

	// Shipment dates.
	ShipmentDates ShipmentDates `json:"shipmentDates"`
}

ShipmentDetails defines model for ShipmentDetails.

type SubmitAcknowledgementJSONBody

type SubmitAcknowledgementJSONBody SubmitAcknowledgementRequest

SubmitAcknowledgementJSONBody defines parameters for SubmitAcknowledgement.

type SubmitAcknowledgementJSONRequestBody

type SubmitAcknowledgementJSONRequestBody SubmitAcknowledgementJSONBody

SubmitAcknowledgementRequestBody defines body for SubmitAcknowledgement for application/json ContentType.

type SubmitAcknowledgementRequest

type SubmitAcknowledgementRequest struct {

	// A list of one or more purchase orders.
	OrderAcknowledgements *[]OrderAcknowledgementItem `json:"orderAcknowledgements,omitempty"`
}

SubmitAcknowledgementRequest defines model for SubmitAcknowledgementRequest.

type SubmitAcknowledgementResp

func ParseSubmitAcknowledgementResp

func ParseSubmitAcknowledgementResp(rsp *http.Response) (*SubmitAcknowledgementResp, error)

ParseSubmitAcknowledgementResp parses an HTTP response from a SubmitAcknowledgementWithResponse call

func (SubmitAcknowledgementResp) Status

func (r SubmitAcknowledgementResp) Status() string

Status returns HTTPResponse.Status

func (SubmitAcknowledgementResp) StatusCode

func (r SubmitAcknowledgementResp) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type SubmitAcknowledgementResponse

type SubmitAcknowledgementResponse struct {

	// A list of error responses returned when a request is unsuccessful.
	Errors  *ErrorList     `json:"errors,omitempty"`
	Payload *TransactionId `json:"payload,omitempty"`
}

SubmitAcknowledgementResponse defines model for SubmitAcknowledgementResponse.

type TaxDetails

type TaxDetails struct {

	// An amount of money, including units in the form of currency.
	TaxAmount Money `json:"taxAmount"`

	// A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation.
	TaxRate *Decimal `json:"taxRate,omitempty"`

	// An amount of money, including units in the form of currency.
	TaxableAmount *Money `json:"taxableAmount,omitempty"`

	// Tax type.
	Type *string `json:"type,omitempty"`
}

TaxDetails defines model for TaxDetails.

type TaxLineItem

type TaxLineItem []TaxDetails

TaxLineItem defines model for TaxLineItem.

type TaxRegistrationDetails

type TaxRegistrationDetails struct {

	// Address of the party.
	TaxRegistrationAddress *Address `json:"taxRegistrationAddress,omitempty"`

	// Tax registration message that can be used for additional tax related details.
	TaxRegistrationMessages *string `json:"taxRegistrationMessages,omitempty"`

	// Tax registration number for the party. For example, VAT ID.
	TaxRegistrationNumber string `json:"taxRegistrationNumber"`

	// Tax registration type for the entity.
	TaxRegistrationType *string `json:"taxRegistrationType,omitempty"`
}

TaxRegistrationDetails defines model for TaxRegistrationDetails.

type TransactionId

type TransactionId struct {

	// GUID assigned by Amazon to identify this transaction. This value can be used with the Transaction Status API to return the status of this transaction.
	TransactionId *string `json:"transactionId,omitempty"`
}

TransactionId defines model for TransactionId.

Jump to

Keyboard shortcuts

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