func GetEntityId(rawUrl string) (string, error)
https://disneyplus.com/browse/entity-7df81cf5-6be5-4e05-9ff6-da33baf0b94d https://disneyplus.com/cs-cz/browse/entity-7df81cf5-6be5-4e05-9ff6-da33baf0b94d https://disneyplus.com/play/7df81cf5-6be5-4e05-9ff6-da33baf0b94d
type AuthenticateWithOtp struct { ActionGrant string }
type Error struct { Code string // 2026-04-05 Description string // 2026-04-05 }
func (e *Error) Error() string
type Login struct { Account struct { Profiles []Profile } }
type LoginWithActionGrant struct { Account struct { Profiles []Profile } }
type Page struct { Actions []struct { InternalTitle string // movie } Containers []struct { Seasons []struct { Visuals struct { Name string } Id string } } Visuals struct { Restriction struct { Message string } } }
func (p *Page) String() string
type Profile struct { Name string Id string }
func (p *Profile) String() string
type RequestOtp struct { Accepted bool }
func (r *RequestOtp) String() string
type Season struct { Items []struct { Actions []struct { InternalTitle string } } }
func (s Season) String() string
type Token struct { AccessTokenType string AccessToken string RefreshToken string }
func RegisterDevice() (*Token, error)
Response: Device
func (t *Token) AuthenticateWithOtp(email, passcode string) (*AuthenticateWithOtp, error)
request: Device
func (*Token) CachePath() string
func (t *Token) FetchLogin(email, password string) (*Login, error)
request: Device response: AccountWithoutActiveProfile
func (t *Token) FetchPage(entity string) (*Page, error)
request: Account
func (t *Token) FetchPlayReady(body []byte) ([]byte, error)
SL2000 max: 720p SL3000 max: 2160p request: Account
func (t *Token) FetchSeason(id string) (*Season, error)
request: Account
func (t *Token) FetchStream(mediaId string) (*url.URL, error)
request: Account
func (t *Token) FetchWidevine(body []byte) ([]byte, error)
L3 max: 720p request: Account
func (t *Token) LoginWithActionGrant(actionGrant string) (*LoginWithActionGrant, error)
request: Device response: AccountWithoutActiveProfile
func (t *Token) Refresh() error
expires: 4 hours request: Account
func (t *Token) RequestOtp(email string) (*RequestOtp, error)
request: Device
func (t *Token) String() string
func (t *Token) SwitchProfile(profileId string) error
THIS REQUEST SETS THE LOCATION BASED ON YOUR IP request: AccountWithoutActiveProfile response: Account