G

Use LinkCrypt with ChatGPT

Wire a Custom GPT or OpenAI-powered automation to your LinkCrypt library using bearer authentication — search saved links and create new ones from the model or from Actions.

Setup overview

  1. Create a LinkCrypt account and generate an API key in Preferences.
  2. In ChatGPT Custom GPTConfigureActionsCreate new action, paste the OpenAPI fragment below (or import as schema).
  3. Set authentication to API Key, header name Authorization, value Bearer YOUR_API_KEY (ChatGPT stores this securely for your GPT).
  4. Tell the GPT your base URL is https://getlinkcrypt.com/api/v1 if the schema host is not auto-detected.

For OpenAI Assistants with function calling, map the same operations as tools using the paths below.

OpenAPI 3.0 schema (Actions)

Paste into Custom GPT Actions. Adjust descriptions for your GPT's behavior. All paths are under the server URL https://getlinkcrypt.com/api/v1.

openapi: 3.0.0
info:
  title: LinkCrypt API
  version: 1.0.0
servers:
  - url: https://getlinkcrypt.com/api/v1
paths:
  /search:
    get:
      operationId: searchLinks
      summary: Full-text search the link library
      parameters:
        - name: q
          in: query
          required: true
          schema: { type: string }
        - name: limit
          in: query
          schema: { type: integer, default: 20 }
        - name: offset
          in: query
          schema: { type: integer, default: 0 }
      responses:
        '200': { description: OK }
  /links:
    get:
      operationId: listLinks
      summary: List links with filters
      parameters:
        - name: q
          in: query
          schema: { type: string }
        - name: tags
          in: query
          description: Comma-separated tags (AND)
          schema: { type: string }
        - name: domain
          in: query
          schema: { type: string }
        - name: limit
          in: query
          schema: { type: integer }
        - name: offset
          in: query
          schema: { type: integer }
      responses:
        '200': { description: OK }
    post:
      operationId: createLink
      summary: Save a new link
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required: [url]
              properties:
                url: { type: string, format: uri }
                title: { type: string }
                description: { type: string }
                tags:
                  type: array
                  items: { type: string }
      responses:
        '201': { description: Created }
  /links/{id}:
    get:
      operationId: getLink
      summary: Get one link
      parameters:
        - name: id
          in: path
          required: true
          schema: { type: string }
      responses:
        '200': { description: OK }
    patch:
      operationId: updateLink
      summary: Update link metadata
      parameters:
        - name: id
          in: path
          required: true
          schema: { type: string }
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                title: { type: string }
                url: { type: string }
                description: { type: string }
                is_favorite: { type: boolean }
      responses:
        '200': { description: OK }
  /tags:
    get:
      operationId: listTags
      summary: List all tags
      responses:
        '200': { description: OK }
  /analyze/stats:
    get:
      operationId: libraryStats
      summary: Library statistics
      responses:
        '200': { description: OK }

Safety note

Avoid exposing your real API key in public GPTs. Use private Custom GPTs or server-side proxies for team setups. Consider revoking keys in Preferences if they leak.