MCPcopy Create free account
hub / github.com/IfcOpenShell/IfcOpenShell / login

Method login

src/bsdd/bsdd.py:545–571  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

543 return self.access_token
544
545 def login(self):
546 with http.server.HTTPServer(("", 0), OAuthReceiver) as server:
547 state = str(uuid.uuid4())
548 query = urllib.parse.urlencode(
549 {
550 "client_id": self.client_id,
551 "response_type": "code",
552 # offline_access required to get a refresh_token
553 "scope": "https://buildingsmartservices.onmicrosoft.com/api/read offline_access",
554 "state": state,
555 "redirect_uri": f"http://localhost:{server.server_address[1]}",
556 }
557 )
558 webbrowser.open(f"{self.auth_endpoint}?{query}")
559 server.timeout = 75
560 server.state = state
561 server.handle_request()
562 if server.auth_code and server.auth_state == state:
563 self.set_tokens_from_response(
564 requests.post(
565 "https://buildingsmartservices.b2clogin.com/tfp/buildingsmartservices.onmicrosoft.com/b2c_1_signupsignin/oauth2/v2.0/token",
566 params={
567 "grant_type": "authorization_code",
568 "code": server.auth_code,
569 },
570 ).json()
571 )
572
573 def get_new_access_token(self):
574 self.set_tokens_from_response(

Callers 1

get_access_tokenMethod · 0.95

Calls 3

openMethod · 0.80
postMethod · 0.45

Tested by

no test coverage detected