Cliquify
POST /oauth/revoke

Description

The /oauth/revoke endpoint is used to invalidate an access or refresh token immediately. This is typically done when a user logs out or you want to terminate a session early.

Header Parameters

{
  "Content-Type": "application/x-www-form-urlencoded"
}

Body Parameters

token string Required
The access or refresh token that needs to be validated. This endpoint checks if the token is active and returns associated metadata (user ID, scopes, expiration, etc.).

Example Requests

curl --request POST 'https://oauth.cliquify.me/oauth/revoke' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'token=ACCESS_TOKEN'
const https = require('https');
const querystring = require('querystring');

const postData = querystring.stringify({
  token: 'ACCESS_TOKEN'
});

const options = {
  hostname: 'oauth.cliquify.me',
  path: '/oauth/revoke',
  method: 'POST',
  headers: {
    'Content-Type': 'application/x-www-form-urlencoded',
    'Content-Length': Buffer.byteLength(postData)
  }
};

const req = https.request(options, res => {
  console.log(`Status: ${res.statusCode}`);
});

req.write(postData);
req.end();
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;

public class RevokeToken {
  public static void main(String[] args) throws Exception {
    URL url = new URL("https://oauth.cliquify.me/oauth/revoke");
    HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    conn.setRequestMethod("POST");
    conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
    conn.setDoOutput(true);

    String data = "token=ACCESS_TOKEN";
    try (OutputStream os = conn.getOutputStream()) {
      os.write(data.getBytes());
    }

    int responseCode = conn.getResponseCode();
    System.out.println("Response Code: " + responseCode);
  }
}
import requests

headers = {
  "Content-Type": "application/x-www-form-urlencoded"
}

data = {
  "token": "ACCESS_TOKEN"
}

response = requests.post("https://oauth.cliquify.me/oauth/revoke", headers=headers, data=data)
print(response.status_code)
using System;
using System.Net.Http;
using System.Text;

class Program {
  static async System.Threading.Tasks.Task Main() {
    using var client = new HttpClient();
    var content = new StringContent("token=ACCESS_TOKEN", Encoding.UTF8, "application/x-www-form-urlencoded");
    var response = await client.PostAsync("https://oauth.cliquify.me/oauth/revoke", content);
    Console.WriteLine($"Status: {response.StatusCode}");
  }
}
package main

import (
  "bytes"
  "fmt"
  "net/http"
)

func main() {
  data := []byte("token=ACCESS_TOKEN")
  req, _ := http.NewRequest("POST", "https://oauth.cliquify.me/oauth/revoke", bytes.NewBuffer(data))
  req.Header.Set("Content-Type", "application/x-www-form-urlencoded")

  client := &http.Client{}
  resp, _ := client.Do(req)
  fmt.Println("Status:", resp.Status)
}
$data = http_build_query([
  'token' => 'ACCESS_TOKEN'
]);

$options = ["http" => [
  "method" => "POST",
  "header" => "Content-Type: application/x-www-form-urlencoded",
  "content" => $data
]];

$response = file_get_contents('https://oauth.cliquify.me/oauth/revoke', false, stream_context_create($options));
echo $response;
require 'net/http'
require 'uri'

uri = URI.parse("https://oauth.cliquify.me/oauth/revoke")
request = Net::HTTP::Post.new(uri)
request["Content-Type"] = "application/x-www-form-urlencoded"
request.body = "token=ACCESS_TOKEN"

response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
  http.request(request)
end

puts "Status: #{response.code}"

Success Response

{
  "revoked": true
}

Try It Out