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

# Create partner

> Create a new partner.



## OpenAPI

````yaml /openapi.json post /v3/partners
openapi: 3.0.1
info:
  title: Kiflo Public API v3
  description: "The Kiflo API allows you to have control over your integration and create the best experiences.\r\n\r\n***\r\n\r\n## Format\r\n\r\nThe API follows the REST standard using JSON to format requests and responses.  \r\nDecimals are formatted using invariant culture, ie: using \".\" (dot) as a decimal sperator and no thousands separator.  \r\nDates are formatted using ISO standards, in UTC format, including the timezone. Ex:  2015-03-25T12:00:00Z\r\n\r\n***\r\n\r\n## Security\r\n\r\nThe API is secured using an API token.\r\n\r\n**How to generate an API Access Token**  \r\n 1. Open your [account settings page](https://app.kiflo.com/account/integration)\r\n 2. Go to the \"API Access Token\" section\r\n 3. Click \"Add\" button\r\n 4. Choose a name that will be used to identify the token and click \"Add\"\r\n 4. Copy the generate token\r\n   \r\n> **Note:** For security reason, the generated API Access Token won't be visible after you close the settings page. Be sure to copy the generated token otherwise you won't be able to get it later.\r\n  \r\n**How to authenticate on the API**  \r\n  \r\nTo authenticate on the API, send the generated token in the Authorization header using the Bearer scheme:  \r\n`Authorization: Bearer #YOUR_GENERATED_TOKEN_HERE#`\r\n"
  version: v3
servers: []
security: []
paths:
  /v3/partners:
    post:
      tags:
        - Partners
      summary: Create partner
      description: Create a new partner.
      requestBody:
        content:
          application/json-patch+json:
            schema:
              $ref: '#/components/schemas/PartnerCreateRequestDto'
            example:
              name: Contoso Inc.
              properties:
                prop1: Value
                prop2: 100
              status: Active
              source: ManuallyAdded
              mainContact:
                firstName: John
                lastName: Doe
                email: john@doe.com
                jobTitle: null
                phoneNumber: null
                linkedInProfileUrl: null
                createAccount: true
                sendInvitationEmail: null
              groupId: 10
              programLevelId: null
              onboardingStageId: null
              partnerTypeId: null
              payoutProvider: null
              paypalEmail: null
              currency: null
              language: null
          application/json:
            schema:
              $ref: '#/components/schemas/PartnerCreateRequestDto'
            example:
              name: Contoso Inc.
              properties:
                prop1: Value
                prop2: 100
              status: Active
              source: ManuallyAdded
              mainContact:
                firstName: John
                lastName: Doe
                email: john@doe.com
                jobTitle: null
                phoneNumber: null
                linkedInProfileUrl: null
                createAccount: true
                sendInvitationEmail: null
              groupId: 10
              programLevelId: null
              onboardingStageId: null
              partnerTypeId: null
              payoutProvider: null
              paypalEmail: null
              currency: null
              language: null
          text/json:
            schema:
              $ref: '#/components/schemas/PartnerCreateRequestDto'
            example:
              name: Contoso Inc.
              properties:
                prop1: Value
                prop2: 100
              status: Active
              source: ManuallyAdded
              mainContact:
                firstName: John
                lastName: Doe
                email: john@doe.com
                jobTitle: null
                phoneNumber: null
                linkedInProfileUrl: null
                createAccount: true
                sendInvitationEmail: null
              groupId: 10
              programLevelId: null
              onboardingStageId: null
              partnerTypeId: null
              payoutProvider: null
              paypalEmail: null
              currency: null
              language: null
          application/*+json:
            schema:
              $ref: '#/components/schemas/PartnerCreateRequestDto'
            example:
              name: Contoso Inc.
              properties:
                prop1: Value
                prop2: 100
              status: Active
              source: ManuallyAdded
              mainContact:
                firstName: John
                lastName: Doe
                email: john@doe.com
                jobTitle: null
                phoneNumber: null
                linkedInProfileUrl: null
                createAccount: true
                sendInvitationEmail: null
              groupId: 10
              programLevelId: null
              onboardingStageId: null
              partnerTypeId: null
              payoutProvider: null
              paypalEmail: null
              currency: null
              language: null
      responses:
        '200':
          description: Partner created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PartnerDto'
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                errorCode: Transactions.InvalidCustomerIdentifier
                errorMessage: You must specify one customer identifier
      security:
        - oauth2:
            - Api
            - Api
components:
  schemas:
    PartnerCreateRequestDto:
      type: object
      properties:
        name:
          type: string
          nullable: true
        properties:
          type: object
          additionalProperties:
            nullable: true
          nullable: true
        status:
          $ref: '#/components/schemas/PartnerStatus'
        source:
          $ref: '#/components/schemas/PartnerSource'
        mainContact:
          $ref: '#/components/schemas/MainContactDto'
        groupId:
          type: integer
          format: int32
          nullable: true
        programLevelId:
          type: integer
          format: int32
          nullable: true
        onboardingStageId:
          type: integer
          format: int32
          nullable: true
        partnerTypeId:
          type: integer
          format: int32
          nullable: true
        payoutProvider:
          $ref: '#/components/schemas/PayoutProviderDto'
        paypalEmail:
          type: string
          description: Deprecated. Use PayoutProvider and PayoutProvider
          nullable: true
        currency:
          type: string
          nullable: true
        language:
          type: string
          nullable: true
      additionalProperties: false
    PartnerDto:
      type: object
      properties:
        id:
          type: integer
          format: int32
        name:
          type: string
          nullable: true
        groupId:
          type: integer
          format: int32
          nullable: true
        onboardingStatus:
          $ref: '#/components/schemas/OnboardingStatus'
        status:
          $ref: '#/components/schemas/PartnerStatus'
        source:
          $ref: '#/components/schemas/PartnerSource'
        company:
          $ref: '#/components/schemas/CompanyDto'
        mainContact:
          $ref: '#/components/schemas/UserPartnerDto'
        onboardingStage:
          $ref: '#/components/schemas/OnboardingStageDto'
        onboardingStages:
          type: array
          items:
            $ref: '#/components/schemas/OnboardingStageDto'
          nullable: true
        levels:
          type: array
          items:
            $ref: '#/components/schemas/ProgramLevelPartialDto'
          nullable: true
        sinceDate:
          type: string
          format: date-time
          nullable: true
        partnerTypeId:
          type: integer
          format: int32
          nullable: true
        partnerTypeName:
          type: string
          nullable: true
        properties:
          type: object
          additionalProperties:
            nullable: true
          nullable: true
        ownerUserId:
          type: integer
          format: int32
          nullable: true
        owner:
          $ref: '#/components/schemas/UserDto'
        referralCode:
          type: string
          nullable: true
        paypalEmail:
          type: string
          nullable: true
        currency:
          type: string
          nullable: true
        payoutProvider:
          $ref: '#/components/schemas/PayoutProviderDto'
        language:
          type: string
          nullable: true
      additionalProperties: false
    ErrorResponse:
      type: object
      properties:
        errorCode:
          type: string
          nullable: true
        errorMessage:
          type: string
          nullable: true
      additionalProperties: false
    PartnerStatus:
      enum:
        - Unknown
        - Active
        - Prospect
        - Rejected
        - Applicant
        - Inactive
        - Onboarding
      type: string
    PartnerSource:
      enum:
        - Unknown
        - ManuallyAdded
        - SignupForm
      type: string
    MainContactDto:
      type: object
      properties:
        firstName:
          type: string
          nullable: true
        lastName:
          type: string
          nullable: true
        email:
          type: string
          nullable: true
        jobTitle:
          type: string
          nullable: true
        phoneNumber:
          type: string
          nullable: true
        linkedInProfileUrl:
          type: string
          nullable: true
        createAccount:
          type: boolean
        sendInvitationEmail:
          type: boolean
          nullable: true
      additionalProperties: false
    PayoutProviderDto:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/PayoutProviderType'
        details:
          $ref: '#/components/schemas/PayoutProviderDetailsDto'
      additionalProperties: false
    OnboardingStatus:
      enum:
        - Unknown
        - NotOnboarded
        - InProgress
        - Completed
      type: string
    CompanyDto:
      type: object
      properties:
        id:
          type: integer
          format: int32
        name:
          type: string
          nullable: true
        websiteUrls:
          type: array
          items:
            type: string
          nullable: true
      additionalProperties: false
    UserPartnerDto:
      type: object
      properties:
        id:
          type: integer
          format: int32
        email:
          type: string
          nullable: true
        firstname:
          type: string
          nullable: true
        lastname:
          type: string
          nullable: true
        jobTitle:
          type: string
          nullable: true
        phoneNumber:
          type: string
          nullable: true
        linkedInProfileUrl:
          type: string
          nullable: true
        creationDate:
          type: string
          format: date-time
        isMainContact:
          type: boolean
      additionalProperties: false
    OnboardingStageDto:
      type: object
      properties:
        id:
          type: integer
          format: int32
        name:
          type: string
          nullable: true
        description:
          type: string
          nullable: true
        order:
          type: integer
          format: int32
        onboardingPipelineId:
          type: integer
          format: int32
        onboardingPipelineName:
          type: string
          nullable: true
      additionalProperties: false
    ProgramLevelPartialDto:
      type: object
      properties:
        programLevelId:
          type: integer
          format: int32
        programLevelName:
          type: string
          nullable: true
        programId:
          type: integer
          format: int32
        programName:
          type: string
          nullable: true
      additionalProperties: false
    UserDto:
      type: object
      properties:
        id:
          type: integer
          format: int32
        email:
          type: string
          nullable: true
        firstName:
          type: string
          nullable: true
        lastName:
          type: string
          nullable: true
      additionalProperties: false
    PayoutProviderType:
      enum:
        - Unknown
        - Paypal
        - Wise
        - Stripe
        - Payoneer
        - Chargebee
      type: string
    PayoutProviderDetailsDto:
      type: object
      additionalProperties: false

````