Calven Developer Docs
    • Overview
    • Key Access Levels
    • Basic Authentication Overview
    • HMAC Authentication Overview
    • SDKs
    • Calven Data Models
    • Changelog
    • HMAC Authentication
      • Generate a token with an API key and HMAC
        POST
      • Generate a token with an API key and client secret
        POST
    • Presence
      • Presence Overview
      • Submit presence events
        POST
      • Submit presence events
        POST
    • Occupancy
      • Occupancy Overview
      • Submit occupancy events
        POST
    • Time off
      • Submit time off updates
        POST
    • Access Credentials
      • Submit access credentials
        POST
    • Warehouse - Basic Auth
      • Warehouse Overview
      • Users
        GET
      • Groups
        GET
      • Locations
        GET
      • Desks
        GET
      • Bookings & Attendance
        GET
      • Presence
        GET
      • User Actions Log
        GET
    • Warehouse - HMAC Auth
      • Warehouse Overview
      • Users
      • Groups
      • Locations
      • Desks
      • Bookings & Attendance
      • Presence
      • User Actions Log
    • Hierarchy Information
      • Org Hierarchy Information Overview
      • Submit group hierarchy relationships
      • Submit group hierarchy relationships
    • User Attributes
      • User Attributes Overview
      • Write directory user attributes
      • Write directory user attributes
    • Visitor Management
      • Submit visitor arrival events
      • Submit visitor arrival events
    • Parking
      • Retrieve parking bookings
      • Retrieve parking bookings
    • Org Hierarchy
    • Schemas
      • Schemas
        • LeaveRequestBody
        • TimeoffRequestBody
        • TimeOffEvent
        • TimeoffResponse
        • TimeoffEventResponse
      • DMPostUserAttributesRecordDto
      • DMPostUserAttributesBodyDto
      • DMPostUserAttributesResponseDto
      • ApiServiceException
      • VisitorArrivalEventDto
      • ResultCodes
      • CreatePresenceEventDto
      • DWChangeLogUserResponseDto
      • DWUserBookingAttendanceResponseDto
      • DWPresenceResponseDto
      • DWUsersResponseDto
      • DWLocationsResponseDto
      • DWDesksResponseDto
      • DWGroupsResponseDto
      • DMGroupRelationshipDto
      • DMPostUserAttributesRecordResponseDto
      • AccessCredentialUpdate
      • PresenceEventDto
      • EventResultDto
      • CreatePresenceEventResponseDto
      • OccupancyEventDto
      • CreateOccupancyEventDto
      • CreateOccupancyEventResponseDto
      • AuthRequestDto
      • OAuthRequestDto
      • OAuthResponseDto
      • AccessCredentialUpdateResultCodes
      • AccessCredentialUpdateResult
      • AccessCredentialUpdateResponse
      • AccessCredential
      • AccessCredentialUpdateRequest
      • AuthResponseDto
      • CreateVisitorArrivalEventDto
      • CreateVisitorArrivalEventResponseDto
      • TimeOffRequestBodyDto
      • TimeOffResponseDto
      • PutDMGroupHierarchyRelationshipBodyDto
      • ParkingBookingReportPrincipalDto
      • ParkingBookingReportSpotDto
      • ParkingBookingReportZoneDto
      • ParkingBookingReportAreaDto
      • GetParkingBookingReportResponseDto

    Basic Authentication Overview

    To allow systems that cannot support a two-step auth process to report presence, the /basic endpoints accept basic authentication.
    A specific API key that is enabled for basic authentication is required. This API key cannot be used with the /v1/auth endpoints.
    Contact Calven support to request a basic auth API key.
    Basic authentication sends a header holding the username and password, joined by a colon and encoded as base64:
    Authorization: Basic base64({userName}:{password})
    On Calven endpoints, use the apiKeyId as the username and the apiSecret as the password. Join them with a colon, encode the result as base64, and send:
    Authorization: Basic base64({apiKeyId}:{apiSecret})
    An apiKeyId of abc123 and an apiSecret of s3cret encode to YWJjMTIzOnMzY3JldA==, so the header reads:
    Authorization: Basic YWJjMTIzOnMzY3JldA==
    Most HTTP clients build this header for you. In curl, pass the pair to -u and curl encodes it:
    Modified at 2026-08-10 01:09:39
    Previous
    Key Access Levels
    Next
    HMAC Authentication Overview
    Built with