🆔 Id Format
Overview
Our platform recognizes two types of identifiers:
- Legacy Numeric ID: A 64-bit integer (
long), used by the existing web application. - API GUID: A globally unique identifier (GUID/UUID), only format accepted by our REST API endpoints.
This dual-ID strategy allows a gradual migration from numeric IDs to GUIDs while maintaining backward compatibility.
1. API GUID Quest ID
All new API endpoints require the GUID format. Example representation:
{
"questId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"title": "Customer Satisfaction Survey"
}
Example request:
GET https://api.questback.com/v1/quests/3fa85f64-5717-4562-b3fc-2c963f66afa6
- Type: String GUID
- Where used: All REST API endpoints
- Advantages: Globally unique, scalable, avoids numeric overflow
2. Legacy Numeric Quest ID
The old web application continues to use a numeric questId.
In the rest API It is not possible to find the quest by using the numeric id.
Example representation:
{
"questId": 5223456,
"title": "Customer Satisfaction Survey"
}
- Type: Integer (e.g.,
longin .NET) - Where used: Web UI, legacy services
- Limitations: Not globally unique, potential collision across environments
4. Migration Guidelines
- New integrations: Use GUID-based ids exclusively.
- Existing web UI: Continue using numeric IDs until web application is updated.
- Deprecation plan: Numeric IDs will be phased out after full migration.
5. Best Practices
- ID Detection
- Hyphens (
-) imply GUID. - All digits imply numeric.
- Hyphens (
- Avoid Mixing
- Do not pass a numeric ID into API endpoints.
- Use the Ids that the endpoints return.
- To get the QuestId as a guid use the endpoint
/v1/quests