Auth0 log-streams API

The log-streams API from Auth0 — 2 operation(s) for log-streams.

OpenAPI Specification

auth0-log-streams-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Auth0 Authentication actions log-streams API
  description: Auth0 Authentication API. Endpoints for authentication and authorization using OpenID Connect, OAuth 2.0, SAML, WS-Federation, and Passwordless flows.
  version: 1.0.0
servers:
- url: '{auth0_domain}'
  description: The Authentication API is served over HTTPS.
  variables:
    auth0_domain:
      description: Auth0 domain
      default: https://demo.us.auth0.com
tags:
- name: log-streams
paths:
  /log-streams:
    get:
      summary: Get Log Streams
      description: "Retrieve details on [log streams](https://auth0.com/docs/logs/streams).\n\n**Sample Response**\n\n```json\n[{\n  \"id\": \"string\",\n  \"name\": \"string\",\n  \"type\": \"eventbridge\",\n  \"status\": \"active|paused|suspended\",\n  \"sink\": {\n    \"awsAccountId\": \"string\",\n    \"awsRegion\": \"string\",\n    \"awsPartnerEventSource\": \"string\"\n  }\n}, {\n  \"id\": \"string\",\n  \"name\": \"string\",\n  \"type\": \"http\",\n  \"status\": \"active|paused|suspended\",\n  \"sink\": {\n    \"httpContentFormat\": \"JSONLINES|JSONARRAY\",\n    \"httpContentType\": \"string\",\n    \"httpEndpoint\": \"string\",\n    \"httpAuthorization\": \"string\"\n  }\n},\n{\n  \"id\": \"string\",\n  \"name\": \"string\",\n  \"type\": \"eventgrid\",\n  \"status\": \"active|paused|suspended\",\n  \"sink\": {\n    \"azureSubscriptionId\": \"string\",\n    \"azureResourceGroup\": \"string\",\n    \"azureRegion\": \"string\",\n    \"azurePartnerTopic\": \"string\"\n  }\n},\n{\n  \"id\": \"string\",\n  \"name\": \"string\",\n  \"type\": \"splunk\",\n  \"status\": \"active|paused|suspended\",\n  \"sink\": {\n    \"splunkDomain\": \"string\",\n    \"splunkToken\": \"string\",\n    \"splunkPort\": \"string\",\n    \"splunkSecure\": \"boolean\"\n  }\n},\n{\n  \"id\": \"string\",\n  \"name\": \"string\",\n  \"type\": \"sumo\",\n  \"status\": \"active|paused|suspended\",\n  \"sink\": {\n    \"sumoSourceAddress\": \"string\"\n  }\n},\n{\n  \"id\": \"string\",\n  \"name\": \"string\",\n  \"type\": \"datadog\",\n  \"status\": \"active|paused|suspended\",\n  \"sink\": {\n    \"datadogRegion\": \"string\",\n    \"datadogApiKey\": \"string\"\n  }\n}]\n```\n"
      tags:
      - log-streams
      responses:
        '200':
          description: Returning log streams
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/LogStreamResponseSchema'
        '401':
          description: Invalid token.
          x-description-1: Invalid signature received for JSON Web Token validation.
        '403':
          description: 'Insufficient scope; expected any of: read:log_streams.'
          x-description-1: The account is not allowed to perform this operation.
        '404':
          description: The log stream does not exist.
        '429':
          description: Too many requests. Check the X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset headers.
      operationId: get_log-streams
      x-release-lifecycle: GA
      x-operation-name: list
      x-operation-group: logStreams
      security:
      - bearerAuth: []
      - oAuth2ClientCredentials:
        - read:log_streams
    post:
      summary: Create a Log Stream
      description: "Create a log stream.\n\n**Log Stream Types**\n\nThe `type` of log stream being created determines the properties required in the `sink` payload.\n\n**HTTP Stream**\n\nFor an `http` Stream, the `sink` properties are listed in the payload below.\n\n**Request:**\n```json\n{\n  \"name\": \"string\",\n  \"type\": \"http\",\n  \"sink\": {\n    \"httpEndpoint\": \"string\",\n    \"httpContentType\": \"string\",\n    \"httpContentFormat\": \"JSONLINES|JSONARRAY\",\n    \"httpAuthorization\": \"string\"\n  }\n}\n```\n\n**Response:**\n```json\n{\n  \"id\": \"string\",\n  \"name\": \"string\",\n  \"type\": \"http\",\n  \"status\": \"active\",\n  \"sink\": {\n    \"httpEndpoint\": \"string\",\n    \"httpContentType\": \"string\",\n    \"httpContentFormat\": \"JSONLINES|JSONARRAY\",\n    \"httpAuthorization\": \"string\"\n  }\n}\n```\n\n**Amazon EventBridge Stream**\n\nFor an `eventbridge` Stream, the `sink` properties are listed in the payload below.\n\n**Request:**\n```json\n{\n  \"name\": \"string\",\n  \"type\": \"eventbridge\",\n  \"sink\": {\n    \"awsRegion\": \"string\",\n    \"awsAccountId\": \"string\"\n  }\n}\n```\n\nThe response will include an additional field `awsPartnerEventSource` in the `sink`:\n\n**Response:**\n```json\n{\n  \"id\": \"string\",\n  \"name\": \"string\",\n  \"type\": \"eventbridge\",\n  \"status\": \"active\",\n  \"sink\": {\n    \"awsAccountId\": \"string\",\n    \"awsRegion\": \"string\",\n    \"awsPartnerEventSource\": \"string\"\n  }\n}\n```\n\n**Azure Event Grid Stream**\n\nFor an `Azure Event Grid` Stream, the `sink` properties are listed in the payload below.\n\n**Request:**\n```json\n{\n  \"name\": \"string\",\n  \"type\": \"eventgrid\",\n  \"sink\": {\n    \"azureSubscriptionId\": \"string\",\n    \"azureResourceGroup\": \"string\",\n    \"azureRegion\": \"string\"\n  }\n}\n```\n\n**Response:**\n```json\n{\n  \"id\": \"string\",\n  \"name\": \"string\",\n  \"type\": \"http\",\n  \"status\": \"active\",\n  \"sink\": {\n    \"azureSubscriptionId\": \"string\",\n    \"azureResourceGroup\": \"string\",\n    \"azureRegion\": \"string\",\n    \"azurePartnerTopic\": \"string\"\n  }\n}\n```\n\n**Datadog Stream**\n\nFor a `Datadog` Stream, the `sink` properties are listed in the payload below.\n\n**Request:**\n```json\n{\n  \"name\": \"string\",\n  \"type\": \"datadog\",\n  \"sink\": {\n    \"datadogRegion\": \"string\",\n    \"datadogApiKey\": \"string\"\n  }\n}\n```\n\n**Response:**\n```json\n{\n  \"id\": \"string\",\n  \"name\": \"string\",\n  \"type\": \"datadog\",\n  \"status\": \"active\",\n  \"sink\": {\n    \"datadogRegion\": \"string\",\n    \"datadogApiKey\": \"string\"\n  }\n}\n```\n\n**Splunk Stream**\n\nFor a `Splunk` Stream, the `sink` properties are listed in the payload below.\n\n**Request:**\n```json\n{\n  \"name\": \"string\",\n  \"type\": \"splunk\",\n  \"sink\": {\n    \"splunkDomain\": \"string\",\n    \"splunkToken\": \"string\",\n    \"splunkPort\": \"string\",\n    \"splunkSecure\": \"boolean\"\n  }\n}\n```\n\n**Response:**\n```json\n{\n  \"id\": \"string\",\n  \"name\": \"string\",\n  \"type\": \"splunk\",\n  \"status\": \"active\",\n  \"sink\": {\n    \"splunkDomain\": \"string\",\n    \"splunkToken\": \"string\",\n    \"splunkPort\": \"string\",\n    \"splunkSecure\": \"boolean\"\n  }\n}\n```\n\n**Sumo Logic Stream**\n\nFor a `Sumo Logic` Stream, the `sink` properties are listed in the payload below.\n\n**Request:**\n```json\n{\n  \"name\": \"string\",\n  \"type\": \"sumo\",\n  \"sink\": {\n    \"sumoSourceAddress\": \"string\"\n  }\n}\n```\n\n**Response:**\n```json\n{\n  \"id\": \"string\",\n  \"name\": \"string\",\n  \"type\": \"sumo\",\n  \"status\": \"active\",\n  \"sink\": {\n    \"sumoSourceAddress\": \"string\"\n  }\n}\n```\n"
      tags:
      - log-streams
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateLogStreamRequestContent'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CreateLogStreamRequestContent'
      responses:
        '200':
          description: Log stream created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateLogStreamResponseContent'
        '400':
          description: Invalid request body. The message will vary depending on the cause.
        '401':
          description: Invalid token.
          x-description-1: Invalid signature received for JSON Web Token validation.
        '403':
          description: 'Insufficient scope; expected any of: create:log_streams.'
          x-description-1: The account is not allowed to perform this operation.
        '409':
          description: You have reached the maximum number of log streams for your account.
        '429':
          description: Too many requests. Check the X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset headers.
      operationId: post_log-streams
      x-release-lifecycle: GA
      x-operation-name: create
      x-operation-group: logStreams
      security:
      - bearerAuth: []
      - oAuth2ClientCredentials:
        - create:log_streams
  /log-streams/{id}:
    get:
      summary: Get Log Stream by ID
      description: "Retrieve a log stream configuration and status.\n\n**Sample responses**\n\n**Amazon EventBridge Log Stream**\n\n```json\n{\n  \"id\": \"string\",\n  \"name\": \"string\",\n  \"type\": \"eventbridge\",\n  \"status\": \"active|paused|suspended\",\n  \"sink\": {\n    \"awsAccountId\": \"string\",\n    \"awsRegion\": \"string\",\n    \"awsPartnerEventSource\": \"string\"\n  }\n}\n```\n\n**HTTP Log Stream**\n\n```json\n{\n  \"id\": \"string\",\n  \"name\": \"string\",\n  \"type\": \"http\",\n  \"status\": \"active|paused|suspended\",\n  \"sink\": {\n    \"httpContentFormat\": \"JSONLINES|JSONARRAY\",\n    \"httpContentType\": \"string\",\n    \"httpEndpoint\": \"string\",\n    \"httpAuthorization\": \"string\"\n  }\n}\n```\n\n**Datadog Log Stream**\n\n```json\n{\n  \"id\": \"string\",\n  \"name\": \"string\",\n  \"type\": \"datadog\",\n  \"status\": \"active|paused|suspended\",\n  \"sink\": {\n    \"datadogRegion\": \"string\",\n    \"datadogApiKey\": \"string\"\n  }\n}\n```\n\n**Mixpanel**\n\n**Request:**\n\n```json\n{\n  \"name\": \"string\",\n  \"type\": \"mixpanel\",\n  \"sink\": {\n    \"mixpanelRegion\": \"string\",\n    \"mixpanelProjectId\": \"string\",\n    \"mixpanelServiceAccountUsername\": \"string\",\n    \"mixpanelServiceAccountPassword\": \"string\"\n  }\n}\n```\n\n**Response:**\n\n```json\n{\n  \"id\": \"string\",\n  \"name\": \"string\",\n  \"type\": \"mixpanel\",\n  \"status\": \"active\",\n  \"sink\": {\n    \"mixpanelRegion\": \"string\",\n    \"mixpanelProjectId\": \"string\",\n    \"mixpanelServiceAccountUsername\": \"string\",\n    \"mixpanelServiceAccountPassword\": \"string\"\n  }\n}\n```\n\n**Segment**\n\n**Request:**\n\n```json\n{\n  \"name\": \"string\",\n  \"type\": \"segment\",\n  \"sink\": {\n    \"segmentWriteKey\": \"string\"\n  }\n}\n```\n\n**Response:**\n\n```json\n{\n  \"id\": \"string\",\n  \"name\": \"string\",\n  \"type\": \"segment\",\n  \"status\": \"active\",\n  \"sink\": {\n    \"segmentWriteKey\": \"string\"\n  }\n}\n```\n\n**Splunk Log Stream**\n\n```json\n{\n  \"id\": \"string\",\n  \"name\": \"string\",\n  \"type\": \"splunk\",\n  \"status\": \"active|paused|suspended\",\n  \"sink\": {\n    \"splunkDomain\": \"string\",\n    \"splunkToken\": \"string\",\n    \"splunkPort\": \"string\",\n    \"splunkSecure\": \"boolean\"\n  }\n}\n```\n\n**Sumo Logic Log Stream**\n\n```json\n{\n  \"id\": \"string\",\n  \"name\": \"string\",\n  \"type\": \"sumo\",\n  \"status\": \"active|paused|suspended\",\n  \"sink\": {\n    \"sumoSourceAddress\": \"string\"\n  }\n}\n```\n\n**Status**\n\nThe `status` of a log stream maybe any of the following:\n\n1. `active` - Stream is currently enabled.\n2. `paused` - Stream is currently user disabled and will not attempt log delivery.\n3. `suspended` - Stream is currently disabled because of errors and will not attempt log delivery.\n"
      tags:
      - log-streams
      parameters:
      - name: id
        in: path
        description: The id of the log stream to get
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Returning log stream.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetLogStreamResponseContent'
        '401':
          description: Invalid token.
          x-description-1: Invalid signature received for JSON Web Token validation.
        '403':
          description: 'Insufficient scope; expected any of: read:log_streams.'
          x-description-1: The account is not allowed to perform this operation.
        '404':
          description: The log stream does not exist.
        '429':
          description: Too many requests. Check the X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset headers.
      operationId: get_log-streams_by_id
      x-release-lifecycle: GA
      x-operation-name: get
      x-operation-group: logStreams
      security:
      - bearerAuth: []
      - oAuth2ClientCredentials:
        - read:log_streams
    delete:
      summary: Delete Log Stream
      description: 'Delete a log stream.

        '
      tags:
      - log-streams
      parameters:
      - name: id
        in: path
        description: The id of the log stream to delete
        required: true
        schema:
          type: string
      responses:
        '204':
          description: The log stream was deleted.
        '400':
          description: Invalid request URI. The message will vary depending on the cause.
        '401':
          description: Invalid token.
          x-description-1: Invalid signature received for JSON Web Token validation.
        '403':
          description: 'Insufficient scope, expected: delete:log_streams.'
        '404':
          description: The log stream does not exist.
        '429':
          description: Too many requests. Check the X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset headers.
      operationId: delete_log-streams_by_id
      x-release-lifecycle: GA
      x-operation-name: delete
      x-operation-group: logStreams
      security:
      - bearerAuth: []
      - oAuth2ClientCredentials:
        - delete:log_streams
    patch:
      summary: Update a Log Stream
      description: "Update a log stream.\n\n**Examples of how to use the PATCH endpoint.**\n\nThe following fields may be updated in a PATCH operation:\n\n- name\n- status\n- sink\n\nNote: For log streams of type `eventbridge` and `eventgrid`, updating the `sink` is not permitted.\n\n**Update the status of a log stream**\n\n```json\n{\n  \"status\": \"active|paused\"\n}\n```\n\n**Update the name of a log stream**\n\n```json\n{\n  \"name\": \"string\"\n}\n```\n\n**Update the sink properties of a stream of type `http`**\n\n```json\n{\n  \"sink\": {\n    \"httpEndpoint\": \"string\",\n    \"httpContentType\": \"string\",\n    \"httpContentFormat\": \"JSONARRAY|JSONLINES\",\n    \"httpAuthorization\": \"string\"\n  }\n}\n```\n\n**Update the sink properties of a stream of type `datadog`**\n\n```json\n{\n  \"sink\": {\n    \"datadogRegion\": \"string\",\n    \"datadogApiKey\": \"string\"\n  }\n}\n```\n\n**Update the sink properties of a stream of type `splunk`**\n\n```json\n{\n  \"sink\": {\n    \"splunkDomain\": \"string\",\n    \"splunkToken\": \"string\",\n    \"splunkPort\": \"string\",\n    \"splunkSecure\": \"boolean\"\n  }\n}\n```\n\n**Update the sink properties of a stream of type `sumo`**\n\n```json\n{\n  \"sink\": {\n    \"sumoSourceAddress\": \"string\"\n  }\n}\n```\n"
      tags:
      - log-streams
      parameters:
      - name: id
        in: path
        description: The id of the log stream to get
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateLogStreamRequestContent'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/UpdateLogStreamRequestContent'
      responses:
        '200':
          description: Log stream updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateLogStreamResponseContent'
        '400':
          description: Invalid request body. The message will vary depending on the cause.
        '401':
          description: Invalid token.
          x-description-1: Invalid signature received for JSON Web Token validation.
        '403':
          description: 'Insufficient scope; expected any of: update:log_streams.'
          x-description-1: The account is not allowed to perform this operation.
        '429':
          description: Too many requests. Check the X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset headers.
      operationId: patch_log-streams_by_id
      x-release-lifecycle: GA
      x-operation-name: update
      x-operation-group: logStreams
      security:
      - bearerAuth: []
      - oAuth2ClientCredentials:
        - update:log_streams
components:
  schemas:
    CreateLogStreamEventBridgeRequestBody:
      type: object
      additionalProperties: false
      required:
      - type
      - sink
      properties:
        name:
          type: string
          description: log stream name
        type:
          $ref: '#/components/schemas/LogStreamEventBridgeEnum'
        isPriority:
          type: boolean
          description: True for priority log streams, false for non-priority
        filters:
          type: array
          description: Only logs events matching these filters will be delivered by the stream. If omitted or empty, all events will be delivered.
          items:
            $ref: '#/components/schemas/LogStreamFilter'
        pii_config:
          $ref: '#/components/schemas/LogStreamPiiConfig'
        sink:
          $ref: '#/components/schemas/LogStreamEventBridgeSink'
        startFrom:
          type: string
          description: The optional datetime (ISO 8601) to start streaming logs from
          default: '2021-03-01T19:57:29.532Z'
    LogStreamMixpanelEnum:
      type: string
      enum:
      - mixpanel
    LogStreamPiiConfig:
      type: object
      additionalProperties: false
      required:
      - log_fields
      properties:
        log_fields:
          type: array
          minItems: 1
          items:
            $ref: '#/components/schemas/LogStreamPiiLogFieldsEnum'
        method:
          $ref: '#/components/schemas/LogStreamPiiMethodEnum'
        algorithm:
          $ref: '#/components/schemas/LogStreamPiiAlgorithmEnum'
    LogStreamEventBridgeResponseSchema:
      type: object
      additionalProperties: true
      properties:
        id:
          type: string
          description: The id of the log stream
          format: log-stream-id
        name:
          type: string
          description: log stream name
        status:
          $ref: '#/components/schemas/LogStreamStatusEnum'
        type:
          $ref: '#/components/schemas/LogStreamEventBridgeEnum'
        isPriority:
          type: boolean
          description: True for priority log streams, false for non-priority
        filters:
          type: array
          description: Only logs events matching these filters will be delivered by the stream. If omitted or empty, all events will be delivered.
          items:
            $ref: '#/components/schemas/LogStreamFilter'
        pii_config:
          $ref: '#/components/schemas/LogStreamPiiConfig'
        sink:
          $ref: '#/components/schemas/LogStreamEventBridgeSink'
    CreateLogStreamResponseContent:
      oneOf:
      - $ref: '#/components/schemas/LogStreamHttpResponseSchema'
      - $ref: '#/components/schemas/LogStreamEventBridgeResponseSchema'
      - $ref: '#/components/schemas/LogStreamEventGridResponseSchema'
      - $ref: '#/components/schemas/LogStreamDatadogResponseSchema'
      - $ref: '#/components/schemas/LogStreamSplunkResponseSchema'
      - $ref: '#/components/schemas/LogStreamSumoResponseSchema'
      - $ref: '#/components/schemas/LogStreamSegmentResponseSchema'
      - $ref: '#/components/schemas/LogStreamMixpanelResponseSchema'
    LogStreamDatadogEnum:
      type: string
      enum:
      - datadog
    LogStreamSinkPatch:
      oneOf:
      - $ref: '#/components/schemas/LogStreamHttpSink'
      - $ref: '#/components/schemas/LogStreamDatadogSink'
      - $ref: '#/components/schemas/LogStreamSplunkSink'
      - $ref: '#/components/schemas/LogStreamSumoSink'
      - $ref: '#/components/schemas/LogStreamSegmentSink'
      - $ref: '#/components/schemas/LogStreamMixpanelSinkPatch'
    CreateLogStreamSplunkRequestBody:
      type: object
      additionalProperties: false
      required:
      - type
      - sink
      properties:
        name:
          type: string
          description: log stream name
        type:
          $ref: '#/components/schemas/LogStreamSplunkEnum'
        isPriority:
          type: boolean
          description: True for priority log streams, false for non-priority
        filters:
          type: array
          description: Only logs events matching these filters will be delivered by the stream. If omitted or empty, all events will be delivered.
          items:
            $ref: '#/components/schemas/LogStreamFilter'
        pii_config:
          $ref: '#/components/schemas/LogStreamPiiConfig'
        sink:
          $ref: '#/components/schemas/LogStreamSplunkSink'
        startFrom:
          type: string
          description: The optional datetime (ISO 8601) to start streaming logs from
          default: '2021-03-01T19:57:29.532Z'
    CreateLogStreamHttpRequestBody:
      type: object
      additionalProperties: false
      required:
      - type
      - sink
      properties:
        name:
          type: string
          description: log stream name
        type:
          $ref: '#/components/schemas/LogStreamHttpEnum'
        isPriority:
          type: boolean
          description: True for priority log streams, false for non-priority
        filters:
          type: array
          description: Only logs events matching these filters will be delivered by the stream. If omitted or empty, all events will be delivered.
          items:
            $ref: '#/components/schemas/LogStreamFilter'
        pii_config:
          $ref: '#/components/schemas/LogStreamPiiConfig'
        sink:
          $ref: '#/components/schemas/LogStreamHttpSink'
        startFrom:
          type: string
          description: The optional datetime (ISO 8601) to start streaming logs from
          default: '2021-03-01T19:57:29.532Z'
    LogStreamEventBridgeSink:
      type: object
      additionalProperties: false
      required:
      - awsAccountId
      - awsRegion
      properties:
        awsAccountId:
          type: string
          description: AWS account ID
          pattern: ^\d{12}$
        awsRegion:
          $ref: '#/components/schemas/LogStreamEventBridgeSinkRegionEnum'
        awsPartnerEventSource:
          type: string
          description: AWS EventBridge partner event source
    LogStreamMixpanelRegionEnum:
      type: string
      description: Mixpanel Region
      enum:
      - us
      - eu
    LogStreamSplunkSink:
      type: object
      additionalProperties: false
      required:
      - splunkDomain
      - splunkToken
      - splunkPort
      - splunkSecure
      properties:
        splunkDomain:
          type: string
          description: Splunk URL Endpoint
        splunkPort:
          type: string
          description: Port
          pattern: ^[0-9]*$
        splunkToken:
          type: string
          description: Splunk token
        splunkSecure:
          type: boolean
          description: Verify TLS certificate
    LogStreamEventGridSink:
      type: object
      additionalProperties: false
      required:
      - azureSubscriptionId
      - azureRegion
      - azureResourceGroup
      properties:
        azureSubscriptionId:
          type: string
          description: Subscription ID
          pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
        azureRegion:
          $ref: '#/components/schemas/LogStreamEventGridRegionEnum'
        azureResourceGroup:
          type: string
          description: Resource Group
        azurePartnerTopic:
          type: string
          description: Partner Topic
    UpdateLogStreamResponseContent:
      oneOf:
      - $ref: '#/components/schemas/LogStreamHttpResponseSchema'
      - $ref: '#/components/schemas/LogStreamEventBridgeResponseSchema'
      - $ref: '#/components/schemas/LogStreamEventGridResponseSchema'
      - $ref: '#/components/schemas/LogStreamDatadogResponseSchema'
      - $ref: '#/components/schemas/LogStreamSplunkResponseSchema'
      - $ref: '#/components/schemas/LogStreamSumoResponseSchema'
      - $ref: '#/components/schemas/LogStreamSegmentResponseSchema'
      - $ref: '#/components/schemas/LogStreamMixpanelResponseSchema'
    LogStreamPiiMethodEnum:
      type: string
      enum:
      - mask
      - hash
    LogStreamHttpResponseSchema:
      type: object
      additionalProperties: true
      properties:
        id:
          type: string
          description: The id of the log stream
          format: log-stream-id
        name:
          type: string
          description: log stream name
        status:
          $ref: '#/components/schemas/LogStreamStatusEnum'
        type:
          $ref: '#/components/schemas/LogStreamHttpEnum'
        isPriority:
          type: boolean
          description: True for priority log streams, false for non-priority
        filters:
          type: array
          description: Only logs events matching these filters will be delivered by the stream. If omitted or empty, all events will be delivered.
          items:
            $ref: '#/components/schemas/LogStreamFilter'
        pii_config:
          $ref: '#/components/schemas/LogStreamPiiConfig'
        sink:
          $ref: '#/components/schemas/LogStreamHttpSink'
    LogStreamResponseSchema:
      oneOf:
      - $ref: '#/components/schemas/LogStreamHttpResponseSchema'
      - $ref: '#/components/schemas/LogStreamEventBridgeResponseSchema'
      - $ref: '#/components/schemas/LogStreamEventGridResponseSchema'
      - $ref: '#/components/schemas/LogStreamDatadogResponseSchema'
      - $ref: '#/components/schemas/LogStreamSplunkResponseSchema'
      - $ref: '#/components/schemas/LogStreamSumoResponseSchema'
      - $ref: '#/components/schemas/LogStreamSegmentResponseSchema'
      - $ref: '#/components/schemas/LogStreamMixpanelResponseSchema'
    LogStreamPiiAlgorithmEnum:
      type: string
      enum:
      - xxhash
    LogStreamFilterTypeEnum:
      type: string
      description: Filter type. Currently `category` is the only valid type.
      enum:
      - category
    LogStreamEventBridgeEnum:
      type: string
      enum:
      - eventbridge
    LogStreamSegmentEnum:
      type: string
      enum:
      - segment
    LogStreamHttpEnum:
      type: string
      enum:
      - http
    LogStreamSumoSink:
      type: object
      additionalProperties: false
      required:
      - sumoSourceAddress
      properties:
        sumoSourceAddress:
          type: string
          description: HTTP Source Address
    LogStreamSplunkEnum:
      type: string
      enum:
      - splunk
    CreateLogStreamSegmentRequestBody:
      type: object
      additionalProperties: false
      required:
      - type
      - sink
      properties:
        name:
          type: string
          description: log stream name
        type:
          $ref: '#/components/schemas/LogStreamSegmentEnum'
        isPriority:
          type: boolean
          description: True for priority log streams, false for non-priority
        filters:
          type: array
          description: Only logs events matching these filters will be delivered by the stream. If omitted or empty, all events will be delivered.
          items:
            $ref: '#/components/schemas/LogStreamFilter'
        pii_config:
          $ref: '#/components/schemas/LogStreamPiiConfig'
        sink:
          $ref: '#/components/schemas/LogStreamSegmentSinkWriteKey'
        startFrom:
          type: string
          description: The optional datetime (ISO 8601) to start streaming logs from
          default: '2021-03-01T19:57:29.532Z'
    LogStreamSumoEnum:
      type: string
      enum:
      - sumo
    UpdateLogStreamRequestContent:
      type: object
      additionalProperties: false
      properties:
        name:
          type: string
          description: log stream name
        status:
          $ref: '#/components/schemas/LogStreamStatusEnum'
        isPriority:
          type: boolean
          description: True for priority log streams, false for non-priority
        filters:
          type: array
          description: Only logs events matching these filters will be delivered by the stream. If omitted or empty, all events will be delivered.
          items:
            $ref: '#/components/schemas/LogStreamFilter'
        pii_config:
          $ref: '#/components/schemas/LogStreamPiiConfig'
        sink:
          $ref: '#/components/schemas/LogStreamSinkPatch'
    LogStreamFilter:
      type: object
      additionalProperties: true
      properties:
        type:
          $ref: '#/components/schemas/LogStreamFilterTypeEnum'
        name:
          $ref: '#/components/schemas/LogStreamFilterGroupNameEnum'
    LogStreamEventGridEnum:
      type: string
      enum:
      - eventgrid
    CreateLogStreamSumoRequestBody:
      type: object
      additionalProperties: false
      required:
      - type
      - sink
      properties:
        name:
          type: string
          description: log stream name
        type:
          $ref: '#/components/schemas/LogStreamSumoEnum'
        isPriority:
          type: boolean
          description: True for priority log streams, false for non-priority
        filters:
          type: array
          description: Only logs events matching these filters will be delivered by the stream. If omitted or empty, all events will be delivered.
          items:
            $ref: '#/components/schemas/LogStreamFilter'
        pii_config:
          $ref: '#/components/schemas/LogStreamPiiConfig'
        sink:
          $ref: '#/components/schemas/LogStreamSumoSink'
        startFrom:
          type: string
          description: The optional datetime (ISO 8601) to start streaming logs from
          default: '2021-03-01T19:57:29.532Z'
    LogStreamMixpanelSink:
      type: object
      additionalProperties: false
      required:
      - mixpanelRegion
      - mixpanelProjectId
      - mixpanelServiceAccountUsername
      - mixpanelServiceAccountPassword
      properties:
        mixpanelRegion:
          $ref: '#/components/schemas/LogStreamMixpanelRegionEnum'
        mixpanelProjectId:
          type: string
          description: Mixpanel Project Id
          pattern: ^\d+$
        mixpanelServiceAccountUsername:
          type: string
          description: Mixpanel Service Account Username
          pattern: ^[^:]+$
        mixpanelServiceAccountPassword:
          type: string
          description: Mixpanel Service Account Password
          pattern: ^[^:]+$
    LogStreamPiiLogFieldsEnum:
      type: string
      enum:
      - first_name
      - last_name
      - username
      - email
      - phone
      - address
    CreateLogStreamRequestContent:
      oneOf:
      - $ref: '#/components/schemas/CreateLogStreamHttpRequestBody'
      - $ref: '#/components/schemas/CreateLogStreamEventBridgeRequestBody'
      - $ref: '#/components/schemas/CreateLogStreamEventGridRequestBody'
      - $ref: '#/components/schemas/CreateLogStreamDatadogRequestBody'
      - $ref: '#/components/schemas/CreateLogStreamSplunkRequestBody'
      - $ref: '#/components/schemas/CreateLogStreamSumoRequestBody'
      - $ref: '#/components/schemas/CreateLogStreamSegmentRequestBody'
      - $ref: '#/components/schemas/CreateLogStreamMixpanelRequestBody'
    LogStreamMixpanelSinkPatch:
      type: object
      additionalProperties: false
      required:
      - mixpanelRegion
      - mixpanelProjectId
      - mixpanelServiceAccountUsername
      properties:
        mixpanelRegion:
          $ref: '#/components/schemas/LogStreamMixpanelRegionEnum'
        mixpanelProjectId:
          type: string
          description: Mixpanel Project Id
          pattern: ^\d+$
        mixpanelServiceAccountUsername:
          type: string
          description: Mixpanel Service Account Username
          pattern: ^[^:]+$
        mixpanelServiceAccountPassword:
          type: string
          description: Mixpanel Service Account Password
          pattern: ^[^:]+$
    LogStreamMixpanelResponseSchema:
      type: object
      additionalProperties: true
      properties:
        id:
          type: string
          description: The id of the log stream
          format: log-stream-id
        name:
          type: string
          description: log st

# --- truncated at 32 KB (45 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/auth0/refs/heads/main/openapi/auth0-log-streams-api-openapi.yml