tikapi 3.2.0__tar.gz → 3.2.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tikapi
3
- Version: 3.2.0
3
+ Version: 3.2.2
4
4
  Summary: TikAPI | TikTok Unofficial API
5
5
  Home-page: https://www.tikapi.io
6
6
  Author: TikAPI
@@ -9,7 +9,7 @@ INSTALL_REQUIRES = [
9
9
 
10
10
  setup(
11
11
  name='tikapi',
12
- version='3.2.0',
12
+ version='3.2.2',
13
13
  description='TikAPI | TikTok Unofficial API',
14
14
  long_description_content_type="text/markdown",
15
15
  long_description=open("README.md", "r", encoding="utf-8").read(),
@@ -166,7 +166,7 @@ def get_one(*args):
166
166
 
167
167
  def Rests(options: dict):
168
168
 
169
- global_options = {"base":"https://api.tikapi.io","sandboxBase":"http://sandbox.tikapi.io","headers":{"User-Agent":"Rests Python (v1.0.6)"},"params":{"apiKey":{"name":"X-API-KEY","required":True,"location":"headers","validate":"^[a-zA-Z0-9]{10,}$","example":"DemoAPIKeyTokenSeHYGXDfd4SFD320Sc39Asd0Sc39Asd4s","help":"The TikAPI API Key is required for all requests","$initsOnly":True}},"values":{},"on_error":None,"on_success":None,"on_request":None,"proxies":None,"__$root__":"API","$other":{"openapi":{"packageName":"tikapi","fields":{"security":[{"apiKey":[]}],"responses":{"403":{"$ref":"./error_responses/403.yaml"}},"parameters":[]}}}}
169
+ global_options = {"base":"https://api.tikapi.io","sandboxBase":"http://sandbox.tikapi.io","headers":{"User-Agent":"Rests Python (v1.0.6)"},"params":{"apiKey":{"name":"X-API-KEY","required":True,"location":"headers","validate":"^[a-zA-Z0-9]{10,}$","example":"DemoAPIKeyTokenSeHYGXDfd4SFD320Sc39Asd0Sc39Asd4s","help":"The TikAPI API Key is required for all requests","$initsOnly":True}},"values":{},"on_error":None,"on_success":None,"on_request":None,"proxies":None,"__$root__":"API","$other":{"openapi":{"packageName":"tikapi","fields":{"security":[{"apiKey":[]}],"responses":{"502":{"$ref":"./error_responses/502.yaml"}},"parameters":[]}}}}
170
170
 
171
171
  merge_options(global_options, (options or {}), True)
172
172
 
@@ -464,6 +464,14 @@ def Rests(options: dict):
464
464
 
465
465
  return wrap({"path":"/public/check","help":"Get a user's profile information","comment":"Get profile information and statistics from a username.","params":{"username":{"help":"The TikTok user username","validate":"^([a-zA-Z0-9_.]+|https?://vm.tiktok.com/[a-zA-Z0-9]+/?)$","type":"string","example":"lilyachty"},"user_id":{"help":"Optionally you can get the profile information using the user_id parameter.","type":"string","validate":"^[0-9]+$"}},"$other":{"openapi":{"hideParams":["user_id","session_id"],"showExamplesInCode":["username"]}},"method":"GET"}, cls.__get_options__(), "Public.check")(username=username, user_id=user_id, country=country, session_id=session_id, **otherParams)
466
466
 
467
+ @classmethod
468
+ def checkV3(cls, username: str = None, user_id: str = None, secUid: str = None, country: str = None, session_id: int = None, **otherParams) -> APIResponse:
469
+ '''
470
+ Get a user's profile information (alternative endpoint)
471
+ '''
472
+
473
+ return wrap({"path":"/public/check/v3","help":"Get a user's profile information (alternative endpoint)","comment":"Get profile information and statistics from a username. This endpoint consumes significantly more bandwidth than the other.","params":{"username":{"help":"The TikTok user username","validate":"^([a-zA-Z0-9_.]+|https?://vm.tiktok.com/[a-zA-Z0-9]+/?)$","type":"string","example":"lilyachty"},"user_id":{"help":"Optionally you can get the profile information using the user_id parameter.","type":"string","validate":"^[0-9]+$"},"secUid":{"validate":"^(.*?){30,}$","help":"Optionally you can get the profile information using the secUid parameter.","type":"string","example":"MS4wLjABAAAAsHntXC3s0AvxcecggxsoVa4eAiT8OVafVZ4OQXxy-9htpnUi0sOYSr0kGGD1Loud"}},"$other":{"openapi":{"hide":True,"hideParams":["session_id"]}},"method":"GET"}, cls.__get_options__(), "Public.checkV3")(username=username, user_id=user_id, secUid=secUid, country=country, session_id=session_id, **otherParams)
474
+
467
475
  @classmethod
468
476
  def posts(cls, secUid: str = None, count: int = Default(30), cursor: str = None, user_id: str = None, country: str = None, session_id: int = None, **otherParams) -> APIResponse:
469
477
  '''
@@ -478,7 +486,7 @@ def Rests(options: dict):
478
486
  Get a user's liked posts
479
487
  '''
480
488
  count = None if count is cls.likes.__defaults__[1] else count
481
- return wrap({"help":"Get a user's liked posts","path":"/public/likes","comment":"<a target=\"_blank\" href='https://helpdesk.tikapi.io/portal/en/kb/articles/how-to-download-tiktok-videos'>\nLearn more about downloading videos</a>\n\n","params":{"secUid":{"validate":"^(.*?){30,}$","help":"The TikTok user secUid. You can get this from the <a href='#tag/Public/operation/public.check'>Get profile information</a> endpoint using the username.","type":"string","example":"MS4wLjABAAAAsHntXC3s0AvxcecggxsoVa4eAiT8OVafVZ4OQXxy-9htpnUi0sOYSr0kGGD1Loud","required":True},"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"cursor":{"help":"The starting point of the items list. Returned in every response, should be included in the next request for iteration.<br><br> *(A simple iteration method is already implemented in the Javascript & Python libraries as seen in the request samples)*","type":"string","validate":"^[0-9]+$"}},"$other":{"openapi":{"hideParams":["session_id"]}},"method":"GET"}, cls.__get_options__(), "Public.likes")(secUid=secUid, count=count, cursor=cursor, country=country, session_id=session_id, **otherParams)
489
+ return wrap({"help":"Get a user's liked posts","path":"/public/likes","comment":"<a target=\"_blank\" href='https://helpdesk.tikapi.io/portal/en/kb/articles/how-to-download-tiktok-videos'>\nLearn more about downloading videos</a>\n\n","params":{"secUid":{"validate":"^(.*?){30,}$","help":"The TikTok user secUid. You can get this from the <a href='#tag/Public/operation/public.check'>Get profile information</a> endpoint using the username.","type":"string","example":"MS4wLjABAAAAKxXMUvcQ2Eo_vVxLn554nbLCdsrBKtxlu_FVhnG8TX92Zo2EezMi3FA0iQ7LJZzq","required":True},"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"cursor":{"help":"The starting point of the items list. Returned in every response, should be included in the next request for iteration.<br><br> *(A simple iteration method is already implemented in the Javascript & Python libraries as seen in the request samples)*","type":"string","validate":"^[0-9]+$"}},"$other":{"openapi":{"hideParams":["session_id"]}},"method":"GET"}, cls.__get_options__(), "Public.likes")(secUid=secUid, count=count, cursor=cursor, country=country, session_id=session_id, **otherParams)
482
490
 
483
491
  @classmethod
484
492
  def followersList(cls, secUid: str = None, count: int = Default(30), nextCursor: int = None, country: str = None, session_id: int = None, **otherParams) -> APIResponse:
@@ -486,7 +494,7 @@ def Rests(options: dict):
486
494
  Get a user's followers list
487
495
  '''
488
496
  count = None if count is cls.followersList.__defaults__[1] else count
489
- return wrap({"help":"Get a user's followers list","comment":"Get followers list of any public profile.","path":"/public/followers","params":{"secUid":{"validate":"^(.*?){30,}$","help":"The TikTok user secUid. You can get this from the <a href='#tag/Public/operation/public.check'>Get profile information</a> endpoint using the username.","type":"string","example":"MS4wLjABAAAAsHntXC3s0AvxcecggxsoVa4eAiT8OVafVZ4OQXxy-9htpnUi0sOYSr0kGGD1Loud","required":True},"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"nextCursor":{"type":"number","help":"A iteration parameter returned in each response, should be included in the next requests to get the next items."}},"$other":{"openapi":{"hideParams":["session_id"]}},"method":"GET"}, cls.__get_options__(), "Public.followersList")(secUid=secUid, count=count, nextCursor=nextCursor, country=country, session_id=session_id, **otherParams)
497
+ return wrap({"help":"Get a user's followers list","comment":"Get followers list of any public profile.","path":"/public/followers","params":{"secUid":{"validate":"^(.*?){30,}$","help":"The TikTok user secUid. You can get this from the <a href='#tag/Public/operation/public.check'>Get profile information</a> endpoint using the username.","type":"string","example":"MS4wLjABAAAAKxXMUvcQ2Eo_vVxLn554nbLCdsrBKtxlu_FVhnG8TX92Zo2EezMi3FA0iQ7LJZzq","required":True},"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"nextCursor":{"type":"number","help":"A iteration parameter returned in each response, should be included in the next requests to get the next items."}},"$other":{"openapi":{"hideParams":["session_id"]}},"method":"GET"}, cls.__get_options__(), "Public.followersList")(secUid=secUid, count=count, nextCursor=nextCursor, country=country, session_id=session_id, **otherParams)
490
498
 
491
499
  @classmethod
492
500
  def followingList(cls, secUid: str = None, count: int = Default(30), nextCursor: int = None, country: str = None, session_id: int = None, **otherParams) -> APIResponse:
@@ -494,7 +502,7 @@ def Rests(options: dict):
494
502
  Get a user's following list
495
503
  '''
496
504
  count = None if count is cls.followingList.__defaults__[1] else count
497
- return wrap({"help":"Get a user's following list","comment":"Get following list of any public profile.","path":"/public/following","params":{"secUid":{"validate":"^(.*?){30,}$","help":"The TikTok user secUid. You can get this from the <a href='#tag/Public/operation/public.check'>Get profile information</a> endpoint using the username.","type":"string","example":"MS4wLjABAAAAsHntXC3s0AvxcecggxsoVa4eAiT8OVafVZ4OQXxy-9htpnUi0sOYSr0kGGD1Loud","required":True},"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"nextCursor":{"type":"number","help":"A iteration parameter returned in each response, should be included in the next requests to get the next items."}},"$other":{"openapi":{"hideParams":["session_id"]}},"method":"GET"}, cls.__get_options__(), "Public.followingList")(secUid=secUid, count=count, nextCursor=nextCursor, country=country, session_id=session_id, **otherParams)
505
+ return wrap({"help":"Get a user's following list","comment":"Get following list of any public profile.","path":"/public/following","params":{"secUid":{"validate":"^(.*?){30,}$","help":"The TikTok user secUid. You can get this from the <a href='#tag/Public/operation/public.check'>Get profile information</a> endpoint using the username.","type":"string","example":"MS4wLjABAAAAKxXMUvcQ2Eo_vVxLn554nbLCdsrBKtxlu_FVhnG8TX92Zo2EezMi3FA0iQ7LJZzq","required":True},"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"nextCursor":{"type":"number","help":"A iteration parameter returned in each response, should be included in the next requests to get the next items."}},"$other":{"openapi":{"hideParams":["session_id"]}},"method":"GET"}, cls.__get_options__(), "Public.followingList")(secUid=secUid, count=count, nextCursor=nextCursor, country=country, session_id=session_id, **otherParams)
498
506
 
499
507
  @classmethod
500
508
  def explore(cls, count: int = Default(30), country: str = None, session_id: int = None, **otherParams) -> APIResponse:
@@ -542,7 +550,7 @@ def Rests(options: dict):
542
550
  Get a user's playlists
543
551
  '''
544
552
  count = None if count is cls.playlists.__defaults__[1] else count
545
- return wrap({"path":"/public/playlists","help":"Get a user's playlists","params":{"secUid":{"validate":"^(.*?){30,}$","help":"The TikTok user secUid. You can get this from the <a href='#tag/Public/operation/public.check'>Get profile information</a> endpoint using the username.","type":"string","example":"MS4wLjABAAAAsHntXC3s0AvxcecggxsoVa4eAiT8OVafVZ4OQXxy-9htpnUi0sOYSr0kGGD1Loud","required":True},"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"cursor":{"help":"The starting point of the items list. Returned in every response, should be included in the next request for iteration.<br><br> *(A simple iteration method is already implemented in the Javascript & Python libraries as seen in the request samples)*","type":"string","validate":"^[0-9]+$"}},"$other":{"openapi":{"hideParams":["session_id"],"fields":{"x-new":True}}},"method":"GET"}, cls.__get_options__(), "Public.playlists")(secUid=secUid, count=count, cursor=cursor, country=country, session_id=session_id, **otherParams)
553
+ return wrap({"path":"/public/playlists","help":"Get a user's playlists","params":{"secUid":{"validate":"^(.*?){30,}$","help":"The TikTok user secUid. You can get this from the <a href='#tag/Public/operation/public.check'>Get profile information</a> endpoint using the username.","type":"string","example":"MS4wLjABAAAABKjQkOz_IIzXXzEAl_9LGsWhvK-gBnlczwRPXK8EmxAp6K3X0qiaP5_OEqmm0XwG","required":True},"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"cursor":{"help":"The starting point of the items list. Returned in every response, should be included in the next request for iteration.<br><br> *(A simple iteration method is already implemented in the Javascript & Python libraries as seen in the request samples)*","type":"string","validate":"^[0-9]+$"}},"$other":{"openapi":{"hideParams":["session_id"],"fields":{"x-new":True}}},"method":"GET"}, cls.__get_options__(), "Public.playlists")(secUid=secUid, count=count, cursor=cursor, country=country, session_id=session_id, **otherParams)
546
554
 
547
555
  @classmethod
548
556
  def playlistItems(cls, playlist_id = None, count: int = Default(30), cursor: str = None, country: str = None, session_id: int = None, **otherParams) -> APIResponse:
@@ -550,7 +558,7 @@ def Rests(options: dict):
550
558
  Get a playlist items
551
559
  '''
552
560
  count = None if count is cls.playlistItems.__defaults__[1] else count
553
- return wrap({"path":"/public/playlist/items","help":"Get a playlist items","params":{"playlist_id":{"validate":"^[0-9]+$","required":True,"example":"6948562344666532614","help":"The playlist ID."},"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"cursor":{"help":"The starting point of the items list. Returned in every response, should be included in the next request for iteration.<br><br> *(A simple iteration method is already implemented in the Javascript & Python libraries as seen in the request samples)*","type":"string","validate":"^[0-9]+$"}},"$other":{"openapi":{"hideParams":["session_id"],"fields":{"x-new":True}}},"method":"GET"}, cls.__get_options__(), "Public.playlistItems")(playlist_id=playlist_id, count=count, cursor=cursor, country=country, session_id=session_id, **otherParams)
561
+ return wrap({"path":"/public/playlist/items","help":"Get a playlist items","params":{"playlist_id":{"validate":"^[0-9]+$","required":True,"example":"7596415294902389534","help":"The playlist ID."},"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"cursor":{"help":"The starting point of the items list. Returned in every response, should be included in the next request for iteration.<br><br> *(A simple iteration method is already implemented in the Javascript & Python libraries as seen in the request samples)*","type":"string","validate":"^[0-9]+$"}},"$other":{"openapi":{"hideParams":["session_id"],"fields":{"x-new":True}}},"method":"GET"}, cls.__get_options__(), "Public.playlistItems")(playlist_id=playlist_id, count=count, cursor=cursor, country=country, session_id=session_id, **otherParams)
554
562
 
555
563
  @classmethod
556
564
  def exploreCategory(cls, category_id = None, count: int = Default(30), country: str = None, session_id: int = None, **otherParams) -> APIResponse:
@@ -598,23 +606,15 @@ def Rests(options: dict):
598
606
  Get music information
599
607
  '''
600
608
 
601
- return wrap({"help":"Get music information","path":"/public/music/info","params":{"id":{"validate":"^([0-9]+|https?://vm.tiktok.com/[a-zA-Z0-9]+/?)$","type":"string","help":"The music ID. Can also be a short TikTok link (e.g. vm.tiktok.com/UwU)","required":True,"example":"28459463"}},"$other":{"openapi":{"hideParams":["session_id"]}},"method":"GET"}, cls.__get_options__(), "Public.musicInfo")(id=id, country=country, session_id=session_id, **otherParams)
609
+ return wrap({"help":"Get music information","path":"/public/music/info","params":{"id":{"validate":"^([0-9]+|https?://vm.tiktok.com/[a-zA-Z0-9]+/?)$","type":"string","help":"The music ID. Can also be a short TikTok link (e.g. vm.tiktok.com/UwU)","required":True,"example":"7289302423758228270"}},"$other":{"openapi":{"hideParams":["session_id"]}},"method":"GET"}, cls.__get_options__(), "Public.musicInfo")(id=id, country=country, session_id=session_id, **otherParams)
602
610
 
603
611
  @classmethod
604
- def discover(cls, category: str = None, count: int = Default(30), offset: int = None, country: str = None, session_id: int = None, **otherParams) -> APIResponse:
612
+ def discover(cls, keyword: str = None, count: int = Default(30), nextCursor: str = None, country: str = None, session_id: int = None, **otherParams) -> APIResponse:
605
613
  '''
606
- Discover users, music, hashtags
614
+ Discover trending videos
607
615
  '''
608
616
  count = None if count is cls.discover.__defaults__[1] else count
609
- return wrap({"help":"Discover users, music, hashtags","comment":"Get popular users, music or hashtag. You can also include *Account Key* to show personalized results for the user.","path":"/public/discover/{category}","params":{"category":{"help":"The discover category","example":"users","in":["users","music","hashtag"],"location":"path","type":"string","required":True},"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"offset":{"help":"The starting offset of items list. Returned in every response, should be included in the next request for iteration.<br><br> *(A simple iteration method is already implemented in the Javascript & Python libraries as seen in the request samples)*","type":"number","validate":"^[0-9]+$"}},"$other":{"openapi":{"hideParams":["session_id"]}},"method":"GET"}, cls.__get_options__(), "Public.discover")(category=category, count=count, offset=offset, country=country, session_id=session_id, **otherParams)
610
-
611
- @classmethod
612
- def discoverKeyword(cls, keyword: str = None, country: str = None, session_id: int = None, **otherParams) -> APIResponse:
613
- '''
614
- Discover by keyword
615
- '''
616
-
617
- return wrap({"help":"Discover by keyword","comment":"Get popular posts, users, music or hashtags from a keyword. <br><br>Limited to only a few items. If you want more, try using the <a href='#tag/Public/operation/public.search'>Search</a> endpoint instead.","path":"/public/discover/keyword","params":{"keyword":{"required":True,"example":"lilyachty","type":"string"}},"$other":{"openapi":{"hideParams":["session_id"]}},"method":"GET"}, cls.__get_options__(), "Public.discoverKeyword")(keyword=keyword, country=country, session_id=session_id, **otherParams)
617
+ return wrap({"help":"Discover trending videos","comment":"Get popular trending videos related to a keyword. It is not the same as searching; for searching use the <a href='#tag/Public/operation/public.search'>Search</a> endpoint instead","path":"/public/discover/v3","params":{"keyword":{"required":True,"example":"lilyachty","type":"string"},"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"nextCursor":{"type":"string","help":"A iteration parameter returned in each response, should be included in the next requests to get the next items."}},"$other":{"openapi":{"hideParams":["session_id"]}},"method":"GET"}, cls.__get_options__(), "Public.discover")(keyword=keyword, count=count, nextCursor=nextCursor, country=country, session_id=session_id, **otherParams)
618
618
 
619
619
  @classmethod
620
620
  def search(cls, category: str = None, query: str = None, session_id: int = None, nextCursor: str = None, country: str = None, **otherParams) -> APIResponse:
@@ -730,7 +730,7 @@ def Rests(options: dict):
730
730
  Get liked posts
731
731
  '''
732
732
  count = None if count is cls.likes.__defaults__[0] else count
733
- return wrap({"help":"Get liked posts","comment":"Get current user liked posts, or someone elses by providing the `secUid` parameter.","path":"/user/likes","params":{"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"secUid":{"validate":"^(.*?){30,}$","help":"The TikTok user secUid. You can get this from the <a href='#tag/Public/operation/public.check'>Get profile information</a> endpoint using the username.","type":"string","example":"MS4wLjABAAAAsHntXC3s0AvxcecggxsoVa4eAiT8OVafVZ4OQXxy-9htpnUi0sOYSr0kGGD1Loud"},"cursor":{"help":"The starting point of the items list. Returned in every response, should be included in the next request for iteration.<br><br> *(A simple iteration method is already implemented in the Javascript & Python libraries as seen in the request samples)*","type":"string","validate":"^[0-9]+$"}},"$other":{"openapi":{"fields":{"security":[{"apiKey":[],"accountKey":["explore"]}]}}},"method":"GET"}, cls.__get_options__(), "UserPosts.likes")(count=count, secUid=secUid, cursor=cursor, **otherParams)
733
+ return wrap({"help":"Get liked posts","comment":"Get current user liked posts, or someone elses by providing the `secUid` parameter.","path":"/user/likes","params":{"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"secUid":{"validate":"^(.*?){30,}$","help":"The TikTok user secUid. You can get this from the <a href='#tag/Public/operation/public.check'>Get profile information</a> endpoint using the username.","type":"string","example":"MS4wLjABAAAAKxXMUvcQ2Eo_vVxLn554nbLCdsrBKtxlu_FVhnG8TX92Zo2EezMi3FA0iQ7LJZzq"},"cursor":{"help":"The starting point of the items list. Returned in every response, should be included in the next request for iteration.<br><br> *(A simple iteration method is already implemented in the Javascript & Python libraries as seen in the request samples)*","type":"string","validate":"^[0-9]+$"}},"$other":{"openapi":{"fields":{"security":[{"apiKey":[],"accountKey":["explore"]}]}}},"method":"GET"}, cls.__get_options__(), "UserPosts.likes")(count=count, secUid=secUid, cursor=cursor, **otherParams)
734
734
 
735
735
  @classmethod
736
736
  def followingPosts(cls, count: int = Default(30), cursor: str = None, **otherParams) -> APIResponse:
@@ -762,7 +762,7 @@ def Rests(options: dict):
762
762
  Get user playlists
763
763
  '''
764
764
  count = None if count is cls.playlists.__defaults__[1] else count
765
- return wrap({"path":"/user/playlists","help":"Get user playlists","params":{"secUid":{"validate":"^(.*?){30,}$","help":"The TikTok user secUid. You can get this from the <a href='#tag/Public/operation/public.check'>Get profile information</a> endpoint using the username.","type":"string","example":"MS4wLjABAAAAsHntXC3s0AvxcecggxsoVa4eAiT8OVafVZ4OQXxy-9htpnUi0sOYSr0kGGD1Loud","required":False},"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"cursor":{"help":"The starting point of the items list. Returned in every response, should be included in the next request for iteration.<br><br> *(A simple iteration method is already implemented in the Javascript & Python libraries as seen in the request samples)*","type":"string","validate":"^[0-9]+$"}},"$other":{"openapi":{"fields":{"x-new":True,"security":[{"apiKey":[],"accountKey":["view_collections"]}]}}},"method":"GET"}, cls.__get_options__(), "UserPosts.playlists")(secUid=secUid, count=count, cursor=cursor, **otherParams)
765
+ return wrap({"path":"/user/playlists","help":"Get user playlists","params":{"secUid":{"validate":"^(.*?){30,}$","help":"The TikTok user secUid. You can get this from the <a href='#tag/Public/operation/public.check'>Get profile information</a> endpoint using the username.","type":"string","example":"MS4wLjABAAAABKjQkOz_IIzXXzEAl_9LGsWhvK-gBnlczwRPXK8EmxAp6K3X0qiaP5_OEqmm0XwG","required":False},"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"cursor":{"help":"The starting point of the items list. Returned in every response, should be included in the next request for iteration.<br><br> *(A simple iteration method is already implemented in the Javascript & Python libraries as seen in the request samples)*","type":"string","validate":"^[0-9]+$"}},"$other":{"openapi":{"fields":{"x-new":True,"security":[{"apiKey":[],"accountKey":["view_collections"]}]}}},"method":"GET"}, cls.__get_options__(), "UserPosts.playlists")(secUid=secUid, count=count, cursor=cursor, **otherParams)
766
766
 
767
767
  @classmethod
768
768
  def playlistItems(cls, playlist_id = None, count: int = Default(30), cursor: str = None, **otherParams) -> APIResponse:
@@ -770,7 +770,7 @@ def Rests(options: dict):
770
770
  Get a playlist items
771
771
  '''
772
772
  count = None if count is cls.playlistItems.__defaults__[1] else count
773
- return wrap({"path":"/user/playlist/items","help":"Get a playlist items","params":{"playlist_id":{"validate":"^[0-9]+$","required":True,"example":"6948562344666532614","help":"The playlist ID."},"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"cursor":{"help":"The starting point of the items list. Returned in every response, should be included in the next request for iteration.<br><br> *(A simple iteration method is already implemented in the Javascript & Python libraries as seen in the request samples)*","type":"string","validate":"^[0-9]+$"}},"$other":{"openapi":{"fields":{"x-new":True,"security":[{"apiKey":[],"accountKey":["view_collections"]}]}}},"method":"GET"}, cls.__get_options__(), "UserPosts.playlistItems")(playlist_id=playlist_id, count=count, cursor=cursor, **otherParams)
773
+ return wrap({"path":"/user/playlist/items","help":"Get a playlist items","params":{"playlist_id":{"validate":"^[0-9]+$","required":True,"example":"7596415294902389534","help":"The playlist ID."},"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"cursor":{"help":"The starting point of the items list. Returned in every response, should be included in the next request for iteration.<br><br> *(A simple iteration method is already implemented in the Javascript & Python libraries as seen in the request samples)*","type":"string","validate":"^[0-9]+$"}},"$other":{"openapi":{"fields":{"x-new":True,"security":[{"apiKey":[],"accountKey":["view_collections"]}]}}},"method":"GET"}, cls.__get_options__(), "UserPosts.playlistItems")(playlist_id=playlist_id, count=count, cursor=cursor, **otherParams)
774
774
 
775
775
  @classmethod
776
776
  def explore(cls, count: int = Default(30), **otherParams) -> APIResponse:
@@ -1086,7 +1086,7 @@ def Rests(options: dict):
1086
1086
  Get following list
1087
1087
  '''
1088
1088
  count = None if count is cls.following.__defaults__[1] else count
1089
- return wrap({"help":"Get following list","comment":"Get current user following list (or a friends by specifying the secUid).","path":"/user/following","params":{"secUid":{"validate":"^(.*?){30,}$","help":"The TikTok user secUid. You can get this from the <a href='#tag/Public/operation/public.check'>Get profile information</a> endpoint using the username.","type":"string","example":"MS4wLjABAAAAsHntXC3s0AvxcecggxsoVa4eAiT8OVafVZ4OQXxy-9htpnUi0sOYSr0kGGD1Loud"},"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"nextCursor":{"type":"number","help":"A iteration parameter returned in each response, should be included in the next requests to get the next items."}},"$other":{"openapi":{"fields":{"tags":["Followers"],"security":[{"apiKey":[],"accountKey":["view_followers"]}]}}},"method":"GET"}, cls.__get_options__(), "User.following")(secUid=secUid, count=count, nextCursor=nextCursor, **otherParams)
1089
+ return wrap({"help":"Get following list","comment":"Get current user following list (or a friends by specifying the secUid).","path":"/user/following","params":{"secUid":{"validate":"^(.*?){30,}$","help":"The TikTok user secUid. You can get this from the <a href='#tag/Public/operation/public.check'>Get profile information</a> endpoint using the username.","type":"string","example":"MS4wLjABAAAAKxXMUvcQ2Eo_vVxLn554nbLCdsrBKtxlu_FVhnG8TX92Zo2EezMi3FA0iQ7LJZzq"},"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"nextCursor":{"type":"number","help":"A iteration parameter returned in each response, should be included in the next requests to get the next items."}},"$other":{"openapi":{"fields":{"tags":["Followers"],"security":[{"apiKey":[],"accountKey":["view_followers"]}]}}},"method":"GET"}, cls.__get_options__(), "User.following")(secUid=secUid, count=count, nextCursor=nextCursor, **otherParams)
1090
1090
 
1091
1091
  @classmethod
1092
1092
  def followers(cls, secUid: str = None, count: int = Default(30), nextCursor: int = None, **otherParams) -> APIResponse:
@@ -1094,7 +1094,7 @@ def Rests(options: dict):
1094
1094
  Get followers list
1095
1095
  '''
1096
1096
  count = None if count is cls.followers.__defaults__[1] else count
1097
- return wrap({"help":"Get followers list","comment":"Get current user followers list (or a friends by specifying the secUid).","path":"/user/followers","params":{"secUid":{"validate":"^(.*?){30,}$","help":"The TikTok user secUid. You can get this from the <a href='#tag/Public/operation/public.check'>Get profile information</a> endpoint using the username.","type":"string","example":"MS4wLjABAAAAsHntXC3s0AvxcecggxsoVa4eAiT8OVafVZ4OQXxy-9htpnUi0sOYSr0kGGD1Loud"},"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"nextCursor":{"type":"number","help":"A iteration parameter returned in each response, should be included in the next requests to get the next items."}},"$other":{"openapi":{"fields":{"tags":["Followers"],"security":[{"apiKey":[],"accountKey":["view_followers"]}]}}},"method":"GET"}, cls.__get_options__(), "User.followers")(secUid=secUid, count=count, nextCursor=nextCursor, **otherParams)
1097
+ return wrap({"help":"Get followers list","comment":"Get current user followers list (or a friends by specifying the secUid).","path":"/user/followers","params":{"secUid":{"validate":"^(.*?){30,}$","help":"The TikTok user secUid. You can get this from the <a href='#tag/Public/operation/public.check'>Get profile information</a> endpoint using the username.","type":"string","example":"MS4wLjABAAAAKxXMUvcQ2Eo_vVxLn554nbLCdsrBKtxlu_FVhnG8TX92Zo2EezMi3FA0iQ7LJZzq"},"count":{"example":30,"default":30,"max":30,"type":"number","help":"Maximum amount of items for one request","validate":"^[0-9]{1,2}$"},"nextCursor":{"type":"number","help":"A iteration parameter returned in each response, should be included in the next requests to get the next items."}},"$other":{"openapi":{"fields":{"tags":["Followers"],"security":[{"apiKey":[],"accountKey":["view_followers"]}]}}},"method":"GET"}, cls.__get_options__(), "User.followers")(secUid=secUid, count=count, nextCursor=nextCursor, **otherParams)
1098
1098
 
1099
1099
  @classmethod
1100
1100
  def follow(cls, username: str = None, secUid: str = None, user_id: str = None, **otherParams) -> APIResponse:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tikapi
3
- Version: 3.2.0
3
+ Version: 3.2.2
4
4
  Summary: TikAPI | TikTok Unofficial API
5
5
  Home-page: https://www.tikapi.io
6
6
  Author: TikAPI
File without changes
File without changes
File without changes
File without changes