package urls import ( "fmt" "net/url" "path" ) func UrlInbox(name, domain string) (*url.URL, error) { u, err := url.Parse(path.Join("https://", domain, "actors", name, "inbox")) if err != nil { return nil, fmt.Errorf("could not build inbox url: %w", err) } return u, nil } func UrlOutbox(name, domain string) (*url.URL, error) { u, err := url.Parse(path.Join("https://", domain, "actors", name, "outbox")) if err != nil { return nil, fmt.Errorf("could not build outbox url: %w", err) } return u, nil } func UrlOutboxPage(name, domain string) (*url.URL, error) { u, err := UrlOutbox(name, domain) if err != nil { return nil, fmt.Errorf("could not build outbox page url: %w", err) } q := u.Query() q.Set("page", "true") u.RawQuery = q.Encode() return u, nil }