Skip to main content

Members API

Access cooperative member data.

The Member Object

{
"id": "123e4567-e89b-12d3-a456-426614174000",
"member_code": "MEM001",
"full_name": "Jean Uwimana",
"first_name": "Jean",
"last_name": "Uwimana",
"identity_card": "1199880012345678",
"mobile": "0788123456",
"gender": "Male",
"role": "Member",
"status": "Active",
"cooperative": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Koperative y'Abahinzi",
"code": "COOP001"
},
"registration_date": "2024-01-20T08:00:00Z",
"created_at": "2024-01-20T08:00:00Z"
}

Attributes

FieldTypeDescription
idstringUnique identifier (UUID)
member_codestringMember code within cooperative
full_namestringFull name
first_namestringFirst name
last_namestringLast name
identity_cardstringNational ID number
mobilestringPhone number
genderstringGender (Male/Female)
rolestringRole in cooperative
statusstringMembership status
cooperativeobjectAssociated cooperative
registration_datedatetimeMembership registration date
created_atdatetimeRecord creation timestamp

Status Values

StatusDescription
ActiveActive member
InactiveInactive member
SuspendedSuspended membership
PendingPending approval

List Members

GET /members

Returns a list of all members across cooperatives.

Required Scope: members:read

Request

curl -X GET "https://api.copa.rw/api/v1/members" \
-H "Authorization: Bearer YOUR_API_KEY"

Query Parameters

ParameterTypeDescription
statusstringFilter by status
genderstringFilter by gender
pageintegerPage number
page_sizeintegerItems per page

Response

[
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"member_code": "MEM001",
"full_name": "Jean Uwimana",
"first_name": "Jean",
"last_name": "Uwimana",
"identity_card": "1199880012345678",
"mobile": "0788123456",
"gender": "Male",
"role": "Member",
"status": "Active",
"cooperative": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Koperative y'Abahinzi",
"code": "COOP001"
},
"registration_date": "2024-01-20T08:00:00Z",
"created_at": "2024-01-20T08:00:00Z"
}
]

Get Member

GET /members/{id}

Returns a single member by ID.

Required Scope: members:read

Request

curl -X GET "https://api.copa.rw/api/v1/members/123e4567-e89b-12d3-a456-426614174000" \
-H "Authorization: Bearer YOUR_API_KEY"

Path Parameters

ParameterTypeDescription
idstringMember UUID

Response

{
"id": "123e4567-e89b-12d3-a456-426614174000",
"member_code": "MEM001",
"full_name": "Jean Uwimana",
"first_name": "Jean",
"last_name": "Uwimana",
"identity_card": "1199880012345678",
"mobile": "0788123456",
"gender": "Male",
"role": "Member",
"status": "Active",
"cooperative": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Koperative y'Abahinzi",
"code": "COOP001"
},
"registration_date": "2024-01-20T08:00:00Z",
"created_at": "2024-01-20T08:00:00Z"
}

Errors

StatusDescription
404Member not found

Search Members by National ID

To find a member by national ID, filter the members list:

curl -X GET "https://api.copa.rw/api/v1/members?identity_card=1199880012345678" \
-H "Authorization: Bearer YOUR_API_KEY"
tip

This is useful for verifying if a person is a registered cooperative member.