> ## Documentation Index
> Fetch the complete documentation index at: https://docs.platinur.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Api Assistant Task Source Created

> Durable "source created" marker for an assistant source-proposal card (renderSourceProposalCard
in app.js). The chat re-renders that card from the task record on every SSE/poll update, so a
client-only flag can't stop the Create buttons from reappearing (and the same source being created
twice) — this persists the created integration id onto task.response.proposed_source so every
future render of this task is terminal. Idempotent: setting it again just overwrites the same
fields; a no-op (still 200) if the task never carried a proposed_source.



## OpenAPI

````yaml /api/openapi.json post /api/assistant/tasks/{task_id}/source-created
openapi: 3.1.0
info:
  description: >-
    Environment-aware APIs for Platinur configuration, integrations, operations,
    promotions, scheduling, monitoring, and assistant tasks.
  title: Platinur Control Plane API
  version: 1.0.0-rc7
servers:
  - description: Local Platinur control-plane API
    url: http://localhost:8080
security: []
paths:
  /api/assistant/tasks/{task_id}/source-created:
    post:
      tags:
        - Assistant
      summary: Api Assistant Task Source Created
      description: >-
        Durable "source created" marker for an assistant source-proposal card
        (renderSourceProposalCard

        in app.js). The chat re-renders that card from the task record on every
        SSE/poll update, so a

        client-only flag can't stop the Create buttons from reappearing (and the
        same source being created

        twice) — this persists the created integration id onto
        task.response.proposed_source so every

        future render of this task is terminal. Idempotent: setting it again
        just overwrites the same

        fields; a no-op (still 200) if the task never carried a proposed_source.
      operationId: >-
        api_assistant_task_source_created_api_assistant_tasks__task_id__source_created_post
      parameters:
        - in: path
          name: task_id
          required: true
          schema:
            title: Task Id
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SourceCreatedRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema: {}
          description: Successful Response
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
          description: Validation Error
components:
  schemas:
    SourceCreatedRequest:
      properties:
        integration_id:
          title: Integration Id
          type: string
        integration_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Integration Name
      required:
        - integration_id
      title: SourceCreatedRequest
      type: object
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          title: Detail
          type: array
      title: HTTPValidationError
      type: object
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          title: Location
          type: array
        msg:
          title: Message
          type: string
        type:
          title: Error Type
          type: string
      required:
        - loc
        - msg
        - type
      title: ValidationError
      type: object

````