You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							37 lines
						
					
					
						
							1.0 KiB
						
					
					
				
			
		
		
		
			
			
			
		
		
	
	
							37 lines
						
					
					
						
							1.0 KiB
						
					
					
				
								from urllib.parse import urljoin
							 | 
						|
								
							 | 
						|
								BASE_URL = "https://api.todoist.com"
							 | 
						|
								AUTH_BASE_URL = "https://todoist.com"
							 | 
						|
								SYNC_VERSION = "v9"
							 | 
						|
								REST_VERSION = "v2"
							 | 
						|
								
							 | 
						|
								SYNC_API = urljoin(BASE_URL, f"/sync/{SYNC_VERSION}/")
							 | 
						|
								REST_API = urljoin(BASE_URL, f"/rest/{REST_VERSION}/")
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								TASKS_ENDPOINT = "tasks"
							 | 
						|
								PROJECTS_ENDPOINT = "projects"
							 | 
						|
								COLLABORATORS_ENDPOINT = "collaborators"
							 | 
						|
								SECTIONS_ENDPOINT = "sections"
							 | 
						|
								COMMENTS_ENDPOINT = "comments"
							 | 
						|
								LABELS_ENDPOINT = "labels"
							 | 
						|
								SHARED_LABELS_ENDPOINT = "labels/shared"
							 | 
						|
								SHARED_LABELS_RENAME_ENDPOINT = f"{SHARED_LABELS_ENDPOINT}/rename"
							 | 
						|
								SHARED_LABELS_REMOVE_ENDPOINT = f"{SHARED_LABELS_ENDPOINT}/remove"
							 | 
						|
								QUICK_ADD_ENDPOINT = "quick/add"
							 | 
						|
								
							 | 
						|
								AUTHORIZE_ENDPOINT = "oauth/authorize"
							 | 
						|
								TOKEN_ENDPOINT = "oauth/access_token"
							 | 
						|
								REVOKE_TOKEN_ENDPOINT = "access_tokens/revoke"
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								def get_rest_url(relative_path: str) -> str:
							 | 
						|
								    return urljoin(REST_API, relative_path)
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								def get_sync_url(relative_path: str) -> str:
							 | 
						|
								    return urljoin(SYNC_API, relative_path)
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								def get_auth_url(relative_path: str) -> str:
							 | 
						|
								    return urljoin(AUTH_BASE_URL, relative_path)
							 | 
						|
								
							 |