-
Notifications
You must be signed in to change notification settings - Fork 17
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
chore: add preview-iam examples to python
- Loading branch information
1 parent
0e3d03f
commit bd215a2
Showing
4 changed files
with
353 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
r""" | ||
This code was generated by | ||
___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __ | ||
| | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/ | ||
| |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \ | ||
Organization Public API | ||
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) | ||
NOTE: This class is auto generated by OpenAPI Generator. | ||
https://openapi-generator.tech | ||
Do not edit the class manually. | ||
""" | ||
|
||
from typing import Optional | ||
from twilio.base.version import Version | ||
from twilio.base.domain import Domain | ||
from twilio.rest.preview_iam.v1.authorize import AuthorizeList | ||
from twilio.rest.preview_iam.v1.token import TokenList | ||
|
||
|
||
class V1(Version): | ||
def __init__(self, domain: Domain): | ||
""" | ||
Initialize the V1 version of PreviewIam | ||
:param domain: The Twilio.preview_iam domain | ||
""" | ||
super().__init__(domain, "v1") | ||
self._authorize: Optional[AuthorizeList] = None | ||
self._token: Optional[TokenList] = None | ||
|
||
@property | ||
def authorize(self) -> AuthorizeList: | ||
if self._authorize is None: | ||
self._authorize = AuthorizeList(self) | ||
return self._authorize | ||
|
||
@property | ||
def token(self) -> TokenList: | ||
if self._token is None: | ||
self._token = TokenList(self) | ||
return self._token | ||
|
||
def __repr__(self) -> str: | ||
""" | ||
Provide a friendly representation | ||
:returns: Machine friendly representation | ||
""" | ||
return "<Twilio.PreviewIam.V1>" |
131 changes: 131 additions & 0 deletions
131
examples/python/twilio/rest/preview_iam/v1/authorize.py
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,131 @@ | ||
r""" | ||
This code was generated by | ||
___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __ | ||
| | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/ | ||
| |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \ | ||
Organization Public API | ||
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) | ||
NOTE: This class is auto generated by OpenAPI Generator. | ||
https://openapi-generator.tech | ||
Do not edit the class manually. | ||
""" | ||
|
||
|
||
from typing import Any, Dict, Optional, Union | ||
from twilio.base import values | ||
|
||
from twilio.base.instance_resource import InstanceResource | ||
from twilio.base.list_resource import ListResource | ||
from twilio.base.version import Version | ||
|
||
|
||
class AuthorizeInstance(InstanceResource): | ||
|
||
""" | ||
:ivar redirect_to: The callback URL | ||
""" | ||
|
||
def __init__(self, version: Version, payload: Dict[str, Any]): | ||
super().__init__(version) | ||
|
||
self.redirect_to: Optional[str] = payload.get("redirect_to") | ||
|
||
def __repr__(self) -> str: | ||
""" | ||
Provide a friendly representation | ||
:returns: Machine friendly representation | ||
""" | ||
|
||
return "<Twilio.PreviewIam.V1.AuthorizeInstance>" | ||
|
||
|
||
class AuthorizeList(ListResource): | ||
def __init__(self, version: Version): | ||
""" | ||
Initialize the AuthorizeList | ||
:param version: Version that contains the resource | ||
""" | ||
super().__init__(version) | ||
|
||
self._uri = "/authorize" | ||
|
||
def fetch( | ||
self, | ||
response_type: Union[str, object] = values.unset, | ||
client_id: Union[str, object] = values.unset, | ||
redirect_uri: Union[str, object] = values.unset, | ||
scope: Union[str, object] = values.unset, | ||
state: Union[str, object] = values.unset, | ||
) -> AuthorizeInstance: | ||
""" | ||
Asynchronously fetch the AuthorizeInstance | ||
:param response_type: Response Type:param client_id: The Client Identifier:param redirect_uri: The url to which response will be redirected to:param scope: The scope of the access request:param state: An opaque value which can be used to maintain state between the request and callback | ||
:returns: The fetched AuthorizeInstance | ||
""" | ||
headers = values.of({"Content-Type": "application/x-www-form-urlencoded"}) | ||
|
||
headers["Accept"] = "application/json" | ||
|
||
params = values.of( | ||
{ | ||
"response_type": response_type, | ||
"client_id": client_id, | ||
"redirect_uri": redirect_uri, | ||
"scope": scope, | ||
"state": state, | ||
} | ||
) | ||
|
||
payload = self._version.fetch( | ||
method="GET", uri=self._uri, headers=headers, params=params | ||
) | ||
|
||
return AuthorizeInstance(self._version, payload) | ||
|
||
async def fetch_async( | ||
self, | ||
response_type: Union[str, object] = values.unset, | ||
client_id: Union[str, object] = values.unset, | ||
redirect_uri: Union[str, object] = values.unset, | ||
scope: Union[str, object] = values.unset, | ||
state: Union[str, object] = values.unset, | ||
) -> AuthorizeInstance: | ||
""" | ||
Asynchronously fetch the AuthorizeInstance | ||
:param response_type: Response Type:param client_id: The Client Identifier:param redirect_uri: The url to which response will be redirected to:param scope: The scope of the access request:param state: An opaque value which can be used to maintain state between the request and callback | ||
:returns: The fetched AuthorizeInstance | ||
""" | ||
headers = values.of({"Content-Type": "application/x-www-form-urlencoded"}) | ||
|
||
headers["Accept"] = "application/json" | ||
|
||
params = values.of( | ||
{ | ||
"response_type": response_type, | ||
"client_id": client_id, | ||
"redirect_uri": redirect_uri, | ||
"scope": scope, | ||
"state": state, | ||
} | ||
) | ||
|
||
payload = await self._version.fetch_async( | ||
method="GET", uri=self._uri, headers=headers, params=params | ||
) | ||
|
||
return AuthorizeInstance(self._version, payload) | ||
|
||
def __repr__(self) -> str: | ||
""" | ||
Provide a friendly representation | ||
:returns: Machine friendly representation | ||
""" | ||
return "<Twilio.PreviewIam.V1.AuthorizeList>" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,171 @@ | ||
r""" | ||
This code was generated by | ||
___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __ | ||
| | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/ | ||
| |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \ | ||
Organization Public API | ||
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) | ||
NOTE: This class is auto generated by OpenAPI Generator. | ||
https://openapi-generator.tech | ||
Do not edit the class manually. | ||
""" | ||
|
||
|
||
from typing import Any, Dict, Optional, Union | ||
from twilio.base import values | ||
|
||
from twilio.base.instance_resource import InstanceResource | ||
from twilio.base.list_resource import ListResource | ||
from twilio.base.version import Version | ||
|
||
|
||
class TokenInstance(InstanceResource): | ||
|
||
""" | ||
:ivar access_token: Token which carries the necessary information to access a Twilio resource directly. | ||
:ivar refresh_token: Token which carries the information necessary to get a new access token. | ||
:ivar id_token: Token which carries the information necessary of user profile. | ||
:ivar token_type: Token type | ||
:ivar expires_in: | ||
""" | ||
|
||
def __init__(self, version: Version, payload: Dict[str, Any]): | ||
super().__init__(version) | ||
|
||
self.access_token: Optional[str] = payload.get("access_token") | ||
self.refresh_token: Optional[str] = payload.get("refresh_token") | ||
self.id_token: Optional[str] = payload.get("id_token") | ||
self.token_type: Optional[str] = payload.get("token_type") | ||
self.expires_in: Optional[int] = payload.get("expires_in") | ||
|
||
def __repr__(self) -> str: | ||
""" | ||
Provide a friendly representation | ||
:returns: Machine friendly representation | ||
""" | ||
|
||
return "<Twilio.PreviewIam.V1.TokenInstance>" | ||
|
||
|
||
class TokenList(ListResource): | ||
def __init__(self, version: Version): | ||
""" | ||
Initialize the TokenList | ||
:param version: Version that contains the resource | ||
""" | ||
super().__init__(version) | ||
|
||
self._uri = "/token" | ||
|
||
def create( | ||
self, | ||
grant_type: str, | ||
client_id: str, | ||
client_secret: Union[str, object] = values.unset, | ||
code: Union[str, object] = values.unset, | ||
redirect_uri: Union[str, object] = values.unset, | ||
audience: Union[str, object] = values.unset, | ||
refresh_token: Union[str, object] = values.unset, | ||
scope: Union[str, object] = values.unset, | ||
) -> TokenInstance: | ||
""" | ||
Create the TokenInstance | ||
:param grant_type: Grant type is a credential representing resource owner's authorization which can be used by client to obtain access token. | ||
:param client_id: A 34 character string that uniquely identifies this OAuth App. | ||
:param client_secret: The credential for confidential OAuth App. | ||
:param code: JWT token related to the authorization code grant type. | ||
:param redirect_uri: The redirect uri | ||
:param audience: The targeted audience uri | ||
:param refresh_token: JWT token related to refresh access token. | ||
:param scope: The scope of token | ||
:returns: The created TokenInstance | ||
""" | ||
|
||
data = values.of( | ||
{ | ||
"grant_type": grant_type, | ||
"client_id": client_id, | ||
"client_secret": client_secret, | ||
"code": code, | ||
"redirect_uri": redirect_uri, | ||
"audience": audience, | ||
"refresh_token": refresh_token, | ||
"scope": scope, | ||
} | ||
) | ||
headers = values.of({"Content-Type": "application/x-www-form-urlencoded"}) | ||
|
||
headers["Content-Type"] = "application/x-www-form-urlencoded" | ||
|
||
headers["Accept"] = "application/json" | ||
|
||
payload = self._version.create( | ||
method="POST", uri=self._uri, data=data, headers=headers | ||
) | ||
|
||
return TokenInstance(self._version, payload) | ||
|
||
async def create_async( | ||
self, | ||
grant_type: str, | ||
client_id: str, | ||
client_secret: Union[str, object] = values.unset, | ||
code: Union[str, object] = values.unset, | ||
redirect_uri: Union[str, object] = values.unset, | ||
audience: Union[str, object] = values.unset, | ||
refresh_token: Union[str, object] = values.unset, | ||
scope: Union[str, object] = values.unset, | ||
) -> TokenInstance: | ||
""" | ||
Asynchronously create the TokenInstance | ||
:param grant_type: Grant type is a credential representing resource owner's authorization which can be used by client to obtain access token. | ||
:param client_id: A 34 character string that uniquely identifies this OAuth App. | ||
:param client_secret: The credential for confidential OAuth App. | ||
:param code: JWT token related to the authorization code grant type. | ||
:param redirect_uri: The redirect uri | ||
:param audience: The targeted audience uri | ||
:param refresh_token: JWT token related to refresh access token. | ||
:param scope: The scope of token | ||
:returns: The created TokenInstance | ||
""" | ||
|
||
data = values.of( | ||
{ | ||
"grant_type": grant_type, | ||
"client_id": client_id, | ||
"client_secret": client_secret, | ||
"code": code, | ||
"redirect_uri": redirect_uri, | ||
"audience": audience, | ||
"refresh_token": refresh_token, | ||
"scope": scope, | ||
} | ||
) | ||
headers = values.of({"Content-Type": "application/x-www-form-urlencoded"}) | ||
|
||
headers["Content-Type"] = "application/x-www-form-urlencoded" | ||
|
||
headers["Accept"] = "application/json" | ||
|
||
payload = await self._version.create_async( | ||
method="POST", uri=self._uri, data=data, headers=headers | ||
) | ||
|
||
return TokenInstance(self._version, payload) | ||
|
||
def __repr__(self) -> str: | ||
""" | ||
Provide a friendly representation | ||
:returns: Machine friendly representation | ||
""" | ||
return "<Twilio.PreviewIam.V1.TokenList>" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters