Institute of Company Secretaries of India
apisetu · Government
Institute of Company Secretaries of India is available on DigiLocker. ID Card is available for candidates to pull into their DigiLocker account. ICSI members can also pull their ACS certificates into their DigiLocker account.
Authentication
Sample Requests
API to verify ID Card.
Hover any highlighted part to learn what it does
curl -X POST "https://api.apis.guru/v2/specs/apisetu.gov.in/icsi/3.0.0/govid/certificate"
import requests
response = requests.post(
"https://api.apis.guru/v2/specs/apisetu.gov.in/icsi/3.0.0/govid/certificate",
)
print(response.json())const url = 'https://api.apis.guru/v2/specs/apisetu.gov.in/icsi/3.0.0/govid/certificate';
const response = await fetch(url, {
method: 'POST',
});
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
)
func main() {
targetURL := "https://api.apis.guru/v2/specs/apisetu.gov.in/icsi/3.0.0/govid/certificate"
req, _ := http.NewRequest("POST", targetURL, nil)
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/apisetu.gov.in/icsi/3.0.0/govid/certificate")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/apisetu.gov.in/icsi/3.0.0/govid/certificate";
$opts = ["http" => [
"method" => "POST",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));API to verify Membership Certificate.
Hover any highlighted part to learn what it does
curl -X POST "https://api.apis.guru/v2/specs/apisetu.gov.in/icsi/3.0.0/mbcer/certificate"
import requests
response = requests.post(
"https://api.apis.guru/v2/specs/apisetu.gov.in/icsi/3.0.0/mbcer/certificate",
)
print(response.json())const url = 'https://api.apis.guru/v2/specs/apisetu.gov.in/icsi/3.0.0/mbcer/certificate';
const response = await fetch(url, {
method: 'POST',
});
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
)
func main() {
targetURL := "https://api.apis.guru/v2/specs/apisetu.gov.in/icsi/3.0.0/mbcer/certificate"
req, _ := http.NewRequest("POST", targetURL, nil)
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/apisetu.gov.in/icsi/3.0.0/mbcer/certificate")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/apisetu.gov.in/icsi/3.0.0/mbcer/certificate";
$opts = ["http" => [
"method" => "POST",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Postman Setup Guide
- See official documentation for authentication and setup.
What can you build with Institute of Company Secretaries of India?
Institute of Company Secretaries of India is a Government API. Developers commonly use government APIs for:
- surfacing public datasets in citizen-facing apps
- building transparency and civic engagement tools
- accessing legislation, court records, and official data
- powering research and journalism tools
- creating compliance and regulatory monitoring dashboards
No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. Institute of Company Secretaries of India is free to use, making it a low-risk choice to experiment with.
New to APIs? Read our beginner's guide · Learn about API keys · What is REST?