> ## 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.

# Create

> Create a proxy binding between a source and destination entitlement, establishing a hierarchical relationship.



## OpenAPI

````yaml https://spec.speakeasy.com/conductor-one/conductorone/my-source-with-code-samples post /api/v1/apps/{src_app_id}/{src_app_entitlement_id}/bindings/{dst_app_id}/{dst_app_entitlement_id}
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/apps/{src_app_id}/{src_app_entitlement_id}/bindings/{dst_app_id}/{dst_app_entitlement_id}:
    post:
      tags:
        - App Entitlement Proxy Binding
      summary: Create
      description: >-
        Create a proxy binding between a source and destination entitlement,
        establishing a hierarchical relationship.
      operationId: c1.api.app.v1.AppEntitlementsProxy.Create
      parameters:
        - in: path
          name: src_app_id
          required: true
          schema:
            description: The ID of the app that owns the source entitlement.
            type: string
        - in: path
          name: src_app_entitlement_id
          required: true
          schema:
            description: The ID of the source (parent) entitlement.
            type: string
        - in: path
          name: dst_app_id
          required: true
          schema:
            description: The ID of the app that owns the destination entitlement.
            type: string
        - in: path
          name: dst_app_entitlement_id
          required: true
          schema:
            description: The ID of the destination (child) entitlement.
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/c1.api.app.v1.CreateAppEntitlementProxyRequestInput
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/c1.api.app.v1.CreateAppEntitlementProxyResponse
          description: The response message for creating an entitlement proxy binding.
      x-codeSamples:
        - lang: go
          label: Create
          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.AppEntitlementsProxy.Create(ctx, operations.C1APIAppV1AppEntitlementsProxyCreateRequest{\n        DstAppEntitlementID: \"<id>\",\n        DstAppID: \"<id>\",\n        SrcAppEntitlementID: \"<id>\",\n        SrcAppID: \"<id>\",\n    })\n    if err != nil {\n        log.Fatal(err)\n    }\n    if res.CreateAppEntitlementProxyResponse != 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.appEntitlementsProxy.create({
                srcAppId: "<id>",
                srcAppEntitlementId: "<id>",
                dstAppId: "<id>",
                dstAppEntitlementId: "<id>",
              });

              console.log(result);
            }


            run();
components:
  schemas:
    c1.api.app.v1.CreateAppEntitlementProxyRequestInput:
      description: The request message for creating an entitlement proxy binding.
      properties:
        expandMask:
          oneOf:
            - $ref: '#/components/schemas/c1.api.app.v1.AppEntitlementProxyExpandMask'
            - type: 'null'
      title: Create App Entitlement Proxy Request
      type: object
      x-speakeasy-name-override: CreateAppEntitlementProxyRequest
    c1.api.app.v1.CreateAppEntitlementProxyResponse:
      description: The response message for creating an entitlement proxy binding.
      properties:
        appProxyEntitlementView:
          oneOf:
            - $ref: '#/components/schemas/c1.api.app.v1.AppEntitlementProxyView'
            - type: 'null'
        expanded:
          description: List of serialized related objects.
          items:
            additionalProperties: true
            description: >-
              Contains an arbitrary serialized message along with a @type that
              describes the type of the serialized message.
            properties:
              '@type':
                description: The type of the serialized message.
                type: string
            type: object
          type:
            - array
            - 'null'
      title: Create App Entitlement Proxy Response
      type: object
      x-speakeasy-name-override: CreateAppEntitlementProxyResponse
    c1.api.app.v1.AppEntitlementProxyExpandMask:
      description: The AppEntitlementProxyExpandMask message.
      properties:
        paths:
          description: The paths field.
          items:
            type: string
          type:
            - array
            - 'null'
      title: App Entitlement Proxy Expand Mask
      type: object
      x-speakeasy-name-override: AppEntitlementProxyExpandMask
    c1.api.app.v1.AppEntitlementProxyView:
      description: The AppEntitlementProxyView message.
      properties:
        appProxyEntitlement:
          oneOf:
            - $ref: '#/components/schemas/c1.api.app.v1.AppEntitlementProxy'
            - type: 'null'
        dstAppEntitlementPath:
          description: The dstAppEntitlementPath field.
          type:
            - string
            - 'null'
        dstAppPath:
          description: The dstAppPath field.
          type:
            - string
            - 'null'
        srcAppEntitlementPath:
          description: The srcAppEntitlementPath field.
          type:
            - string
            - 'null'
        srcAppPath:
          description: The srcAppPath field.
          type:
            - string
            - 'null'
      title: App Entitlement Proxy View
      type: object
      x-speakeasy-name-override: AppEntitlementProxyView
    c1.api.app.v1.AppEntitlementProxy:
      description: >-
        An entitlement proxy binding that defines a hierarchical relationship
        between two entitlements.
      properties:
        createdAt:
          format: date-time
          readOnly: true
          type:
            - string
            - 'null'
        deletedAt:
          format: date-time
          readOnly: true
          type:
            - string
            - 'null'
        disabledAt:
          format: date-time
          type:
            - string
            - 'null'
        dstAppEntitlementId:
          description: The ID of the destination (child) entitlement.
          type:
            - string
            - 'null'
        dstAppId:
          description: The ID of the app that owns the destination entitlement.
          type:
            - string
            - 'null'
        implicit:
          description: >-
            If true, the binding does not exist yet and is inferred from the
            entitlements of the parent app.
          type:
            - boolean
            - 'null'
        srcAppEntitlementId:
          description: The ID of the source (parent) entitlement.
          type:
            - string
            - 'null'
        srcAppId:
          description: The ID of the app that owns the source entitlement.
          type:
            - string
            - 'null'
        systemBuiltin:
          description: >-
            If true, this binding was created by the system and cannot be
            removed by the user.
          type:
            - boolean
            - 'null'
        updatedAt:
          format: date-time
          readOnly: true
          type:
            - string
            - 'null'
      title: App Entitlement Proxy
      type: object
      x-speakeasy-entity: App Entitlement Proxy Binding
      x-speakeasy-name-override: AppEntitlementProxy
  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

````