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

# Create an app invite

> Creates a link for someone without a Narrative login. `app_invite_connect` creates a new profile when the invitee
first uses the link. `app_invite_reconnect` replaces the LinkedIn token of `profile_id`.



## OpenAPI

````yaml https://linkedin.narrativeconnectors.com/openapi.json post /app-invites
openapi: 3.0.2
info:
  title: LinkedIn Connector API
  version: '2026-10-14'
  description: >-
    The LinkedIn connector API.


    Every operation except `/interfaces` and `/app-invites/codes` needs a
    Narrative API token in the

    `Authorization: Bearer <token>` header. A request without the header gets a
    403 with an empty body.
servers:
  - url: https://linkedin.narrativeconnectors.com
    description: Production
  - url: https://linkedin-dev.narrativeconnectors.com
    description: Development
security:
  - smithy.api.httpBearerAuth: []
paths:
  /app-invites:
    post:
      tags:
        - app-invites
      summary: Create an app invite
      description: >-
        Creates a link for someone without a Narrative login.
        `app_invite_connect` creates a new profile when the invitee

        first uses the link. `app_invite_reconnect` replaces the LinkedIn token
        of `profile_id`.
      operationId: CreateAppInvite
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateAppInviteRequest'
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppInvite'
        '400':
          description: >-
            The request is invalid. `error` is `bad_payload` when the body or a
            parameter cannot be read, or `invalid_request` when the request is
            well-formed but cannot be applied.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequestError'
        '403':
          description: >-
            The token is missing, invalid or expired. A request without an
            `Authorization: Bearer` header gets an empty body.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenError'
        '500':
          description: Unexpected failure.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServerError'
        '502':
          description: The Narrative API failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpstreamError'
components:
  schemas:
    CreateAppInviteRequest:
      oneOf:
        - $ref: '#/components/schemas/CreateAppInviteRequestConnect'
        - $ref: '#/components/schemas/CreateAppInviteRequestReconnect'
      discriminator:
        propertyName: type
        mapping:
          app_invite_connect: '#/components/schemas/CreateAppInviteRequestConnect'
          app_invite_reconnect: '#/components/schemas/CreateAppInviteRequestReconnect'
    AppInvite:
      oneOf:
        - $ref: '#/components/schemas/AppInviteConnectCase'
        - $ref: '#/components/schemas/AppInviteReconnectCase'
      discriminator:
        propertyName: type
        mapping:
          app_invite_connect: '#/components/schemas/AppInviteConnectCase'
          app_invite_reconnect: '#/components/schemas/AppInviteReconnectCase'
    BadRequestError:
      type: object
      description: >-
        The request is invalid. `error` is `bad_payload` when the body or a
        parameter cannot be read, or

        `invalid_request` when the request is well-formed but cannot be applied.
      properties:
        error:
          type: string
          description: '`bad_payload` or `invalid_request`.'
        error_description:
          type: string
      required:
        - error
        - error_description
    ForbiddenError:
      type: object
      description: >-
        The token is missing, invalid or expired. A request without an
        `Authorization: Bearer` header gets an empty body.
      properties:
        error:
          type: string
          description: '`forbidden`.'
        error_description:
          type: string
    InternalServerError:
      type: object
      description: Unexpected failure.
    UpstreamError:
      type: object
      description: The Narrative API failed.
      properties:
        error:
          type: string
          description: '`upstream_error`.'
        error_description:
          type: string
      required:
        - error
        - error_description
    CreateAppInviteRequestConnect:
      allOf:
        - $ref: '#/components/schemas/CreateAppInviteConnectRequest'
        - $ref: '#/components/schemas/CreateAppInviteRequestMixin'
    CreateAppInviteRequestReconnect:
      allOf:
        - $ref: '#/components/schemas/CreateAppInviteReconnectRequest'
        - $ref: '#/components/schemas/CreateAppInviteRequestMixin'
    AppInviteConnectCase:
      allOf:
        - $ref: '#/components/schemas/AppInviteConnect'
        - $ref: '#/components/schemas/AppInviteMixin'
    AppInviteReconnectCase:
      allOf:
        - $ref: '#/components/schemas/AppInviteReconnect'
        - $ref: '#/components/schemas/AppInviteMixin'
    CreateAppInviteConnectRequest:
      type: object
      properties:
        display_name:
          type: string
        invitee_name:
          type: string
    CreateAppInviteRequestMixin:
      type: object
      properties:
        type:
          type: string
      required:
        - type
    CreateAppInviteReconnectRequest:
      type: object
      properties:
        display_name:
          type: string
        invitee_name:
          type: string
        profile_id:
          type: string
          description: Profile Id must be in UUID format.
      required:
        - profile_id
    AppInviteConnect:
      type: object
      properties:
        id:
          type: string
        activated_at:
          type: string
          format: date-time
          nullable: true
        app:
          $ref: '#/components/schemas/InviteApp'
        code:
          type: string
        company:
          $ref: '#/components/schemas/InviteCompany'
        created_at:
          type: string
          format: date-time
        display_name:
          type: string
          nullable: true
        installation_id:
          type: integer
          format: int64
        invitee_name:
          type: string
          nullable: true
        status:
          $ref: '#/components/schemas/AppInviteStatus'
        tags:
          type: array
          items:
            type: string
        updated_at:
          type: string
          format: date-time
        url:
          type: string
      required:
        - activated_at
        - app
        - code
        - company
        - created_at
        - display_name
        - id
        - installation_id
        - invitee_name
        - status
        - tags
        - updated_at
        - url
    AppInviteMixin:
      type: object
      properties:
        type:
          type: string
      required:
        - type
    AppInviteReconnect:
      type: object
      properties:
        id:
          type: string
        activated_at:
          type: string
          format: date-time
          nullable: true
        app:
          $ref: '#/components/schemas/InviteApp'
        code:
          type: string
        company:
          $ref: '#/components/schemas/InviteCompany'
        created_at:
          type: string
          format: date-time
        display_name:
          type: string
          nullable: true
        installation_id:
          type: integer
          format: int64
        invitee_name:
          type: string
          nullable: true
        status:
          $ref: '#/components/schemas/AppInviteStatus'
        tags:
          type: array
          items:
            type: string
        updated_at:
          type: string
          format: date-time
        url:
          type: string
        profile:
          $ref: '#/components/schemas/InviteProfileResponse'
      required:
        - activated_at
        - app
        - code
        - company
        - created_at
        - display_name
        - id
        - installation_id
        - invitee_name
        - profile
        - status
        - tags
        - updated_at
        - url
    InviteApp:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        slug:
          type: string
          nullable: true
      required:
        - id
        - name
        - slug
    InviteCompany:
      type: object
      properties:
        id:
          type: integer
          description: Company Id must be a long.
          format: int64
        logo:
          type: string
          nullable: true
        name:
          type: string
      required:
        - id
        - logo
        - name
    AppInviteStatus:
      type: string
      enum:
        - active
        - archived
        - pending
    InviteProfileResponse:
      type: object
      properties:
        id:
          type: string
          description: Profile Id must be in UUID format.
        created_at:
          type: string
          format: date-time
        token_expires_at:
          type: string
          description: The access token's expiry. Null when the profile is not connected.
          format: date-time
          nullable: true
        updated_at:
          type: string
          format: date-time
        user_email:
          type: string
          description: The email given on the invite this profile last used, if any.
          nullable: true
      required:
        - created_at
        - id
        - token_expires_at
        - updated_at
        - user_email
  securitySchemes:
    smithy.api.httpBearerAuth:
      type: http
      description: HTTP Bearer authentication
      scheme: Bearer

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.