Skip to content

Commit

Permalink
chore: add preview-iam examples to python
Browse files Browse the repository at this point in the history
  • Loading branch information
tiwarishubham635 committed Dec 12, 2024
1 parent 0e3d03f commit bd215a2
Show file tree
Hide file tree
Showing 4 changed files with 353 additions and 1 deletion.
50 changes: 50 additions & 0 deletions examples/python/twilio/rest/preview_iam/v1/__init__.py
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 examples/python/twilio/rest/preview_iam/v1/authorize.py
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>"
171 changes: 171 additions & 0 deletions examples/python/twilio/rest/preview_iam/v1/token.py
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>"
2 changes: 1 addition & 1 deletion scripts/generate.sh
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ function generate() {
if [ "$1" != "twilio-java" ] && [ "$1" != "twilio-csharp" ] && [[ $api_spec == "examples/spec/twilio_iam_organizations.yaml" ]]; then
continue
fi
if [ "$1" != "twilio-node" ] && [ "$1" != "twilio-ruby" ] && [[ $api_spec == "examples/spec/twilio_iam_organizations_v1.yaml" ]]; then
if [ "$1" != "twilio-node" ] && [ "$1" != "twilio-ruby" ] && [ "$1" != "twilio-python" ] && [[ $api_spec == "examples/spec/twilio_iam_organizations_v1.yaml" ]]; then
continue
fi
echo "generatorName: $1
Expand Down

0 comments on commit bd215a2

Please sign in to comment.