# Basic usage (without an .env) ## Setup Here's a very basic example of setting up: ```python import trustcafeapiwrapper # Setup the API Client API = trustcafeapiwrapper.APIClient( client_id="YOUR_CLIENT_ID", client_secret="YOUR_CLIENT_SECRET", env="alpha" # alpha | production. debug=False ) ``` or with .env ```python import trustcafeapiwrapper, os from dotenv import load_dotenv load_dotenv() API = APIClient( client_id=os.getenv("client_id"), client_secret=os.getenv("client_secret"), env="alpha", # alpha | production. debug=False, ) ``` ## Use a wrapper Wrappers make it as simple as possible to perform an action. A wrapper will come with a job and a payload ready to be passed to the `wrapped` function. eg. Use the `create_post` wrapper ```python from trustcafeapiwrapper.wrappers.post.create_post import create_post API.wrapped(create_post( "This is a test post created via the create_post wrapper function.", )) ``` **_NOTE:_** There are not as many wrappers as jobs because fetching is simpler. More will be added though to make it consistent. ## Make a request via `job` Jobs make the requests to the API. They have the endpoint and path setup already, we just pass the payload. If you want to avoid making your own payload, use a `wrapper`. Use the job for getting public posts. Now you don't need to worry about which API ```python postlist = API.run_job('posts.getpublic') print(postlist) ''' { "Items": [ { ... ''' ``` **_NOTE:_** There are aren't the complete set yet created here. ## Custom Request There should hopefully be a `job` or a `wrapper` that exists for what you need but if not, then this is how you make a request using the core mechanism. Use the `make_request` function to make a request from the content API to get posts in the music branch. ```python postlist = API.make_request("GET", "content", f"post/ref-subwiki/music") print(postlist) ''' { "Items": [ { ... ''' ``` # Jobs ## block ## branch ### `get` ### `listbyname` ## change ## comment ### `create` ### `listbypostid` ## feed ## mute ## notifcation ### `listnotifications` ## post ## reaction ## trust ## userprofile ## vote # Wrappers ## post ### `create_post` ### `update_post` ## comment ### `create_comment` # Utils