mediastoredata

package
v2.0.0-preview.4+incom... Latest Latest
Warning

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

Go to latest
Published: May 26, 2018 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

Package mediastoredata provides the client and types for making API requests to AWS Elemental MediaStore Data Plane.

An AWS Elemental MediaStore asset is an object, similar to an object in the Amazon S3 service. Objects are the fundamental entities that are stored in AWS Elemental MediaStore.

See https://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01 for more information on this service.

See mediastoredata package documentation for more information. https://docs.aws.amazon.com/sdk-for-go/api/service/mediastoredata/

Using the Client

To AWS Elemental MediaStore Data Plane with the SDK use the New function to create a new service client. With that client you can make API requests to the service. These clients are safe to use concurrently.

See the SDK's documentation for more information on how to use the SDK. https://docs.aws.amazon.com/sdk-for-go/api/

See aws.Config documentation for more information on configuring SDK clients. https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config

See the AWS Elemental MediaStore Data Plane client MediaStoreData for more information on creating client for this service. https://docs.aws.amazon.com/sdk-for-go/api/service/mediastoredata/#New

Index

Constants

View Source
const (

	// ErrCodeContainerNotFoundException for service response error code
	// "ContainerNotFoundException".
	//
	// The specified container was not found for the specified account.
	ErrCodeContainerNotFoundException = "ContainerNotFoundException"

	// ErrCodeInternalServerError for service response error code
	// "InternalServerError".
	//
	// The service is temporarily unavailable.
	ErrCodeInternalServerError = "InternalServerError"

	// ErrCodeObjectNotFoundException for service response error code
	// "ObjectNotFoundException".
	//
	// Could not perform an operation on an object that does not exist.
	ErrCodeObjectNotFoundException = "ObjectNotFoundException"

	// ErrCodeRequestedRangeNotSatisfiableException for service response error code
	// "RequestedRangeNotSatisfiableException".
	//
	// The requested content range is not valid.
	ErrCodeRequestedRangeNotSatisfiableException = "RequestedRangeNotSatisfiableException"
)
View Source
const (
	ServiceName = "data.mediastore" // Service endpoint prefix API calls made to.
	EndpointsID = ServiceName       // Service ID for Regions and Endpoints metadata.
)

Service information constants

Variables

This section is empty.

Functions

This section is empty.

Types

type DeleteObjectInput

type DeleteObjectInput struct {

	// The path (including the file name) where the object is stored in the container.
	// Format: <folder name>/<folder name>/<file name>
	//
	// Path is a required field
	Path *string `location:"uri" locationName:"Path" min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/DeleteObjectRequest

func (DeleteObjectInput) GoString

func (s DeleteObjectInput) GoString() string

GoString returns the string representation

func (DeleteObjectInput) MarshalFields

func (s DeleteObjectInput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (DeleteObjectInput) String

func (s DeleteObjectInput) String() string

String returns the string representation

func (*DeleteObjectInput) Validate

func (s *DeleteObjectInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteObjectOutput

type DeleteObjectOutput struct {
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/DeleteObjectResponse

func (DeleteObjectOutput) GoString

func (s DeleteObjectOutput) GoString() string

GoString returns the string representation

func (DeleteObjectOutput) MarshalFields

func (s DeleteObjectOutput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (DeleteObjectOutput) SDKResponseMetadata

func (s DeleteObjectOutput) SDKResponseMetadata() aws.Response

SDKResponseMetdata return sthe response metadata for the API.

func (DeleteObjectOutput) String

func (s DeleteObjectOutput) String() string

String returns the string representation

type DeleteObjectRequest

type DeleteObjectRequest struct {
	*aws.Request
	Input *DeleteObjectInput
	Copy  func(*DeleteObjectInput) DeleteObjectRequest
}

DeleteObjectRequest is a API request type for the DeleteObject API operation.

func (DeleteObjectRequest) Send

Send marshals and sends the DeleteObject API request.

type DescribeObjectInput

type DescribeObjectInput struct {

	// The path (including the file name) where the object is stored in the container.
	// Format: <folder name>/<folder name>/<file name>
	//
	// Path is a required field
	Path *string `location:"uri" locationName:"Path" min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/DescribeObjectRequest

func (DescribeObjectInput) GoString

func (s DescribeObjectInput) GoString() string

GoString returns the string representation

func (DescribeObjectInput) MarshalFields

func (s DescribeObjectInput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (DescribeObjectInput) String

func (s DescribeObjectInput) String() string

String returns the string representation

func (*DescribeObjectInput) Validate

func (s *DescribeObjectInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DescribeObjectOutput

type DescribeObjectOutput struct {

	// An optional CacheControl header that allows the caller to control the object's
	// cache behavior. Headers can be passed in as specified in the HTTP at https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9
	// (https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9).
	//
	// Headers with a custom user-defined value are also accepted.
	CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"`

	// The length of the object in bytes.
	ContentLength *int64 `location:"header" locationName:"Content-Length" type:"long"`

	// The content type of the object.
	ContentType *string `location:"header" locationName:"Content-Type" type:"string"`

	// The ETag that represents a unique instance of the object.
	ETag *string `location:"header" locationName:"ETag" min:"1" type:"string"`

	// The date and time that the object was last modified.
	LastModified *time.Time `location:"header" locationName:"Last-Modified" type:"timestamp" timestampFormat:"rfc822"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/DescribeObjectResponse

func (DescribeObjectOutput) GoString

func (s DescribeObjectOutput) GoString() string

GoString returns the string representation

func (DescribeObjectOutput) MarshalFields

func (s DescribeObjectOutput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (DescribeObjectOutput) SDKResponseMetadata

func (s DescribeObjectOutput) SDKResponseMetadata() aws.Response

SDKResponseMetdata return sthe response metadata for the API.

func (DescribeObjectOutput) String

func (s DescribeObjectOutput) String() string

String returns the string representation

type DescribeObjectRequest

type DescribeObjectRequest struct {
	*aws.Request
	Input *DescribeObjectInput
	Copy  func(*DescribeObjectInput) DescribeObjectRequest
}

DescribeObjectRequest is a API request type for the DescribeObject API operation.

func (DescribeObjectRequest) Send

Send marshals and sends the DescribeObject API request.

type GetObjectInput

type GetObjectInput struct {

	// The path (including the file name) where the object is stored in the container.
	// Format: <folder name>/<folder name>/<file name>
	//
	// For example, to upload the file mlaw.avi to the folder path premium\canada
	// in the container movies, enter the path premium/canada/mlaw.avi.
	//
	// Do not include the container name in this path.
	//
	// If the path includes any folders that don't exist yet, the service creates
	// them. For example, suppose you have an existing premium/usa subfolder. If
	// you specify premium/canada, the service creates a canada subfolder in the
	// premium folder. You then have two subfolders, usa and canada, in the premium
	// folder.
	//
	// There is no correlation between the path to the source and the path (folders)
	// in the container in AWS Elemental MediaStore.
	//
	// For more information about folders and how they exist in a container, see
	// the AWS Elemental MediaStore User Guide (http://docs.aws.amazon.com/mediastore/latest/ug/).
	//
	// The file name is the name that is assigned to the file that you upload. The
	// file can have the same name inside and outside of AWS Elemental MediaStore,
	// or it can have the same name. The file name can include or omit an extension.
	//
	// Path is a required field
	Path *string `location:"uri" locationName:"Path" min:"1" type:"string" required:"true"`

	// The range bytes of an object to retrieve. For more information about the
	// Range header, go to http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35
	// (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35).
	Range *string `location:"header" locationName:"Range" type:"string"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/GetObjectRequest

func (GetObjectInput) GoString

func (s GetObjectInput) GoString() string

GoString returns the string representation

func (GetObjectInput) MarshalFields

func (s GetObjectInput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (GetObjectInput) String

func (s GetObjectInput) String() string

String returns the string representation

func (*GetObjectInput) Validate

func (s *GetObjectInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetObjectOutput

type GetObjectOutput struct {

	// The bytes of the object.
	Body io.ReadCloser `type:"blob"`

	// An optional CacheControl header that allows the caller to control the object's
	// cache behavior. Headers can be passed in as specified in the HTTP spec at
	// https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9 (https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9).
	//
	// Headers with a custom user-defined value are also accepted.
	CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"`

	// The length of the object in bytes.
	ContentLength *int64 `location:"header" locationName:"Content-Length" type:"long"`

	// The range of bytes to retrieve.
	ContentRange *string `location:"header" locationName:"Content-Range" type:"string"`

	// The content type of the object.
	ContentType *string `location:"header" locationName:"Content-Type" type:"string"`

	// The ETag that represents a unique instance of the object.
	ETag *string `location:"header" locationName:"ETag" min:"1" type:"string"`

	// The date and time that the object was last modified.
	LastModified *time.Time `location:"header" locationName:"Last-Modified" type:"timestamp" timestampFormat:"rfc822"`

	// The HTML status code of the request. Status codes ranging from 200 to 299
	// indicate success. All other status codes indicate the type of error that
	// occurred.
	//
	// StatusCode is a required field
	StatusCode *int64 `location:"statusCode" type:"integer" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/GetObjectResponse

func (GetObjectOutput) GoString

func (s GetObjectOutput) GoString() string

GoString returns the string representation

func (GetObjectOutput) MarshalFields

func (s GetObjectOutput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (GetObjectOutput) SDKResponseMetadata

func (s GetObjectOutput) SDKResponseMetadata() aws.Response

SDKResponseMetdata return sthe response metadata for the API.

func (GetObjectOutput) String

func (s GetObjectOutput) String() string

String returns the string representation

type GetObjectRequest

type GetObjectRequest struct {
	*aws.Request
	Input *GetObjectInput
	Copy  func(*GetObjectInput) GetObjectRequest
}

GetObjectRequest is a API request type for the GetObject API operation.

func (GetObjectRequest) Send

func (r GetObjectRequest) Send() (*GetObjectOutput, error)

Send marshals and sends the GetObject API request.

type Item

type Item struct {

	// The length of the item in bytes.
	ContentLength *int64 `type:"long"`

	// The content type of the item.
	ContentType *string `type:"string"`

	// The ETag that represents a unique instance of the item.
	ETag *string `min:"1" type:"string"`

	// The date and time that the item was last modified.
	LastModified *time.Time `type:"timestamp" timestampFormat:"unix"`

	// The name of the item.
	Name *string `type:"string"`

	// The item type (folder or object).
	Type ItemType `type:"string" enum:"true"`
	// contains filtered or unexported fields
}

A metadata entry for a folder or object. Please also see https://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/Item

func (Item) GoString

func (s Item) GoString() string

GoString returns the string representation

func (Item) MarshalFields

func (s Item) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (Item) String

func (s Item) String() string

String returns the string representation

type ItemType

type ItemType string
const (
	ItemTypeObject ItemType = "OBJECT"
	ItemTypeFolder ItemType = "FOLDER"
)

Enum values for ItemType

func (ItemType) MarshalValue

func (enum ItemType) MarshalValue() (string, error)

func (ItemType) MarshalValueBuf

func (enum ItemType) MarshalValueBuf(b []byte) ([]byte, error)

type ListItemsInput

type ListItemsInput struct {

	// The maximum results to return. The service might return fewer results.
	MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"`

	// The NextToken received in the ListItemsResponse for the same container and
	// path. Tokens expire after 15 minutes.
	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`

	// The path in the container from which to retrieve items. Format: <folder name>/<folder
	// name>/<file name>
	Path *string `location:"querystring" locationName:"Path" type:"string"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/ListItemsRequest

func (ListItemsInput) GoString

func (s ListItemsInput) GoString() string

GoString returns the string representation

func (ListItemsInput) MarshalFields

func (s ListItemsInput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (ListItemsInput) String

func (s ListItemsInput) String() string

String returns the string representation

func (*ListItemsInput) Validate

func (s *ListItemsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListItemsOutput

type ListItemsOutput struct {

	// Metadata entries for the folders and objects at the requested path.
	Items []Item `type:"list"`

	// The NextToken used to request the next page of results using ListItems.
	NextToken *string `type:"string"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/ListItemsResponse

func (ListItemsOutput) GoString

func (s ListItemsOutput) GoString() string

GoString returns the string representation

func (ListItemsOutput) MarshalFields

func (s ListItemsOutput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (ListItemsOutput) SDKResponseMetadata

func (s ListItemsOutput) SDKResponseMetadata() aws.Response

SDKResponseMetdata return sthe response metadata for the API.

func (ListItemsOutput) String

func (s ListItemsOutput) String() string

String returns the string representation

type ListItemsRequest

type ListItemsRequest struct {
	*aws.Request
	Input *ListItemsInput
	Copy  func(*ListItemsInput) ListItemsRequest
}

ListItemsRequest is a API request type for the ListItems API operation.

func (ListItemsRequest) Send

func (r ListItemsRequest) Send() (*ListItemsOutput, error)

Send marshals and sends the ListItems API request.

type MediaStoreData

type MediaStoreData struct {
	*aws.Client
}

MediaStoreData provides the API operation methods for making requests to AWS Elemental MediaStore Data Plane. See this package's package overview docs for details on the service.

MediaStoreData methods are safe to use concurrently. It is not safe to modify mutate any of the struct's properties though.

func New

func New(config aws.Config) *MediaStoreData

New creates a new instance of the MediaStoreData client with a config.

Example:

// Create a MediaStoreData client from just a config.
svc := mediastoredata.New(myConfig)

func (*MediaStoreData) DeleteObjectRequest

func (c *MediaStoreData) DeleteObjectRequest(input *DeleteObjectInput) DeleteObjectRequest

DeleteObjectRequest returns a request value for making API operation for AWS Elemental MediaStore Data Plane.

Deletes an object at the specified path.

// Example sending a request using the DeleteObjectRequest method.
req := client.DeleteObjectRequest(params)
resp, err := req.Send()
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/DeleteObject

func (*MediaStoreData) DescribeObjectRequest

func (c *MediaStoreData) DescribeObjectRequest(input *DescribeObjectInput) DescribeObjectRequest

DescribeObjectRequest returns a request value for making API operation for AWS Elemental MediaStore Data Plane.

Gets the headers for an object at the specified path.

// Example sending a request using the DescribeObjectRequest method.
req := client.DescribeObjectRequest(params)
resp, err := req.Send()
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/DescribeObject

func (*MediaStoreData) GetObjectRequest

func (c *MediaStoreData) GetObjectRequest(input *GetObjectInput) GetObjectRequest

GetObjectRequest returns a request value for making API operation for AWS Elemental MediaStore Data Plane.

Downloads the object at the specified path.

// Example sending a request using the GetObjectRequest method.
req := client.GetObjectRequest(params)
resp, err := req.Send()
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/GetObject

func (*MediaStoreData) ListItemsRequest

func (c *MediaStoreData) ListItemsRequest(input *ListItemsInput) ListItemsRequest

ListItemsRequest returns a request value for making API operation for AWS Elemental MediaStore Data Plane.

Provides a list of metadata entries about folders and objects in the specified folder.

// Example sending a request using the ListItemsRequest method.
req := client.ListItemsRequest(params)
resp, err := req.Send()
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/ListItems

func (*MediaStoreData) PutObjectRequest

func (c *MediaStoreData) PutObjectRequest(input *PutObjectInput) PutObjectRequest

PutObjectRequest returns a request value for making API operation for AWS Elemental MediaStore Data Plane.

Uploads an object to the specified path. Object sizes are limited to 10 MB.

// Example sending a request using the PutObjectRequest method.
req := client.PutObjectRequest(params)
resp, err := req.Send()
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/PutObject

type PutObjectInput

type PutObjectInput struct {

	// The bytes to be stored.
	//
	// Body is a required field
	Body io.ReadSeeker `type:"blob" required:"true"`

	// An optional CacheControl header that allows the caller to control the object's
	// cache behavior. Headers can be passed in as specified in the HTTP at https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9
	// (https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9).
	//
	// Headers with a custom user-defined value are also accepted.
	CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"`

	// The content type of the object.
	ContentType *string `location:"header" locationName:"Content-Type" type:"string"`

	// The path (including the file name) where the object is stored in the container.
	// Format: <folder name>/<folder name>/<file name>
	//
	// For example, to upload the file mlaw.avi to the folder path premium\canada
	// in the container movies, enter the path premium/canada/mlaw.avi.
	//
	// Do not include the container name in this path.
	//
	// If the path includes any folders that don't exist yet, the service creates
	// them. For example, suppose you have an existing premium/usa subfolder. If
	// you specify premium/canada, the service creates a canada subfolder in the
	// premium folder. You then have two subfolders, usa and canada, in the premium
	// folder.
	//
	// There is no correlation between the path to the source and the path (folders)
	// in the container in AWS Elemental MediaStore.
	//
	// For more information about folders and how they exist in a container, see
	// the AWS Elemental MediaStore User Guide (http://docs.aws.amazon.com/mediastore/latest/ug/).
	//
	// The file name is the name that is assigned to the file that you upload. The
	// file can have the same name inside and outside of AWS Elemental MediaStore,
	// or it can have the same name. The file name can include or omit an extension.
	//
	// Path is a required field
	Path *string `location:"uri" locationName:"Path" min:"1" type:"string" required:"true"`

	// Indicates the storage class of a Put request. Defaults to high-performance
	// temporal storage class, and objects are persisted into durable storage shortly
	// after being received.
	StorageClass StorageClass `location:"header" locationName:"x-amz-storage-class" min:"1" type:"string" enum:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/PutObjectRequest

func (PutObjectInput) GoString

func (s PutObjectInput) GoString() string

GoString returns the string representation

func (PutObjectInput) MarshalFields

func (s PutObjectInput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (PutObjectInput) String

func (s PutObjectInput) String() string

String returns the string representation

func (*PutObjectInput) Validate

func (s *PutObjectInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type PutObjectOutput

type PutObjectOutput struct {

	// The SHA256 digest of the object that is persisted.
	ContentSHA256 *string `min:"64" type:"string"`

	// Unique identifier of the object in the container.
	ETag *string `min:"1" type:"string"`

	// The storage class where the object was persisted. Should be “Temporal”.
	StorageClass StorageClass `min:"1" type:"string" enum:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/PutObjectResponse

func (PutObjectOutput) GoString

func (s PutObjectOutput) GoString() string

GoString returns the string representation

func (PutObjectOutput) MarshalFields

func (s PutObjectOutput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (PutObjectOutput) SDKResponseMetadata

func (s PutObjectOutput) SDKResponseMetadata() aws.Response

SDKResponseMetdata return sthe response metadata for the API.

func (PutObjectOutput) String

func (s PutObjectOutput) String() string

String returns the string representation

type PutObjectRequest

type PutObjectRequest struct {
	*aws.Request
	Input *PutObjectInput
	Copy  func(*PutObjectInput) PutObjectRequest
}

PutObjectRequest is a API request type for the PutObject API operation.

func (PutObjectRequest) Send

func (r PutObjectRequest) Send() (*PutObjectOutput, error)

Send marshals and sends the PutObject API request.

type StorageClass

type StorageClass string
const (
	StorageClassTemporal StorageClass = "TEMPORAL"
)

Enum values for StorageClass

func (StorageClass) MarshalValue

func (enum StorageClass) MarshalValue() (string, error)

func (StorageClass) MarshalValueBuf

func (enum StorageClass) MarshalValueBuf(b []byte) ([]byte, error)

Directories

Path Synopsis
Package mediastoredataiface provides an interface to enable mocking the AWS Elemental MediaStore Data Plane service client for testing your code.
Package mediastoredataiface provides an interface to enable mocking the AWS Elemental MediaStore Data Plane service client for testing your code.

Jump to

Keyboard shortcuts

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