tdoauth(1) FreeBSD General Commands Manual tdoauth(1)

tdoauth
TDcal calendar program OAuth authorization setup

tdoauth [-vx] calendar service

tdoauth is used to request and store OAuth authorization credentials for services that require them, such as Google Calendar.

To use a calendar on a service that requires OAuth, several steps are necessary.

Usually, the developer of an application that supports OAuth would register the application with each service provider that requires the use of OAuth and obtain client credentials from each service provider for the application. The user would then run the application which sends the appropriate credentials back to the service provider which then prompts the user to authorize access by the application to the user's data.

Note: Since TDcal is an open-source application, it is unclear if service provider client credentials can be distributed by the developer as doing so would allow them to easily be copied and mis-used in other applications. Additionally, the developer of TDcal is not interested in creating and maintaining application client accounts with each online calendar provider that requires the use of OAuth. So, the pleasure of doing this is left to you, the user.

The steps are as follows. These need to be repeated for each service provider that requires OAuth that you wish to use.

First, you must register TDcal as a client application and obtain OAuth client credentials on your service provider's account. To register a client application, you will need to follow the instructions at your service provider. These often involve finding the developer console, creating a project for TDcal, registering it as an application that wishes to access private calendar data stored in your account and requesting client credentials for the application. You will need the following information:

Registration type:
external
Client type:
desktop
Redirect URI:
http://loopback:54448
Scope:
 
    google
https://www.googleapis.com/auth/calendar

If you register TDcal as an application for your own use, or for the use of yourself and a few others known to you, you do not need to publish your application registration for public use and you therefore do not need to go through the app verification process. This makes the setup process much simpler for you as an individual user. Had the TDcal developer done this, the publishing and verification steps would be required for each provider; something the TDcal developer does not wish to be burdened with.

On registering the application, you will receive a ‘client_id’ and ‘client_secret’ which you can configure in your TDcal configuration file, see td(5).

Next, configure the calendar as shown in the example in td(5).

Then run tdoauth. The arguments are the name of the calendar as configured and the name of the service. Currently supported services are:

google
Google Calendar

tdoauth opens the browser and initiates a connection to the service's authorization page. You will be prompted to log in and then to authorize TDcal to access your calendar. Once you have granted permission, the OAuth access tokens are returned and automatically saved in your calendar's configuration.

You can then, finally, use the other TDcal tools to access your calendar on the OAuth service.

Note: If you delete the calendar from your TDcal configuration file, the access tokens will be removed on the next sync. You will then need to run tdoauth again if you decide to re-add the calendar later.

tdoauth supports the following command-line options:

Verbose mode. Displays a trace of what is going on, intended for debugging.
Displays a short explanation of command-line options.

The tdoauth utility exits 0 on success, and >0 if an error occurs.

See TDcal(7).

td(5), TDcal(7).

See TDcal(7).

See TDcal(7).
September 23, 2021 FreeBSD 13.1-RELEASE-p2