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

# Register Signed Key

> Registers an signed key and returns the developer managed signer status with an approval url.

<Info>
  ### Public key should be unique, do not reuse the public key on the same account or across accounts
</Info>

## Node.js SDK

🔗 **SDK Method:** [registerSignedKeyForDeveloperManagedSigner](/nodejs-sdk/signer-apis/registerSignedKeyForDeveloperManagedSigner)

Use this API endpoint with the Neynar Node.js SDK for typed responses and better developer experience.


## OpenAPI

````yaml post /v2/farcaster/signer/developer_managed/signed_key/
openapi: 3.0.4
info:
  contact:
    email: team@neynar.com
    name: Neynar
    url: https://neynar.com/
  description: >-
    The Neynar API allows you to interact with the Farcaster protocol among
    other things. See the [Neynar docs](https://docs.neynar.com/reference) for
    more details.
  title: Neynar API
  version: 3.173.0
servers:
  - url: https://api.neynar.com
security:
  - ApiKeyAuth: []
tags:
  - description: Operations related to user
    externalDocs:
      description: More info about user
      url: https://docs.neynar.com/reference/user-operations
    name: User
  - description: Operations related to signer
    externalDocs:
      description: More info about signer
      url: https://docs.neynar.com/reference/signer-operations
    name: Signer
  - description: Operations related to cast
    externalDocs:
      description: More info about cast
      url: https://docs.neynar.com/reference/cast-operations
    name: Cast
  - description: Operations related to feed
    externalDocs:
      description: More info about feed
      url: https://docs.neynar.com/reference/feed-operations
    name: Feed
  - description: Operations related to reaction
    externalDocs:
      description: More info about reaction
      url: https://docs.neynar.com/reference/reaction-operations
    name: Reaction
  - description: Operations related to notifications
    externalDocs:
      description: More info about notifications
      url: https://docs.neynar.com/reference/notifications-operations
    name: Notifications
  - description: Operations related to channels
    externalDocs:
      description: More info about channels
      url: https://docs.neynar.com/reference/channel-operations
    name: Channel
  - description: Operations related to follows
    externalDocs:
      description: More info about follows
      url: https://docs.neynar.com/reference/follows-operations
    name: Follows
  - description: Operations related to storage
    externalDocs:
      description: More info about storage
      url: https://docs.neynar.com/reference/storage-operations
    name: Storage
  - description: Operations related to mini apps
    name: Frame
  - description: Operations for building AI agents
    name: Agents
  - description: Operations related to fname
    name: fname
  - description: Operations related to a webhook
    name: Webhook
  - description: >-
      Securely communicate and perform actions on behalf of users across
      different apps
    externalDocs:
      description: More info about farcaster actions
      url: https://docs.neynar.com/docs/farcaster-actions-spec
    name: Action
  - description: Operations related to a subscriptions
    name: Subscribers
  - description: Operations related to a mute
    name: Mute
  - description: Operations related to a block
    name: Block
  - description: Operations related to a ban
    name: Ban
  - description: Operations related to onchain data
    name: Onchain
  - description: Operations related to login
    name: Login
  - description: Operations related to retrieving metrics
    name: Metrics
  - description: Operations related to mini app host notifications
    externalDocs:
      description: More info about mini app host notifications
      url: https://docs.neynar.com/docs/app-host-notifications
    name: App Host
paths:
  /v2/farcaster/signer/developer_managed/signed_key/:
    post:
      tags:
        - Signer
      summary: Register Signed Key
      description: >-
        Registers an signed key and returns the developer managed signer status
        with an approval url.
      operationId: register-signed-key-for-developer-managed-signer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RegisterDeveloperManagedSignedKeyReqBody'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperManagedSigner'
          description: Success
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Bad Request
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Server Error
      externalDocs:
        url: >-
          https://docs.neynar.com/reference/register-signed-key-for-developer-managed-signer
components:
  schemas:
    RegisterDeveloperManagedSignedKeyReqBody:
      properties:
        app_fid:
          $ref: '#/components/schemas/Fid'
        deadline:
          description: >-
            unix timestamp in seconds that controls how long the signed key
            request is valid for. (24 hours from now is recommended)
          type: integer
        public_key:
          $ref: '#/components/schemas/Ed25519PublicKey'
        redirect_url:
          description: >-
            Url to redirect to after the signer is approved.

            **Note** : This should only be used when requesting a signer from a
            native mobile application.
          type: string
        signature:
          description: >-
            Signature generated by the custody address of the app. Signed data
            includes app_fid, deadline, signer's public key
          example: >-
            0x7867e84cb6a64bf6e1954e52884133f1114eb3fd97f63ff55fa76c77c80beb6434eea9d3736b59caa3130d63121177acc752dc8a2561e9edf700642f390f92d11b
          type: string
        sponsor:
          $ref: '#/components/schemas/SignedKeyRequestSponsor'
      required:
        - public_key
        - signature
        - app_fid
        - deadline
      title: RegisterDeveloperManagedSignedKeyReqBody
      type: object
    DeveloperManagedSigner:
      properties:
        fid:
          $ref: '#/components/schemas/Fid'
        public_key:
          $ref: '#/components/schemas/Ed25519PublicKey'
        signer_approval_url:
          type: string
        status:
          enum:
            - pending_approval
            - approved
            - revoked
          type: string
      required:
        - public_key
        - status
      title: DeveloperManagedSigner
      type: object
    ErrorRes:
      description: Details for the error response
      properties:
        code:
          type: string
        message:
          type: string
        property:
          type: string
        status:
          format: int32
          type: integer
      required:
        - message
      title: ErrorRes
      type: object
    Fid:
      description: The unique identifier of a farcaster user or app (unsigned integer)
      example: 3
      format: int32
      minimum: 0
      title: Fid
      type: integer
    Ed25519PublicKey:
      description: Ed25519 public key
      example: '0x3daa8f99c5f760688a3c9f95716ed93dee5ed5d7722d776b7c4deac957755f22'
      pattern: ^0x[a-fA-F0-9]{64}$
      title: Ed25519PublicKey
      type: string
    SignedKeyRequestSponsor:
      properties:
        fid:
          $ref: '#/components/schemas/Fid'
        signature:
          description: >-
            Signature generated by the fid of the sponsor and the signature
            generated from signKeyRequest for the app.
          type: string
        sponsored_by_neynar:
          description: >-
            Neynar will sponsor the signer if set to true.

            **Note: ** If sponsor.fid and sponsor.signature are provided along
            with sponsored_by_neynar set to true,

            the sponsor.fid and sponsor.signature will be ignored.

            Neynar will sponsor the signer on behalf of the user. The developer
            will get charged in credits.
          type: boolean
      title: SignedKeyRequestSponsor
      type: object
  securitySchemes:
    ApiKeyAuth:
      description: API key to authorize requests
      in: header
      name: x-api-key
      type: apiKey
      x-default: NEYNAR_API_DOCS

````