Community Note
- Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request.
- Please do not leave +1 or me too comments, they generate extra noise for issue followers and do not help prioritize the request.
- If you are interested in working on this issue or have submitted a pull request, please leave a comment.
Before submitting a bug report, we ask that you first search existing issues and pull requests to see if someone else may have experienced the same issue or may have already submitted a fix for it.
Python Version & Okta SDK Version(s)
Python 3.12.10
okta 3.4.2
Affected Class/Method(s)
| Method |
Path |
Failing response type |
list_log_streams() |
GET /api/v1/logStreams |
LogStream → LogStreamSettings → LogStreamSettingsAws |
Failing validator:
okta/models/log_stream_settings_aws.py:58 — event_source_name_validate_regular_expression
Customer Information
Organization Name: Prowler
Paid Customer: no
Code Snippet
import asyncio
from okta.client import Client as OktaClient
async def main():
config = {
"authorizationMode": "PrivateKey",
"orgUrl": "https://<your-org>.okta.com",
"scopes": ["okta.logStreams.read"],
"clientId": "<client-id>",
"privateKey": "<pem>",
}
client = OktaClient(config)
streams, resp, err = await client.list_log_streams()
print(streams, err)
asyncio.run(main())
Any tenant with an AWS EventBridge Log Stream whose eventSourceName is two or more characters reproduces it. (Effectively: every tenant — single-character event source names are uncommon to nonexistent in practice.)
Debug Output / Traceback
pydantic_core.pydantic_core.ValidationError: 1 validation error for LogStreamSettingsAws eventSourceName
Value error, must validate the regular expression /^[a-zA-Z0-9.-]$/ [type=value_error, input_value='TestField', input_type=str]. For further information visit https://errors.pydantic.dev/2.12/v/value_error
Expected Behavior
list_log_streams() returns the tuple (items, response, None). Multi-character eventSourceName values should be accepted — they are explicitly allowed by Okta's UI and by the Management API (which mints them at log-stream creation time).
Actual Behavior
The SDK refuses to deserialize the response. The HTTP call succeeded — Okta returned a valid payload — but the pydantic validator chokes. Callers never see the data; the exception propagates out of list_log_streams() instead of being returned in the (items, response, error) tuple.
Steps to reproduce
- Configure any AWS EventBridge Log Stream in Okta (Reports → Log Streaming → Add → AWS EventBridge) with an Event Source Name longer than one character. The Okta UI itself does not enforce a
single-character limit.
- Call await client.list_log_streams().
- Observe the ValidationError above.
The validator can be reproduced in isolation:
from okta.models.log_stream_settings_aws import LogStreamSettingsAws
LogStreamSettingsAws(
accountId="123456789012",
eventSourceName="MultiCharacter",
region="us-east-1",
) # raises ValidationError
References
No response
Community Note
Before submitting a bug report, we ask that you first search existing issues and pull requests to see if someone else may have experienced the same issue or may have already submitted a fix for it.
Python Version & Okta SDK Version(s)
Python 3.12.10
okta 3.4.2
Affected Class/Method(s)
list_log_streams()GET /api/v1/logStreamsLogStream→LogStreamSettings→LogStreamSettingsAwsFailing validator:
okta/models/log_stream_settings_aws.py:58—event_source_name_validate_regular_expressionCustomer Information
Organization Name: Prowler
Paid Customer: no
Code Snippet
Any tenant with an AWS EventBridge Log Stream whose eventSourceName is two or more characters reproduces it. (Effectively: every tenant — single-character event source names are uncommon to nonexistent in practice.)
Debug Output / Traceback
pydantic_core.pydantic_core.ValidationError: 1 validation error for LogStreamSettingsAws eventSourceName
Value error, must validate the regular expression /^[a-zA-Z0-9.-]$/ [type=value_error, input_value='TestField', input_type=str]. For further information visit https://errors.pydantic.dev/2.12/v/value_error
Expected Behavior
list_log_streams()returns the tuple (items, response, None). Multi-character eventSourceName values should be accepted — they are explicitly allowed by Okta's UI and by the Management API (which mints them at log-stream creation time).Actual Behavior
The SDK refuses to deserialize the response. The HTTP call succeeded — Okta returned a valid payload — but the pydantic validator chokes. Callers never see the data; the exception propagates out of list_log_streams() instead of being returned in the (items, response, error) tuple.
Steps to reproduce
single-character limit.
The validator can be reproduced in isolation:
References
No response