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

# Update a Callout

> Update a Callout. Omit or leave the relevant AuthHeaderValue or OAuthClientSecret empty to preserve it. A replacement is required after destination, authentication, identity, or security changes that affect where the credential is sent.



## OpenAPI

````yaml /swagger/5.16/enterprise-developer-portal-swagger.yaml put /callouts/{callout_id}
openapi: 3.1.0
info:
  title: Tyk Developer Portal
  description: >-

    <img src="https://tyk.io/docs/img/developer_portal_swagger_image.png"
    width="963" height="250">

    ## <a name="introduction"></a> Introduction

    The Tyk Enterprise Developer Portal Management API offers programmatic
    access to all portal resources that your instance of the portal manages.
    This API repeats functionality of the user interface and enables APIs
    consumers integrating their portal instances with their other IT systems
    such as billings, CRMs, ITSM systems and other software.


    ## Authentication

    This API requires an admin authorisation token that is available for admin
    users of the portal in the profile page.
  version: 1.18.0
servers:
  - url: http://localhost:3001/portal-api
security: []
tags:
  - name: Providers
    description: API Providers connected to this portal instance
  - name: Users
    description: Portal admins and API consumers
  - name: Organisations
    description: Organisation of API consumers and the portal admins
  - name: Teams
    description: Teams of API consumers and the portal admins
  - name: Products
    description: >-
      Marketing description and visibility of the API Products surfaced in this
      portal instance
  - name: Tutorials for API Products
    description: Tutorials that are defined for the API products
  - name: API documentation for API Products
    description: OpenAPI specs for APIs included into the API Prodcuts
  - name: Plans
    description: >-
      Marketing description and visibility settings of usage plans defined in
      this portal instance
  - name: Catalogues
    description: Catalogues of API Products listed on this portal instance
  - name: Catalogue audiences
    description: Audience management
  - name: Access requests
    description: Access requests to API Products
  - name: Applications and credentials
    description: Developer applications and API credential for developers
  - name: Portal configuration
    description: Show the current portal configuration
  - name: Pages and content
    description: Pages and content on the pages
  - name: Callouts
    description: >-
      Reusable server-side HTTP destinations for custom Page forms and
      JavaScript. Available only when Callouts.Enable is true
  - name: Themes
    description: Management of the portal's visual themes
  - name: Custom Attributes
    description: Extend already existing models (User) by adding custom attributes
  - name: OAuth2.0 providers
    description: OAuth2.0 providers registered in the portal
  - name: Webhooks
    description: Webhooks management
  - name: Posts
    description: Posts management
  - name: SSO Profiles
    description: SSO Profiles management
  - name: Tags
    description: >-
      Tags management: link API Products to blog posts and control their
      display.
paths:
  /callouts/{callout_id}:
    parameters:
      - description: Numeric Callout ID
        in: path
        name: callout_id
        required: true
        schema:
          type: integer
          example: 1
    put:
      tags:
        - Callouts
      summary: Update a Callout
      description: >-
        Update a Callout. Omit or leave the relevant AuthHeaderValue or
        OAuthClientSecret empty to preserve it. A replacement is required after
        destination, authentication, identity, or security changes that affect
        where the credential is sent.
      operationId: update-callout
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Callout-update'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Callout-show'
          description: OK
        '403':
          description: >-
            Authentication is missing or invalid, or access to Callouts is
            denied
        '422':
          description: >-
            The Callout does not exist, or the request cannot be decoded,
            validated, or saved
      security:
        - AdminAPIToken: []
components:
  schemas:
    Callout-update:
      allOf:
        - $ref: '#/components/schemas/Callout-write'
        - type: object
          properties:
            AuthHeaderValue:
              type:
                - string
                - 'null'
              maxLength: 4096
              writeOnly: true
              description: >-
                Empty, null, or omitted preserves the saved value when
                static_header remains selected and no destination or security
                change requires replacement.
              example: Bearer secret
            OAuthClientSecret:
              type:
                - string
                - 'null'
              maxLength: 4096
              writeOnly: true
              description: >-
                Empty, null, or omitted preserves the saved value when
                oauth2_client_credentials remains selected and no destination or
                security change requires replacement.
              example: client-secret
    Callout-show:
      allOf:
        - $ref: '#/components/schemas/Callout-write'
        - type: object
          properties:
            ID:
              type: integer
              example: 1
            CID:
              type: string
              description: Opaque identifier used by the browser Callout endpoint
            CreatedAt:
              type: string
            UpdatedAt:
              type: string
    Callout-write:
      type: object
      properties:
        Name:
          type: string
          description: Administrator-facing unique name
          example: Create Salesforce case
        TargetURL:
          type: string
          format: uri
          example: https://gateway.internal.example.com/support/cases
        Method:
          type: string
          enum:
            - POST
            - PUT
            - PATCH
        AuthenticationType:
          type: string
          enum:
            - static_header
            - oauth2_client_credentials
            - none
          default: static_header
          description: Authentication Portal uses for the destination request
        AuthHeaderName:
          type: string
          description: >-
            Required when AuthenticationType is static_header. Portal-managed,
            hop-by-hop, and proxy header names are rejected, including Accept,
            Connection, Content-Length, Content-Type, Host, Keep-Alive, TE,
            Trailer, Transfer-Encoding, Upgrade, X-Callout-Request-ID, and any
            name beginning with Proxy-.
          example: X-Portal-Callout-Key
        OAuthTokenURL:
          type: string
          format: uri
          description: Required when AuthenticationType is oauth2_client_credentials
          example: https://identity.example.com/oauth/token
        OAuthClientID:
          type: string
          maxLength: 1024
          description: Required when AuthenticationType is oauth2_client_credentials
          example: portal-callouts
        OAuthScopes:
          type: string
          maxLength: 4096
          description: Optional space-separated OAuth scope tokens
          example: cases.write profile
        IncludeActorIdentity:
          type: boolean
          default: false
          description: >-
            Include the authenticated Portal user's CID and email address in the
            outbound request
        TLSInsecureSkipVerify:
          type: boolean
          default: false
          description: >-
            Allow unverified TLS certificates for the target and OAuth token
            endpoint
        Timeout:
          type: integer
          minimum: 1
          maximum: 10
          default: 5
          description: >-
            Outbound request timeout in seconds, separate from the Portal
            request body read timeout
        Enabled:
          type: boolean
          default: false
  securitySchemes:
    AdminAPIToken:
      type: apiKey
      in: header
      name: Authorization

````