Skip to main content

User Extra

Endpoints Summary

Method Path Swagger
GET /user_extra/ Swagger ↗
POST /user_extra/ Swagger ↗
GET /user_extra/{id}/ Swagger ↗
PUT /user_extra/{id}/ Swagger ↗
PATCH /user_extra/{id}/ Swagger ↗
DELETE /user_extra/{id}/ Swagger ↗

The User Extra API endpoints allow you to manage additional user profile information beyond basic account details. These endpoints handle extended user attributes like demographics, contact information, location data, and custom fields for enhanced user profiles.

Base URL: https://gate.zequenze.com/api/v1

Authentication: All endpoints require a Bearer token:

Authorization: Bearer <your-api-token>

Overview

The User Extra API provides comprehensive management of supplementary user information that extends beyond standard user account data. This API category is designed to handle detailed user profiles including demographic information, geographic data, contact details, and customizable fields.

Key Features:

  • Demographic Management: Handle user gender, age ranges, and birthday information
  • Geographic Data: Store and manage location information including address, city, state, country, and hometown
  • Contact Information: Manage telephone numbers and other communication details
  • Custom Fields: Eight configurable custom fields for organization-specific data
  • Business Information: Support for company, title, and tax identification details
  • Document Management: Handle passport numbers and country identification

Common Integration Scenarios:

  • User onboarding workflows requiring detailed profile completion
  • Customer relationship management systems needing extended user data
  • Event registration systems collecting participant information
  • Compliance systems requiring user verification and documentation
  • Marketing platforms utilizing demographic and geographic targeting

The API follows RESTful principles with full CRUD operations, supporting both complete updates (PUT) and partial modifications (PATCH) for flexible data management.


Endpoints

GET /user_extra/

Description: Retrieves a paginated list of user extra information records. This endpoint supports filtering by parent user and organization, making it ideal for bulk data retrieval and administrative dashboards.

Use Cases:

  • Administrative dashboards displaying user profile completion status
  • Data export operations for reporting and analytics
  • Bulk user data synchronization with external systems
  • Organization-wide user profile auditing

Full URL Example:

https://gate.zequenze.com/api/v1/user_extra/?parent__organization_id=123&limit=50&device_info=true

Parameters:

Parameter Type In Required Description
parent string query No Filter by specific parent user ID
parent__organization_id string query No Filter by organization ID of the parent user
limit integer query No Number of results to return per page (default: system configured)
offset integer query No Starting index for pagination
device_info boolean query No Include additional device information in response

cURL Example:

curl -X GET "https://gate.zequenze.com/api/v1/user_extra/?parent__organization_id=123&limit=25&offset=0" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json"

Example Response:

{
  "count": 150,
  "next": "https://gate.zequenze.com/api/v1/user_extra/?limit=25&offset=25",
  "previous": null,
  "results": [
    {
      "id": 1,
      "parent": 45,
      "gender": "f",
      "age_range": "25-34",
      "age": 28,
      "birthday": "1995-06-15",
      "locale": "en_US",
      "address": "123 Main Street, Apt 4B",
      "hometown": "Springfield",
      "city": "New York",
      "state": "NY",
      "country": "United States",
      "location": "40.7128,-74.0060",
      "telephone": "+1-555-123-4567",
      "accept_terms": true
    },
    {
      "id": 2,
      "parent": 67,
      "gender": "m",
      "age_range": "35-44",
      "age": 38,
      "birthday": "1985-03-22",
      "locale": "en_GB",
      "address": "456 Oak Avenue",
      "hometown": "Manchester",
      "city": "London",
      "state": "England",
      "country": "United Kingdom",
      "location": "51.5074,-0.1278",
      "telephone": "+44-20-7123-4567",
      "accept_terms": true
    }
  ]
}

Response Codes:

Status Description
200 Success - Returns paginated list of user extra records
401 Unauthorized - Invalid or missing authentication token
403 Forbidden - Insufficient permissions to access user data

POST /user_extra/

Description: Creates a new user extra information record. This endpoint accepts comprehensive user profile data including demographics, location, contact information, and custom fields for organization-specific requirements.

Use Cases:

  • User registration completion workflows
  • Profile enhancement during onboarding
  • Event registration with detailed participant information
  • Customer data collection for CRM systems

Full URL Example:

https://gate.zequenze.com/api/v1/user_extra/

Request Body Parameters:

Field Type Required Description
parent integer Yes ID of the parent user account
gender string No Gender identifier (m/f/o for male/female/other)
age_range string No Age category for demographic analysis
age integer No Specific age value
birthday string (date) No Birth date in YYYY-MM-DD format
locale string No User's preferred locale/language setting
address string No Complete street address
city string No City of residence
state string No State or province
postal_code string No ZIP or postal code
country string No Country name or code
telephone string No Primary phone number
company string No Employer or company name
title string No Job title or position
accept_terms boolean No Terms and conditions acceptance status

cURL Example:

curl -X POST "https://gate.zequenze.com/api/v1/user_extra/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "parent": 45,
    "gender": "f",
    "age": 28,
    "birthday": "1995-06-15",
    "locale": "en_US",
    "address": "123 Main Street, Apt 4B",
    "city": "New York",
    "state": "NY",
    "postal_code": "10001",
    "country": "United States",
    "telephone": "+1-555-123-4567",
    "company": "Tech Solutions Inc",
    "title": "Software Engineer",
    "accept_terms": true,
    "custom_field_1": "Department: Engineering",
    "custom_field_2": "Employee ID: ENG001"
  }'

Example Response:

{
  "id": 1,
  "gender": "f",
  "age_range": null,
  "age": 28,
  "birthday": "1995-06-15",
  "locale": "en_US",
  "address": "123 Main Street, Apt 4B",
  "hometown": null,
  "city": "New York",
  "state": "NY",
  "postal_code": "10001",
  "country": "United States",
  "location": null,
  "telephone": "+1-555-123-4567",
  "company": "Tech Solutions Inc",
  "title": "Software Engineer",
  "passport_number": null,
  "country_id": null,
  "tax_id": null,
  "event": null,
  "accept_terms": true,
  "custom_field_1": "Department: Engineering",
  "custom_field_2": "Employee ID: ENG001",
  "custom_field_3": null,
  "custom_field_4": null,
  "custom_field_5": null,
  "custom_field_6": null,
  "custom_field_7": null,
  "custom_field_8": null
}

Response Codes:

Status Description
201 Created - User extra record successfully created
400 Bad Request - Invalid data format or missing required fields
401 Unauthorized - Invalid or missing authentication token
409 Conflict - User extra record already exists for this parent user

GET /user_extra/{id}/

Description: Retrieves detailed information for a specific user extra record by ID. This endpoint provides complete access to all stored additional user information and optionally includes device-related data.

Use Cases:

  • User profile display pages
  • Profile editing form pre-population
  • User data verification processes
  • Individual record auditing and compliance checks

Full URL Example:

https://gate.zequenze.com/api/v1/user_extra/1/?device_info=true

Parameters:

Parameter Type In Required Description
id integer path Yes Unique identifier of the user extra record
device_info boolean query No Include additional device information in response

cURL Example:

curl -X GET "https://gate.zequenze.com/api/v1/user_extra/1/?device_info=true" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json"

Example Response:

{
  "id": 1,
  "parent": 45,
  "gender": "f",
  "age_range": "25-34",
  "age": 28,
  "birthday": "1995-06-15",
  "locale": "en_US",
  "address": "123 Main Street, Apt 4B",
  "hometown": "Springfield",
  "city": "New York",
  "state": "NY",
  "country": "United States",
  "location": "40.7128,-74.0060",
  "telephone": "+1-555-123-4567",
  "accept_terms": true
}

Response Codes:

Status Description
200 Success - Returns the requested user extra record
401 Unauthorized - Invalid or missing authentication token
404 Not Found - User extra record does not exist
403 Forbidden - Insufficient permissions to access this record

PUT /user_extra/{id}/

Description: Completely updates an existing user extra record with new data. This endpoint requires all fields to be provided and replaces the entire record, making it ideal for complete profile updates and data synchronization.

Use Cases:

  • Complete profile updates from user settings pages
  • Data synchronization from external systems
  • Profile migration or data correction workflows
  • Bulk data updates with complete record replacement

Full URL Example:

https://gate.zequenze.com/api/v1/user_extra/1/

cURL Example:

curl -X PUT "https://gate.zequenze.com/api/v1/user_extra/1/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "gender": "f",
    "age": 29,
    "birthday": "1995-06-15",
    "locale": "en_US",
    "address": "456 New Street, Suite 2A",
    "city": "New York",
    "state": "NY",
    "postal_code": "10002",
    "country": "United States",
    "telephone": "+1-555-987-6543",
    "company": "Advanced Tech Corp",
    "title": "Senior Software Engineer",
    "accept_terms": true,
    "custom_field_1": "Department: Senior Engineering",
    "custom_field_2": "Employee ID: SEN001",
    "custom_field_3": "Team: Backend Development"
  }'

Example Response:

{
  "id": 1,
  "gender": "f",
  "age_range": null,
  "age": 29,
  "birthday": "1995-06-15",
  "locale": "en_US",
  "address": "456 New Street, Suite 2A",
  "hometown": null,
  "city": "New York",
  "state": "NY",
  "postal_code": "10002",
  "country": "United States",
  "location": null,
  "telephone": "+1-555-987-6543",
  "company": "Advanced Tech Corp",
  "title": "Senior Software Engineer",
  "passport_number": null,
  "country_id": null,
  "tax_id": null,
  "event": null,
  "accept_terms": true,
  "custom_field_1": "Department: Senior Engineering",
  "custom_field_2": "Employee ID: SEN001",
  "custom_field_3": "Team: Backend Development",
  "custom_field_4": null,
  "custom_field_5": null,
  "custom_field_6": null,
  "custom_field_7": null,
  "custom_field_8": null
}

Response Codes:

Status Description
200 Success - User extra record successfully updated
400 Bad Request - Invalid data format or validation errors
401 Unauthorized - Invalid or missing authentication token
404 Not Found - User extra record does not exist
403 Forbidden - Insufficient permissions to modify this record

PATCH /user_extra/{id}/

Description: Partially updates specific fields in an existing user extra record. This endpoint allows selective field updates without affecting other stored data, making it efficient for individual field modifications and incremental updates.

Use Cases:

  • Single field updates from user interfaces
  • Progressive profile completion workflows
  • Targeted data corrections
  • Event-driven field updates from external triggers

Full URL Example:

https://gate.zequenze.com/api/v1/user_extra/1/

cURL Example:

curl -X PATCH "https://gate.zequenze.com/api/v1/user_extra/1/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "telephone": "+1-555-111-2222",
    "title": "Lead Software Engineer",
    "custom_field_3": "Team: Full Stack Development"
  }'

Example Response:

{
  "id": 1,
  "gender": "f",
  "age_range": null,
  "age": 29,
  "birthday": "1995-06-15",
  "locale": "en_US",
  "address": "456 New Street, Suite 2A",
  "hometown": null,
  "city": "New York",
  "state": "NY",
  "postal_code": "10002",
  "country": "United States",
  "location": null,
  "telephone": "+1-555-111-2222",
  "company": "Advanced Tech Corp",
  "title": "Lead Software Engineer",
  "passport_number": null,
  "country_id": null,
  "tax_id": null,
  "event": null,
  "accept_terms": true,
  "custom_field_1": "Department: Senior Engineering",
  "custom_field_2": "Employee ID: SEN001",
  "custom_field_3": "Team: Full Stack Development",
  "custom_field_4": null,
  "custom_field_5": null,
  "custom_field_6": null,
  "custom_field_7": null,
  "custom_field_8": null
}

Response Codes:

Status Description
200 Success - User extra record successfully updated
400 Bad Request - Invalid data format or validation errors
401 Unauthorized - Invalid or missing authentication token
404 Not Found - User extra record does not exist
403 Forbidden - Insufficient permissions to modify this record

DELETE /user_extra/{id}/

Description: Permanently removes a user extra information record from the system. This operation cannot be undone and should be used with caution, typically in data cleanup scenarios or user account deletion workflows.

Use Cases:

  • User account deletion processes
  • Data cleanup and privacy compliance (GDPR/CCPA)
  • Duplicate record removal
  • Administrative data management

Full URL Example:

https://gate.zequenze.com/api/v1/user_extra/1/

Parameters:

Parameter Type In Required Description
id integer path Yes Unique identifier of the user extra record to delete

cURL Example:

curl -X DELETE "https://gate.zequenze.com/api/v1/user_extra/1/" \
  -H "Authorization: Bearer YOUR_API_TOKEN"

Response Codes:

Status Description
204 No Content - User extra record successfully deleted
401 Unauthorized - Invalid or missing authentication token
404 Not Found - User extra record does not exist
403 Forbidden - Insufficient permissions to delete this record

Common Use Cases

Use Case 1: Complete User Onboarding Workflow

Implement a multi-step registration process where basic user accounts are created first, then enhanced with detailed profile information using POST /user_extra/. Use PATCH for progressive profile completion as users provide additional information over time.

Use Case 2: Organization User Management Dashboard

Build administrative interfaces using GET /user_extra/ with organization filtering to display user profile completion status, demographic analytics, and data quality metrics across the organization.

Use Case 3: Event Registration System

Collect comprehensive attendee information during event registration using POST /user_extra/ with custom fields for event-specific data like dietary restrictions, accommodation preferences, and special requirements.

Use Case 4: CRM Integration and Data Synchronization

Synchronize customer data between external CRM systems using PUT /user_extra/{id}/ for complete record updates and PATCH for incremental changes triggered by external system events.

Use Case 5: Compliance and Data Privacy Management

Implement GDPR/CCPA compliance workflows using DELETE /user_extra/{id}/ for data removal requests and GET operations for data export and audit trail requirements.


Best Practices

  • Pagination Strategy: Always use appropriate limit and offset values when retrieving large datasets. Start with smaller page sizes (25-50 records) and adjust based on performance requirements.

  • Incremental Updates: Prefer PATCH over PUT for single field updates to minimize bandwidth usage and reduce the risk of data conflicts in concurrent environments.

  • Data Validation: Validate gender values ('m', 'f', 'o') and date formats (YYYY-MM-DD) on the client side before submission to prevent validation errors.

  • Custom Fields Management: Establish clear naming conventions for custom fields within your organization to ensure consistency and maintainability across different integrations.

  • Error Handling: Implement robust error handling for 404 responses when accessing records that may have been deleted by other processes, and 403 responses for authorization issues.

  • Geographic Data: Use consistent country naming conventions and consider implementing country code validation to ensure data quality for location-based features.

  • Performance Optimization: Use the device_info parameter only when necessary, as it may impact response times for large datasets.

  • Security Considerations: Always validate user permissions before allowing access to user extra data, especially in multi-tenant environments with organization-based access controls.