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

# Create or replace org automation

> Create or replace org automation. If there is an existing org automation with the same name as the one specified in the request, will replace the existing org automation with the provided fields



## OpenAPI

````yaml /openapi.yaml put /v1/org_automation
openapi: 3.1.1
info:
  version: 1.0.0
  title: Braintrust API
  description: >-
    API specification for the backend data server. The API is hosted globally at

    https://api.braintrust.dev or in your own environment.


    You can access the OpenAPI spec for this API at
    https://github.com/braintrustdata/braintrust-openapi.
  license:
    name: Apache 2.0
servers:
  - url: https://api.braintrust.dev
security:
  - bearerAuth: []
  - {}
paths:
  /v1/org_automation:
    put:
      tags:
        - OrgAutomations
      summary: Create or replace org automation
      description: >-
        Create or replace org automation. If there is an existing org automation
        with the same name as the one specified in the request, will replace the
        existing org automation with the provided fields
      operationId: putOrgAutomation
      requestBody:
        description: Any desired information about the new org automation object
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateOrgAutomation'
      responses:
        '200':
          description: Returns the new org automation object
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrgAutomation'
        '400':
          description: >-
            The request was unacceptable, often due to missing a required
            parameter
          content:
            text/plain:
              schema:
                type: string
            application/json:
              schema: {}
        '401':
          description: No valid API key provided
          content:
            text/plain:
              schema:
                type: string
            application/json:
              schema: {}
        '403':
          description: The API key doesn’t have permissions to perform the request
          content:
            text/plain:
              schema:
                type: string
            application/json:
              schema: {}
        '429':
          description: >-
            Too many requests hit the API too quickly. We recommend an
            exponential backoff of your requests
          headers:
            Retry-After:
              schema:
                type: string
          content:
            text/plain:
              schema:
                type: string
            application/json:
              schema: {}
        '500':
          description: Something went wrong on Braintrust's end. (These are rare.)
          content:
            text/plain:
              schema:
                type: string
            application/json:
              schema: {}
      security:
        - bearerAuth: []
        - {}
components:
  schemas:
    CreateOrgAutomation:
      type: object
      properties:
        org_id:
          type: string
          format: uuid
          description: >-
            Unique identifier for the organization that the org automation
            belongs under
        name:
          type: string
          description: Name of the project automation
        description:
          type:
            - string
            - 'null'
          description: Textual description of the project automation
        config:
          type: object
          properties:
            event_type:
              type: string
              enum:
                - retention
              description: The type of automation.
            object_type:
              $ref: '#/components/schemas/RetentionObjectType'
            retention_days:
              type: integer
              minimum: 0
              description: The number of days to retain the object
          required:
            - event_type
            - object_type
            - retention_days
          description: The configuration for the org automation rule
      required:
        - org_id
        - name
        - config
    OrgAutomation:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Unique identifier for the project automation
        org_id:
          type: string
          format: uuid
          description: >-
            Unique identifier for the organization that the org automation
            belongs under
        user_id:
          type:
            - string
            - 'null'
          format: uuid
          description: Identifies the user who created the project automation
        created:
          type:
            - string
            - 'null'
          format: date-time
          description: Date of project automation creation
        name:
          type: string
          description: Name of the project automation
        description:
          type:
            - string
            - 'null'
          description: Textual description of the project automation
        config:
          type: object
          properties:
            event_type:
              type: string
              enum:
                - retention
              description: The type of automation.
            object_type:
              $ref: '#/components/schemas/RetentionObjectType'
            retention_days:
              type: integer
              minimum: 0
              description: The number of days to retain the object
          required:
            - event_type
            - object_type
            - retention_days
          description: The configuration for the org automation rule
      required:
        - id
        - org_id
        - name
        - config
    RetentionObjectType:
      type: string
      enum:
        - project_logs
        - experiment
        - dataset
      description: The object type that the retention policy applies to
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API key or JWT
      description: >-
        Most Braintrust endpoints are authenticated by providing your API key as
        a header `Authorization: Bearer [api_key]` to your HTTP request. You can
        create an API key in the Braintrust [organization settings
        page](https://www.braintrustdata.com/app/settings?subroute=api-keys).

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.