2023-10-20 12:51:01 +00:00
< div >
2024-06-07 09:01:10 +00:00
< x - slot : title >
API Tokens | Coolify
2024-09-26 08:32:12 +00:00
</ x - slot >
< x - security . navbar />
< div class = " pb-4 " >
< h2 > API Tokens </ h2 >
@ if ( ! $instanceSettings -> is_api_enabled )
2024-09-26 08:45:18 +00:00
< strong > API is disabled . If you want to use the API , please enable it in the Coolify Instance Settings .</ strong >
2024-09-26 08:32:12 +00:00
@ else
< div > Tokens are created with the current team as scope . You will only have access to this team ' s resources .
</ div >
2024-07-02 10:15:58 +00:00
</ div >
2024-09-26 08:32:12 +00:00
< h3 > New Token </ h3 >
< form class = " flex flex-col gap-2 pt-4 " wire : submit = 'addNewToken' >
< div class = " flex items-end gap-2 " >
< x - forms . input required id = " description " label = " Description " />
< x - forms . button type = " submit " > Create New Token </ x - forms . button >
</ div >
< div class = " flex " >
Permissions
< x - helper class = " px-1 " helper = " These permissions will be granted to the token. " />< span class = " pr-1 " >:</ span >
< div class = " flex gap-1 font-bold dark:text-white " >
@ if ( $permissions )
2024-07-02 10:15:58 +00:00
@ foreach ( $permissions as $permission )
2024-09-26 08:32:12 +00:00
@ if ( $permission === '*' )
< div > All ( root / admin access ), be careful !</ div >
@ else
< div > {{ $permission }} </ div >
@ endif
2024-07-02 10:15:58 +00:00
@ endforeach
2024-09-26 08:32:12 +00:00
@ endif
</ div >
2024-07-02 10:15:58 +00:00
</ div >
2024-09-26 08:32:12 +00:00
< h4 > Token Permissions </ h4 >
< div class = " w-64 " >
< x - forms . checkbox label = " Read-only " wire : model . live = " readOnly " ></ x - forms . checkbox >
< x - forms . checkbox label = " View Sensitive Data " wire : model . live = " viewSensitiveData " ></ x - forms . checkbox >
</ div >
</ form >
@ if ( session () -> has ( 'token' ))
2024-07-02 10:15:58 +00:00
< div class = " py-4 font-bold dark:text-warning " > Please copy this token now . For your security , it won ' t be shown
again .
2023-10-20 12:51:01 +00:00
</ div >
2024-03-24 15:00:25 +00:00
< div class = " pb-4 font-bold dark:text-white " > {{ session ( 'token' ) }} </ div >
2024-09-26 08:32:12 +00:00
@ endif
< h3 class = " py-4 " > Issued Tokens </ h3 >
< div class = " grid gap-2 lg:grid-cols-1 " >
@ forelse ( $tokens as $token )
2024-07-02 10:15:58 +00:00
< div class = " flex flex-col gap-1 p-2 border dark:border-coolgray-200 hover:no-underline " >
< div > Description : {{ $token -> name }} </ div >
< div > Last used : {{ $token -> last_used_at ? $token -> last_used_at -> diffForHumans () : 'Never' }} </ div >
< div class = " flex gap-1 " >
@ if ( $token -> abilities )
2024-09-26 08:32:12 +00:00
Abilities :
@ foreach ( $token -> abilities as $ability )
< div class = " font-bold dark:text-white " > {{ $ability }} </ div >
@ endforeach
2024-07-02 10:15:58 +00:00
@ endif
2023-10-20 12:51:01 +00:00
</ div >
2024-07-02 10:15:58 +00:00
2024-09-26 08:32:12 +00:00
< x - modal - confirmation title = " Confirm API Token Revocation? " isErrorButton buttonTitle = " Revoke token " submitAction = " revoke( { { data_get( $token , 'id') }}) " : actions = " ['This API Token will be revoked and permanently deleted.', 'Any API call made with this token will fail.'] " confirmationText = " { { $token->name }} " confirmationLabel = " Please confirm the execution of the actions by entering the API Token Description below " shortConfirmationLabel = " API Token Description " : confirmWithPassword = " false " step2ButtonText = " Revoke API Token " />
2023-10-20 12:51:01 +00:00
</ div >
2024-09-26 08:32:12 +00:00
@ empty
2023-10-20 12:51:01 +00:00
< div >
< div > No API tokens found .</ div >
</ div >
2024-09-26 08:32:12 +00:00
@ endforelse
</ div >
@ endif
2023-10-20 12:51:01 +00:00
</ div >