Institution Endpoints
Complete reference for institution and organization management endpoints.
Base URL
https://api.govalid.org/api/v1/institution/
Institution Settings
Get Settings
GET /api/v1/institution/settings/
Response
{
"id": "inst-001",
"name": "Acme Corporation",
"type": "business",
"departments_count": 5,
"staff_count": 50,
"settings": {
"default_security_level": "verified",
"require_approval": true,
"quota_enabled": true
}
}
Update Settings
PATCH /api/v1/institution/settings/
Departments
List Departments
GET /api/v1/institution/departments/
Response
{
"count": 5,
"results": [
{
"id": "dept-001",
"name": "Quality Assurance",
"staff_count": 10,
"quota": {
"qr_codes_per_month": 500,
"used": 250
},
"created_at": "2025-01-01T00:00:00Z"
}
]
}
Create Department
POST /api/v1/institution/departments/
Request Body
{
"name": "Quality Assurance",
"description": "Product quality and verification",
"quota": {
"qr_codes_per_month": 500
}
}
Update Department
PATCH /api/v1/institution/departments/{id}/
Delete Department
DELETE /api/v1/institution/departments/{id}/
Roles
List Roles
GET /api/v1/institution/roles/
Response
{
"count": 4,
"results": [
{
"id": "role-001",
"name": "Admin",
"permissions": ["create_qr", "manage_staff", "view_analytics", "manage_billing"],
"staff_count": 3
},
{
"id": "role-002",
"name": "Operator",
"permissions": ["create_qr", "view_analytics"],
"staff_count": 20
}
]
}
Create Role
POST /api/v1/institution/roles/
Request Body
{
"name": "Verifier",
"permissions": ["create_qr", "verify_qr"]
}
Numbering Patterns
List Patterns
GET /api/v1/institution/patterns/
Create Pattern
POST /api/v1/institution/patterns/
Request Body
{
"name": "Certificate Pattern",
"pattern": "CERT-{YYYY}-{SEQ}",
"prefix": "CERT",
"sequence_length": 4
}
Document Types
List Document Types
GET /api/v1/institution/document-types/
Create Document Type
POST /api/v1/institution/document-types/
Request Body
{
"name": "Certificate",
"description": "Product certification documents",
"numbering_pattern": "pattern-001",
"required_fields": ["product_name", "batch", "issue_date"]
}
Quota Settings
Get Quota Settings
GET /api/v1/institution/quota/
Update Quota
PATCH /api/v1/institution/quota/
Request Body
{
"department_id": "dept-001",
"qr_codes_per_month": 1000
}
Staff Management
List Staff Members
GET /api/v1/institution/staff/
Invite Staff Member
POST /api/v1/institution/staff/invite/
Request Body
{
"role_id": "role-002",
"department_id": "dept-001"
}
Approve/Reject Staff Verification
POST /api/v1/institution/staff/{id}/approve/
POST /api/v1/institution/staff/{id}/reject/
Related
- Account & Billing Guide - Institution management user guide
- Authentication - API authentication
- QR Endpoints - QR code management