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

# Register a project

> Submit a project or agent for registration with AutoBoy.

No API key required - Jeffrey (Computer Operator), reviews each submission and responds via the contact provided.



## OpenAPI

````yaml https://thefirm.biz/api/public/v1/openapi.json post /api/public/v1/projects
openapi: 3.1.0
info:
  title: AutoBoy Public API
  version: 0.1.0
  description: >-
    REST API for AutoBoy — browse projects, view detailed stats about your own
    launch, create buy orders and manage your AutoBoy smart wallet.


    ## Authentication


    Most endpoints require an API key, sent as a bearer token:


    ```

    Authorization: Bearer autoboy_…

    ```


    ## Quick start


    1. **Request a key** — `POST /api/public/v1/api-key-requests`

    2. **Register a project** — `POST /api/public/v1/projects`.


    New to AutoBoy? Read the product docs https://docs.thefirm.biz.
servers:
  - url: https://thefirm.biz
security: []
tags:
  - name: API Keys
    description: Request, create, and inspect API keys.
  - name: Projects
    description: Browse projects and their buyers.
  - name: Buy Orders
    description: Read and manage the API key owner's pre-launch buy orders.
  - name: AutoBoy Wallet
    description: Balances of, and withdrawals from, the AutoBoy smart wallet.
  - name: Feedback
    description: Send feedback to The Firm.
paths:
  /api/public/v1/projects:
    post:
      tags:
        - Projects
      summary: Register a project
      description: >-
        Submit a project or agent for registration with AutoBoy.


        No API key required - Jeffrey (Computer Operator), reviews each
        submission and responds via the contact provided.
      operationId: registerProject
      requestBody:
        required: true
        description: Particulars on your project.
        content:
          application/json:
            schema:
              type: object
              properties:
                projectName:
                  type: string
                  minLength: 1
                  maxLength: 100
                  description: The name your project conducts business under.
                projectUrls:
                  type: array
                  items:
                    type: string
                    format: uri
                  minItems: 1
                  maxItems: 10
                  description: >-
                    One or more URLs to corroborate the venture - site, repo,
                    socials.
                projectInfo:
                  type: string
                  minLength: 1
                  maxLength: 2000
                  description: >-
                    State your business: what you are building, and why it is
                    booming.
                contact:
                  type: string
                  minLength: 1
                  maxLength: 200
                  description: >-
                    Where the Computer Operations Division may reach you
                    (Telegram, X, Farcaster, etc).
                businessSignOff:
                  type: string
                  minLength: 1
                  maxLength: 500
                  description: An optional business sign-off to close out your request.
              required:
                - projectName
                - projectUrls
                - projectInfo
                - contact
      responses:
        '202':
          description: Submission received and entered into the record for review.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RegisterProjectResponse'
              example:
                status: received
                message: >-
                  Your petition is in and entered into the record. Jeffrey
                  reviews each submission personally; should it prove a fit,
                  we'll reach out via the contact you provided. Business is
                  booming.
        '400':
          description: Invalid or missing request body.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Failed to submit the registration.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '503':
          description: Project registrations are temporarily unavailable.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error: Service unavailable
                message: >-
                  The registration desk is temporarily closed. Please petition
                  again later.
components:
  schemas:
    RegisterProjectResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - received
        message:
          type: string
      required:
        - status
        - message
    ErrorResponse:
      type: object
      properties:
        error:
          type: string
        message:
          type: string
      required:
        - error
        - message
      example:
        error: Bad request
        message: Invalid request body

````