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

# Invoke

> Invoke executes a function at a specific commit with the provided input data.



## OpenAPI

````yaml https://spec.speakeasy.com/conductor-one/conductorone/my-source-with-code-samples post /api/v1/functions/{function_id}/invoke
openapi: 3.1.0
info:
  description: The C1 API is a HTTP API for managing C1 resources.
  title: C1 API
  version: 0.1.0-alpha
servers:
  - description: The C1 API server for the current tenant.
    url: https://{tenantDomain}.conductor.one
    variables:
      tenantDomain:
        default: example
        description: The domain of the tenant to use for this request.
security:
  - bearerAuth: []
    oauth: []
paths:
  /api/v1/functions/{function_id}/invoke:
    post:
      tags:
        - Function
      summary: Invoke
      description: >-
        Invoke executes a function at a specific commit with the provided input
        data.
      operationId: c1.api.functions.v1.FunctionsService.Invoke
      parameters:
        - in: path
          name: function_id
          required: true
          schema:
            description: The ID of the function to invoke.
            readOnly: false
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/c1.api.functions.v1.FunctionsServiceInvokeRequestInput
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/c1.api.functions.v1.FunctionsServiceInvokeResponse
          description: Successful response
      x-codeSamples:
        - lang: go
          label: Invoke
          source: "package main\n\nimport(\n\t\"context\"\n\t\"github.com/conductorone/conductorone-sdk-go/pkg/models/shared\"\n\tconductoronesdkgo \"github.com/conductorone/conductorone-sdk-go\"\n\t\"github.com/conductorone/conductorone-sdk-go/pkg/models/operations\"\n\t\"log\"\n)\n\nfunc main() {\n    ctx := context.Background()\n\n    s := conductoronesdkgo.New(\n        conductoronesdkgo.WithSecurity(shared.Security{\n            BearerAuth: \"<YOUR_BEARER_TOKEN_HERE>\",\n            Oauth: \"<YOUR_OAUTH_HERE>\",\n        }),\n    )\n\n    res, err := s.Functions.Invoke(ctx, operations.C1APIFunctionsV1FunctionsServiceInvokeRequest{\n        FunctionID: \"<id>\",\n    })\n    if err != nil {\n        log.Fatal(err)\n    }\n    if res.FunctionsServiceInvokeResponse != nil {\n        // handle response\n    }\n}"
        - lang: typescript
          label: Typescript (SDK)
          source: >-
            import { ConductoroneSDKTypescript } from
            "conductorone-sdk-typescript";


            const conductoroneSDKTypescript = new ConductoroneSDKTypescript({
              security: {
                bearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
                oauth: "<YOUR_OAUTH_HERE>",
              },
            });


            async function run() {
              const result = await conductoroneSDKTypescript.functions.invoke({
                functionId: "<id>",
              });

              console.log(result);
            }


            run();
components:
  schemas:
    c1.api.functions.v1.FunctionsServiceInvokeRequestInput:
      description: >
        The FunctionsServiceInvokeRequest message.


        This message contains a oneof named arg. Only a single field of the
        following list may be set at a time:
          - json
      properties:
        commitId:
          description: The commit ID specifying which version of the function code to run.
          readOnly: false
          type: string
        json:
          description: >-
            The JSON-encoded input data passed to the function.

            This field is part of the `arg` oneof.

            See the documentation for
            `c1.api.functions.v1.FunctionsServiceInvokeRequest` for more
            details.
          format: base64
          nullable: true
          readOnly: false
          type: string
        vfsId:
          description: >-
            Optional VFS volume ID to attach to this invocation. If empty, VFS
            operations will error.
          readOnly: false
          type: string
      title: Functions Service Invoke Request
      type: object
      x-speakeasy-name-override: FunctionsServiceInvokeRequest
    c1.api.functions.v1.FunctionsServiceInvokeResponse:
      description: >
        The FunctionsServiceInvokeResponse message.


        This message contains a oneof named resp. Only a single field of the
        following list may be set at a time:
          - json
      properties:
        invocationId:
          description: >-
            The ID of the created invocation, used to track execution status and
            retrieve results.
          readOnly: false
          type: string
        json:
          deprecated: true
          description: >-
            Deprecated. The JSON-encoded output returned by the function.

            This field is part of the `resp` oneof.

            See the documentation for
            `c1.api.functions.v1.FunctionsServiceInvokeResponse` for more
            details.
          format: base64
          nullable: true
          readOnly: false
          type: string
      title: Functions Service Invoke Response
      type: object
      x-speakeasy-name-override: FunctionsServiceInvokeResponse
  securitySchemes:
    bearerAuth:
      scheme: bearer
      type: http
    oauth:
      description: >-
        This API uses OAuth2 with the Client Credential flow.

        Client Credentials must be sent in the BODY, not the headers.

        For an example of how to implement this, refer to the
        [c1TokenSource.Token()](https://github.com/ConductorOne/conductorone-sdk-go/blob/3375fe7c0126d17e7ec4e711693dee7b791023aa/token_source.go#L101-L187)
        function.
      flows:
        clientCredentials:
          scopes: {}
          tokenUrl: /auth/v1/token
      type: oauth2

````