OpenG2P Social Registry APIs are CRUD APIs that allow the end-user to create, read, and update the Individual registry data.
The Individual APIs contain the following CRUD operations.
Create : Allows the creation of a new individual entity.
Read : Enables the fetching of details about an individual entity.
Update : Supports modifying existing individual entities.
Delete API is not supported. Contact the Administrator to delete an individual registrant.
The endpoints of Individual APIs and their definitions are given below.
The API request and response values used in the below sections are only an example for understanding. Do not use the example values in an API call.
Authentication
The Individual APIs use a session-based authentication mechanism provided by Odoo. This involves initiating a session using login credentials. The end-user must authenticate by calling the /web/session/authenticate
endpoint with the appropriate parameters in the request body. Successfully authenticated sessions generate a session ID, which is then used to authenticate subsequent API requests.
Subsequent API requests must include the session ID in the header to maintain the authenticated session.
Session authentication endpoint
Body parameters
Sample cURL request
Copy curl --location --request GET '<openg2p.sandox.net>/web/session/authenticate' \
--header 'Content-Type: application/json' \
--header 'Cookie: frontend_lang=en_US; session_id=c7b75ddb25f94ced204b78e6d7ea115c4a7c0f7e' \
--data '{
"jsonrpc": "2.0",
"params": {
"db": <db-name>,
"login": <login>,
"password": <password>
}
}
'
Sample request
Copy {
"jsonrpc" : "2.0" ,
"params" : {
"db" : <db-name> ,
"login" : <login> ,
"password" : <password>
}
}
Create individual registry
This endpoint allows the end-user to create a new individual.
Key request parameters
Request body parameters
Sample cURL request
Copy curl --request POST
--url https://openg2p.stoplight.io/api/v1/registry/individual/
--header 'Accept: application/json'
--header 'Accept-Language: '
--header 'Content-Type: application/json'
--header 'Cookie: session_id=<session_id>'
--data '{ "name": "string", "ids": [ { "id_type": "string", "value": "string", "expiry_date": "2019-08-24" } ], "registration_date": "2019-08-24", "phone_numbers": [ { "phone_no": "string", "date_collected": "2019-08-24" } ], "email": "string", "address": "string", "bank_ids": [ { "bank_name": "string", "acc_number": "string" } ], "given_name": "string", "addl_name": "string", "family_name": "string", "gender": "string", "birthdate": "2019-08-24", "birth_place": "string", "is_group": false }'
Sample request
Copy {
"name" : "string" ,
"ids" : [ { "id_type" : "string" ,
"value" : "string" ,
"expiry_date" : "2019-08-24" } ] ,
"registration_date" : "2019-08-24" ,
"phone_numbers" : [ { "phone_no" : "string" ,
"date_collected" : "2019-08-24" } ] ,
"email" : "string" ,
"address" : "string" ,
"bank_ids" : [ { "bank_name" : "string" ,
"acc_number" : "string" } ] ,
"given_name" : "string" ,
"addl_name" : "string" ,
"family_name" : "string" ,
"gender" : "string" ,
"birthdate" : "2019-08-24" ,
"birth_place" : "string" ,
"is_group" : false
}
Sample response
200 422
Successful response
Copy {
"id" : 0 ,
"name" : "string" ,
"reg_ids" : [
{
"id" : 0 ,
"id_type_as_str" : "string" ,
"value" : "string" ,
"expiry_date" : "2019-08-24"
}
] ,
"is_group" : false ,
"registration_date" : "2019-08-24" ,
"phone_number_ids" : [
{
"id" : 0 ,
"phone_no" : "string" ,
"phone_sanitized" : "string" ,
"date_collected" : "2019-08-24"
}
] ,
"email" : "string" ,
"address" : "string" ,
"create_date" : "2019-08-24T14:15:22Z" ,
"write_date" : "2019-08-24T14:15:22Z" ,
"bank_ids" : [
{
"bank_name" : "string" ,
"acc_number" : "string"
}
] ,
"given_name" : "string" ,
"addl_name" : "string" ,
"family_name" : "string" ,
"gender" : "string" ,
"birthdate" : "2019-08-24" ,
"age" : "string" ,
"birth_place" : "string"
}
Validation error
Copy {
"detail" : [
{
"loc" : [
"string"
] ,
"msg" : "string" ,
"type" : "string"
}
]
}
Get individual registry
This endpoint allows the end-user to retrieve the individual registry data based on a specific ID.
Key request parameters
Sample cURL request
Copy curl --request GET
--url https://openg2p.stoplight.io/api/v1/registry/group/_id
--header 'Accept: application/json'
--header 'Accept-Language: '
--header 'Cookie: session_id=<session_id>'
Sample response
200 422
Successful response
Copy {
"id" : 0 ,
"name" : "string" ,
"reg_ids" : [
{
"id" : 0 ,
"id_type_as_str" : "string" ,
"value" : "string" ,
"expiry_date" : "2019-08-24"
}
] ,
"is_group" : false ,
"registration_date" : "2019-08-24" ,
"phone_number_ids" : [
{
"id" : 0 ,
"phone_no" : "string" ,
"phone_sanitized" : "string" ,
"date_collected" : "2019-08-24"
}
] ,
"email" : "string" ,
"address" : "string" ,
"create_date" : "2019-08-24T14:15:22Z" ,
"write_date" : "2019-08-24T14:15:22Z" ,
"bank_ids" : [
{
"bank_name" : "string" ,
"acc_number" : "string"
}
] ,
"given_name" : "string" ,
"addl_name" : "string" ,
"family_name" : "string" ,
"gender" : "string" ,
"birthdate" : "2019-08-24" ,
"age" : "string" ,
"birth_place" : "string"
}
Validation error
Copy {
"detail" : [
{
"loc" : [
"string"
] ,
"msg" : "string" ,
"type" : "string"
}
]
}
Search individual registry
This endpoint allows the end-user to search the individuals based on a specific ID or name.
Key request parameters
Sample cURL request
Copy curl --request GET
--url https://openg2p.stoplight.io/api/v1/registry/individual
--header 'Accept: application/json'
--header 'Accept-Language: '
--header 'Cookie: session_id=<session_id>'
Sample response
200 422
Successful response
Copy [
{
"id" : 0 ,
"name" : "string" ,
"reg_ids" : [
{
"id" : 0 ,
"id_type_as_str" : "string" ,
"value" : "string" ,
"expiry_date" : "2019-08-24"
}
] ,
"is_group" : false ,
"registration_date" : "2019-08-24" ,
"phone_number_ids" : [
{
"id" : 0 ,
"phone_no" : "string" ,
"phone_sanitized" : "string" ,
"date_collected" : "2019-08-24"
}
] ,
"email" : "string" ,
"address" : "string" ,
"create_date" : "2019-08-24T14:15:22Z" ,
"write_date" : "2019-08-24T14:15:22Z" ,
"bank_ids" : [
{
"bank_name" : "string" ,
"acc_number" : "string"
}
] ,
"given_name" : "string" ,
"addl_name" : "string" ,
"family_name" : "string" ,
"gender" : "string" ,
"birthdate" : "2019-08-24" ,
"age" : "string" ,
"birth_place" : "string"
}
]
Validation error
Copy {
"detail" : [
{
"loc" : [
"string"
] ,
"msg" : "string" ,
"type" : "string"
}
]
}
API specification
The Individual APIs are available in Stoplight at the following link.
openg2p-crud-apis
Last updated 2 months ago