We use cookies to enhance your experience and measure how the site performs. Choose "Essential Only" to disable analytics. Read our Privacy Policy.

    Odeus Docs

    Update Action

    Update an existing action in an integration

    Update Action

    Update an existing action in an integration

    Using our API via a dedicated deployment? Just replace api.odeus.ai with your deployment's base URL: <deployment-url>/api/public

    Updates an existing action in an integration. This replaces the action configuration with the provided values.

    Required Scopes

    This endpoint requires the INTEGRATION_API scope.

    Path Parameters

    ParameterTypeRequiredDescription
    integrationIdstringYesUUID of the integration
    actionIdstringYesUUID of the action to update

    Request Body

    ParameterTypeRequiredDescription
    namestringYesAction name (max 100 characters)
    descriptionstringNoAction description (max 1,000 characters)
    codestringNoJavaScript code to execute
    inputFieldsarrayNoInput fields for the action

    See Create Action for the full input field schema.

    Example

    const axios = require("axios");
    
    async function updateAction(integrationId, actionId) {
      const response = await axios.put(
        `https://api.odeus.ai/integrations/v1/${integrationId}/actions/${actionId}`,
        {
          name: "Get User Data v2",
          description: "Updated action with additional fields",
          code: `
            const response = await fetch('https://api.example.com/v2/users/' + inputs.userId);
            return await response.json();
          `,
          inputFields: [
            {
              label: "User ID",
              type: "TEXT",
              required: true
            },
            {
              label: "Format",
              type: "SELECT",
              options: [
                { label: "JSON", value: "json" },
                { label: "XML", value: "xml" }
              ],
              required: false
            }
          ]
        },
        {
          headers: {
            Authorization: "Bearer YOUR_API_KEY",
            "Content-Type": "application/json"
          }
        }
      );
    
      console.log("Updated action:", response.data.action);
    }
    
    updateAction("550e8400-e29b-41d4-a716-446655440000", "660e8400-e29b-41d4-a716-446655440001");
    

    Response Format

    Success Response (200 OK)

    {
      action: {
        id: string;
        name: string;
        slug: string;
        description: string;
        code: string | null;
        order: number;
        inputFields: Array<{
          slug: string;
          label: string;
          type: string;
          description: string;
          placeholder: string | null;
          required: boolean;
          order: number;
          options: Array<{label: string, value: string}&gt; | null;
          allowMultiSelect: boolean | null;
          contextActionId: string | null;
        }>;
      };
    }
    

    Error Handling

    Status CodeDescription
    400Invalid request body or IDs
    401Invalid or missing API key
    403No access to this integration
    404Integration or action not found
    409Action with this name already exists
    429Rate limit exceeded

    Odeus intentionally blocks browser-origin requests to protect your API key and ensure your applications remain secure. For more information, please see our guide on API Key Best Practices.