Appearance
API Quick Reference
Essential Information
| Item | Value |
|---|---|
| Base URL | https://engagifii-trainingandaccreditation.azurewebsites.net |
| API Version | v1 |
| Required Header | tenant-code: YOUR_TENANT_CODE |
| Content Type | application/json |
| Auth (Optional) | Authorization: Bearer {token} |
| Rate Limit | 1000 requests/minute |
Most Common Endpoints
Awards & Certifications
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/Awards/List | List all awards |
| GET | /api/v1/Awards/{id} | Get award details |
| POST | /api/v1/Awards | Create award |
| PUT | /api/v1/Awards/{id} | Update award |
| DELETE | /api/v1/Awards/{id} | Delete award |
| POST | /api/v1/AwardsRegistration/RegisterMember | Register for award |
| GET | /api/v1/Awards/{id}/AwardStats | Get award statistics |
Classes & Sessions
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/Classes/List | List all classes |
| GET | /api/v1/Classes/{id} | Get class details |
| POST | /api/v1/Classes | Create class |
| PUT | /api/v1/Classes/{id} | Update class |
| POST | /api/v1/registration/ClassRegistration | Register for class |
| POST | /api/v1/ClassAttendance/MarkAttendance | Mark attendance |
| GET | /api/v1/Classes/{id}/Statistics | Get class statistics |
Courses
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/Courses/List | List all courses |
| GET | /api/v1/Courses/{id} | Get course details |
| POST | /api/v1/Courses | Create course |
| PUT | /api/v1/Courses/{id} | Update course |
| GET | /api/v1/Courses/{id}/Curriculum | Get course curriculum |
Registration Management
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/v1/registration/ClassRegistration | Class registration |
| POST | /api/v1/AwardsRegistration/RegisterMember | Award registration |
| POST | /api/v1/AwardsRegistration/ApproveRequest | Approve registration |
| POST | /api/v1/AwardsRegistration/RejectRequest | Reject registration |
| GET | /api/v1/registration/{id}/status | Check registration status |
Credits
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/CreditType/List | List credit types |
| POST | /api/v1/CreditRequests | Submit credit request |
| GET | /api/v1/CoursesCreditsEarned/{memberId} | Get credit history |
| POST | /api/v1/CreditRequests/Approve | Approve credits |
People & Organizations
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/People/{id} | Get person details |
| GET | /api/v1/People/List | List all people |
| GET | /api/v1/Organization/List | List organizations |
| GET | /api/v1/Organization/{id} | Get organization details |
Quick Examples
1. Get Awards (cURL)
bash
curl -X GET "https://engagifii-trainingandaccreditation.azurewebsites.net/api/v1/Awards/List" \
-H "tenant-code: YOUR_TENANT_CODE"2. Register for Class (JavaScript)
javascript
fetch('https://engagifii-trainingandaccreditation.azurewebsites.net/api/v1/registration/ClassRegistration', {
method: 'POST',
headers: {
'tenant-code': 'YOUR_TENANT_CODE',
'Content-Type': 'application/json'
},
body: JSON.stringify({
classId: '3fa85f64-5717-4562-b3fc-2c963f66afa6',
memberId: '9fa85f64-5717-4562-b3fc-2c963f66afa4',
registrationType: 'Regular'
})
});3. Create Award (Python)
python
import requests
url = "https://engagifii-trainingandaccreditation.azurewebsites.net/api/v1/Awards"
headers = {
"tenant-code": "YOUR_TENANT_CODE",
"Content-Type": "application/json"
}
data = {
"name": "New Certification",
"description": "Professional certification",
"price": 299.99,
"isActive": True
}
response = requests.post(url, json=data, headers=headers)Common Query Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
page | int | 1 | Page number (1-based) |
pageSize | int | 50 | Items per page (max: 200) |
sortBy | string | varies | Field to sort by |
sortDirection | string | asc | Sort order: asc or desc |
includeInactive | bool | false | Include inactive records |
searchTerm | string | - | Search across fields |
Status Codes
| Code | Meaning | Action |
|---|---|---|
| 200 | Success | Process response |
| 201 | Created | Resource created |
| 204 | No Content | Operation successful |
| 400 | Bad Request | Check validation |
| 401 | Unauthorized | Add authentication |
| 403 | Forbidden | Check permissions |
| 404 | Not Found | Verify resource ID |
| 409 | Conflict | Resolve conflict |
| 422 | Business Error | Check business rules |
| 429 | Rate Limited | Wait and retry |
| 500 | Server Error | Retry with backoff |
Common Error Codes
| Code | Description | Resolution |
|---|---|---|
VALIDATION_ERROR | Invalid input | Check field requirements |
REQUIRED_FIELD | Missing field | Add required field |
INVALID_FORMAT | Wrong format | Fix data format |
AUTHENTICATION_REQUIRED | No auth | Add credentials |
TOKEN_EXPIRED | Expired token | Refresh token |
INSUFFICIENT_PERMISSIONS | No access | Request permissions |
RESOURCE_NOT_FOUND | Not found | Check ID |
REGISTRATION_CLOSED | Too late | Check dates |
CAPACITY_EXCEEDED | Full | Join waitlist |
RATE_LIMIT_EXCEEDED | Too many | Wait 60s |
Pagination Headers
| Header | Description |
|---|---|
X-Total-Count | Total items available |
X-Page-Count | Total pages |
X-Current-Page | Current page |
X-Page-Size | Items per page |
Rate Limit Headers
| Header | Description |
|---|---|
X-RateLimit-Limit | Max requests/minute |
X-RateLimit-Remaining | Requests left |
X-RateLimit-Reset | Reset time (Unix) |
Retry-After | Seconds to wait |
Data Types
| Type | Format | Example |
|---|---|---|
| GUID | UUID v4 | 3fa85f64-5717-4562-b3fc-2c963f66afa6 |
| DateTime | ISO 8601 | 2024-01-15T10:30:00Z |
| Date | ISO 8601 | 2024-01-15 |
| Decimal | Number | 99.99 |
| Boolean | Bool | true or false |
Common Enums
Registration Status
DraftSubmittedPendingApprovalApprovedRejectedRegisteredWaitlistedCompletedCancelled
Class Status
DraftPublishedRegistrationOpenInProgressCompletedCancelled
Location Type
InPersonVirtualHybridOnDemand
Payment Method
CreditCardPurchaseOrderInvoiceFree
Credit Type
CPE- Continuing Professional EducationCEU- Continuing Education UnitPDH- Professional Development HourCLE- Continuing Legal EducationCME- Continuing Medical Education
Quick Tips
Authentication
javascript
// Always include tenant code
headers: {
'tenant-code': 'YOUR_TENANT_CODE'
}Error Handling
javascript
if (response.status === 429) {
// Rate limited - wait and retry
const retryAfter = response.headers.get('Retry-After');
await sleep(retryAfter * 1000);
}Pagination
javascript
// Get page 2 with 100 items
const url = '/api/v1/Awards/List?page=2&pageSize=100';Date Filtering
javascript
// Filter by date
const url = '/api/v1/Awards/List?selectedDate=2024-01-15T00:00:00Z';Sorting
javascript
// Sort by name descending
const url = '/api/v1/Awards/List?sortBy=name&sortDirection=desc';Useful Resources
| Resource | Link |
|---|---|
| Full Documentation | API Reference |
| Authentication Guide | Authentication |
| Error Handling | Error Guide |
| Data Models | Data Models |
| Postman Collection | Download |
| OpenAPI Spec | OpenAPI |
| Swagger UI | Live Swagger |
Support Contacts
- API Issues: Include request ID in support ticket
- Documentation: Report issues on GitHub
- Emergency: Contact system administrator
Quick Reference v1.0 | Last Updated: January 2025
