> ## Documentation Index
> Fetch the complete documentation index at: https://conductorone-docs-mcp-bridge-private-server.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Search

> Search searches for functions based on criteria



## OpenAPI

````yaml https://spec.speakeasy.com/conductor-one/conductorone/my-source-with-code-samples post /api/v1/search/functions
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/search/functions:
    post:
      tags:
        - Function
      summary: Search
      description: Search searches for functions based on criteria
      operationId: c1.api.functions.v1.FunctionsSearch.Search
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/c1.api.functions.v1.FunctionsSearchRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/c1.api.functions.v1.FunctionsSearchResponse
          description: Successful response
      x-codeSamples:
        - lang: go
          label: Search
          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\"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.FunctionsSearch.Search(ctx, nil)\n    if err != nil {\n        log.Fatal(err)\n    }\n    if res.FunctionsSearchResponse != 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.functionsSearch.search();

              console.log(result);
            }


            run();
components:
  schemas:
    c1.api.functions.v1.FunctionsSearchRequest:
      description: The FunctionsSearchRequest message.
      properties:
        functionTypes:
          description: The functionTypes field.
          items:
            enum:
              - FUNCTION_TYPE_UNSPECIFIED
              - FUNCTION_TYPE_ANY
              - FUNCTION_TYPE_CODE_MODE
            type: string
            x-speakeasy-unknown-values: allow
          type:
            - array
            - 'null'
        pageSize:
          description: The pageSize field.
          format: int32
          type:
            - integer
            - 'null'
        pageToken:
          description: The pageToken field.
          type:
            - string
            - 'null'
        query:
          description: The query field.
          type:
            - string
            - 'null'
      title: Functions Search Request
      type: object
      x-speakeasy-name-override: FunctionsSearchRequest
    c1.api.functions.v1.FunctionsSearchResponse:
      description: The FunctionsSearchResponse message.
      properties:
        list:
          description: The list field.
          items:
            $ref: '#/components/schemas/c1.api.functions.v1.Function'
          type:
            - array
            - 'null'
        nextPageToken:
          description: The nextPageToken field.
          type:
            - string
            - 'null'
      title: Functions Search Response
      type: object
      x-speakeasy-name-override: FunctionsSearchResponse
    c1.api.functions.v1.Function:
      description: Function represents a customer-provided code extension in the API
      properties:
        createdAt:
          format: date-time
          readOnly: true
          type:
            - string
            - 'null'
        deletedAt:
          format: date-time
          readOnly: true
          type:
            - string
            - 'null'
        description:
          description: The description field.
          type:
            - string
            - 'null'
        displayName:
          description: The displayName field.
          type:
            - string
            - 'null'
        functionType:
          description: The functionType field.
          enum:
            - FUNCTION_TYPE_UNSPECIFIED
            - FUNCTION_TYPE_ANY
            - FUNCTION_TYPE_CODE_MODE
          type:
            - string
            - 'null'
          x-speakeasy-unknown-values: allow
        head:
          description: The head field.
          type:
            - string
            - 'null'
        id:
          description: The id field.
          type:
            - string
            - 'null'
        isDraft:
          description: The isDraft field.
          type:
            - boolean
            - 'null'
        outboundNetworkAllowlist:
          description: The outboundNetworkAllowlist field.
          items:
            type: string
          type:
            - array
            - 'null'
        publishedCommitId:
          description: The publishedCommitId field.
          type:
            - string
            - 'null'
        scopedRoleIds:
          description: >-
            Scoped role IDs define the permissions granted to this function when
            calling
             ConductorOne APIs. These are role IDs (not service roles) that get resolved
             to their service roles at authentication time.

             Currently only the "Read-Only Administrator" role (system:viewer) is supported.
             The role ID can be obtained from the roles API.
          items:
            type: string
          type:
            - array
            - 'null'
        secret:
          additionalProperties:
            type: string
          description: The secret field.
          type: object
        updatedAt:
          format: date-time
          readOnly: true
          type:
            - string
            - 'null'
        useSpn:
          description: >-
            FN-347 transition flag. When true, the function authenticates to
            c1-api
             as user:<sp_id> via the AssumeIdentity token exchange using its
             ServicePrincipalBinding; when false, it authenticates as
             function:<id>. Read-only from clients: set by CreateFunction (when the
             tenant has completed the FunctionsToSPN migration) and by the migration
             itself, never by UpdateFunction. Retired once all functions are on SPN.
          readOnly: true
          type:
            - boolean
            - 'null'
      title: Function
      type: object
      x-speakeasy-entity: Function
      x-speakeasy-name-override: Function
  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

````