-
Notifications
You must be signed in to change notification settings - Fork 31
Open
Description
Description
The AssemblyAI API is returning a new entity type location_state that is not included in the SDK's EntityType enum, causing Pydantic validation to fail when parsing the TranscriptResponse.
SDK Version
- assemblyai: 0.48.x (issue exists in all current versions including 0.48.3)
- Python: 3.12
Error
pydantic_core._pydantic_core.ValidationError: 1 validation error for TranscriptResponse
entities.17.entity_type
Input should be 'account_number', 'banking_information', 'blood_type', 'credit_card_cvv',
'credit_card_expiration', 'credit_card_number', 'date', 'date_interval', 'date_of_birth',
'drivers_license', 'drug', 'duration', 'email_address', 'event', 'filename', 'gender_sexuality',
'healthcare_number', 'injury', 'ip_address', 'language', 'location', 'marital_status',
'medical_condition', 'medical_process', 'money_amount', 'nationality', 'number_sequence',
'occupation', 'organization', 'passport_number', 'password', 'person_age', 'person_name',
'phone_number', 'physical_attribute', 'political_affiliation', 'religion', 'statistics',
'time', 'url', 'us_social_security_number', 'username', 'vehicle_id' or 'zodiac_sign'
[type=enum, input_value='location_state', input_type=str]Relevant Stack Trace
File "assemblyai/transcriber.py", line 89, in wait_for_completion
self.transcript = api.get_transcript(...)
File "assemblyai/api.py", line 67, in get_transcript
return types.TranscriptResponse.parse_obj(response.json())
Steps to Reproduce
- Transcribe audio that contains location/state references
- The API returns entities with entity_type: "location_state"
- SDK fails to parse the response due to enum validation
Expected Behavior
The SDK should successfully parse API responses containing location_state entities.
Suggested Fix
Add location_state to the EntityType enum in assemblyai/types.py:
class EntityType(str, Enum):
# ... existing values ...
location_state = "location_state"Impact
This is a production-breaking issue - any transcription that returns a location_state entity will fail entirely, preventing users from getting transcription results.
Workarounds: [Unknown]
Metadata
Metadata
Assignees
Labels
No labels