Install
uv:
Requirements
- Python >= 3.10
- Dependency:
requests>=2.28.0
Quick start
API overview
| Method | Description |
|---|---|
get_project() | Get project info |
list_codes(page?, page_size?, status?, search?) | List codes with pagination |
get_code(code_id) | Get one code by ID |
get_code_by_code(code) | Get one code by code string |
verify_code(code, verified_by?) | Verify (redeem) a code |
reactivate_code(code, reactivated_by?, reason?) | Reactivate a used code |
get_statistics() | Project statistics |
status options: unused, used, disabled, expired.
Usage details
Pagination and filters
Verify result and error_code
When the API does not raise, verify usessuccess and error_code:
error_code: CODE_ALREADY_USED, CODE_NOT_FOUND, CODE_DISABLED, CODE_EXPIRED, etc.
Retry and resilience
Retry a limited number of times on 5xx or network errors:Custom requests and generate_signature
For your own HTTP client, usegenerate_signature to build the signature:
Error handling
- 4xx/5xx: Client raises
requests.HTTPError; usee.response.status_code(e.g. 401, 403, 404, 429). - Business failure: When verify/reactivate returns
success=False, useresult['error_code']for the reason.
Install from build
Install from local build (e.g. for development):Run examples
CODEGATE_API_KEY, CODEGATE_SECRET, CODEGATE_PROJECT_ID, CODEGATE_BASE_URL (optional) first.