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

# Create account

> Create the Risk Yield Account that will hold your LP positions.

Liquidity is provided from an account, not from your wallet, so this comes
first. The address is deterministic from the `owner`, and it is the **same
account as your Earn Account** on this chain — if you already have one,
this returns it with `transaction: null` and nothing needs to be signed.

**If the owner pays gas:** set `sender` to the owner's address.

**If someone else pays:** set `sender` to whoever will broadcast.



## OpenAPI

````yaml /v2/combined_spec.json post /v2/risk_yield/create_account
openapi: 3.1.0
info:
  title: Compass API
  description: Compass Labs DeFi API
  version: 0.0.1
servers:
  - url: https://api.compasslabs.ai
    description: Production server
security:
  - ApiKeyAuth: []
paths:
  /v2/risk_yield/create_account:
    post:
      tags:
        - Risk Yield
      summary: Create account
      description: >-
        Create the Risk Yield Account that will hold your LP positions.


        Liquidity is provided from an account, not from your wallet, so this
        comes

        first. The address is deterministic from the `owner`, and it is the
        **same

        account as your Earn Account** on this chain — if you already have one,

        this returns it with `transaction: null` and nothing needs to be signed.


        **If the owner pays gas:** set `sender` to the owner's address.


        **If someone else pays:** set `sender` to whoever will broadcast.
      operationId: v2_risk_yield_create_account
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRiskYieldAccountRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateRiskYieldAccountResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-codeSamples:
        - lang: python
          label: Python (SDK)
          source: |-
            from compass_api_sdk import CompassAPI, models


            with CompassAPI(
                api_key_auth="<YOUR_API_KEY_HERE>",
            ) as compass_api:

                res = compass_api.risk_yield.risk_yield_create_account(sender="0xdB035cb494EEE30996fbDD25a7b1Fa38D795bdC6", owner="0xdB035cb494EEE30996fbDD25a7b1Fa38D795bdC6", chain=models.CreateRiskYieldAccountRequestChain.ROBINHOOD, estimate_gas=True)

                # Handle response
                print(res)
        - lang: typescript
          label: Typescript (SDK)
          source: |-
            import { CompassApiSDK } from "@compass-labs/api-sdk";

            const compassApiSDK = new CompassApiSDK({
              apiKeyAuth: "<YOUR_API_KEY_HERE>",
            });

            async function run() {
              const result = await compassApiSDK.riskYield.riskYieldCreateAccount({
                sender: "0xdB035cb494EEE30996fbDD25a7b1Fa38D795bdC6",
                owner: "0xdB035cb494EEE30996fbDD25a7b1Fa38D795bdC6",
              });

              console.log(result);
            }

            run();
components:
  schemas:
    CreateRiskYieldAccountRequest:
      properties:
        sender:
          type: string
          title: Sender
          description: The address that signs and broadcasts this transaction.
          default: '0xdB035cb494EEE30996fbDD25a7b1Fa38D795bdC6'
          examples:
            - '0xdB035cb494EEE30996fbDD25a7b1Fa38D795bdC6'
        owner:
          type: string
          title: Owner
          description: The address that will own and control the Risk Yield Account.
          default: '0xdB035cb494EEE30996fbDD25a7b1Fa38D795bdC6'
          examples:
            - '0xdB035cb494EEE30996fbDD25a7b1Fa38D795bdC6'
        chain:
          type: string
          enum:
            - robinhood
          title: Chain
          description: Risk Yield is available on Robinhood Chain only.
          default: robinhood
        estimate_gas:
          type: boolean
          title: Estimate Gas
          description: Estimate gas, which also proves the transaction can execute.
          default: true
      type: object
      required:
        - sender
        - owner
      title: CreateRiskYieldAccountRequest
      description: Create the Safe that will hold the owner's LP positions.
      default:
        sender: '0xdB035cb494EEE30996fbDD25a7b1Fa38D795bdC6'
        owner: '0xdB035cb494EEE30996fbDD25a7b1Fa38D795bdC6'
    CreateRiskYieldAccountResponse:
      properties:
        transaction:
          anyOf:
            - $ref: '#/components/schemas/UnsignedTransaction'
            - type: 'null'
          description: >-
            The transaction that deploys the account, or null when it already
            exists — calling this twice is safe.
        risk_yield_account_address:
          type: string
          title: Risk Yield Account Address
          description: >-
            Where the account is, or will be. Deterministic from the owner, so
            it is known before the transaction is sent. This is the same address
            as the owner's Earn Account on this chain: one Safe holds both, and
            funds moved in through either product are the same funds.
      type: object
      required:
        - transaction
        - risk_yield_account_address
      title: CreateRiskYieldAccountResponse
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    UnsignedTransaction:
      properties:
        chainId:
          type: string
          title: Chainid
          description: The chain id of the transaction
        data:
          type: string
          title: Data
          description: The data of the transaction
        from:
          type: string
          title: From
          description: The sender of the transaction
        gas:
          anyOf:
            - type: string
            - type: 'null'
          title: Gas
          description: The gas of the transaction
        to:
          type: string
          title: To
          description: The recipient of the transaction
        value:
          type: string
          title: Value
          description: The value of the transaction
        nonce:
          type: string
          title: Nonce
          description: The nonce of the address
        maxFeePerGas:
          type: string
          title: Maxfeepergas
          description: The max fee per gas of the transaction
        maxPriorityFeePerGas:
          type: string
          title: Maxpriorityfeepergas
          description: The max priority fee per gas of the transaction
      type: object
      required:
        - chainId
        - data
        - from
        - gas
        - to
        - value
        - nonce
        - maxFeePerGas
        - maxPriorityFeePerGas
      title: UnsignedTransaction
      example:
        chainId: '0x2105'
        data: >-
          0x1688f0b900000000000000000000000029fcb43b46531bca003ddc8fcb67ffe91900c762000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000675f4a3d
        from: '0x4A83b4413CF41C3244027e1590E35a0F48403F0c'
        gas: '0x7a120'
        maxFeePerGas: '0x59682f00'
        maxPriorityFeePerGas: '0x3b9aca00'
        nonce: '0x5'
        to: '0x4e1DCf7AD4e460CfD30791CCC4F9c8a4f820ec67'
        value: '0x0'
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        Your Compass API Key. Get your key
        [here](https://www.compasslabs.ai/dashboard).

````