NIP Drafts

September 9, 2026 ยท View on GitHub

GitHub Sponsors

This repository contains 38 Nostr protocol extensions for service coordination, trust, payments, dispute resolution, key hierarchy, resource curation, paid API discovery, identity verification, anonymous trust assertions, encrypted access control, live activities, geospatial signals, venue entry, and group rosters. Each file is written in nostr-protocol/nips format and defines patterns useful to any Nostr application.

These NIPs are designed to work independently. They do not require adoption of any specific platform or framework.

Status

All drafts are draft optional unless noted otherwise.

NIPs

NIPTitleClassificationStatusKindsKey Dependencies
NIP-LOCATIONPrivacy-Preserving Location Discoveryupstreamdraft20500, 20501NIP-01, NIP-40, NIP-44
NIP-PROVIDER-PROFILESService Provider Profilesupstreamdraft30510, 30511NIP-01, NIP-40, NIP-58, NIP-99, NIP-EVIDENCE
NIP-TRUSTPortable Trust Networksupstreamdraft30515, 30517NIP-01, NIP-02, NIP-09, NIP-17, NIP-40, NIP-44, NIP-51
NIP-CHANNELSMessage Status & Typing Indicatorsupstreamdraft20502, 30565NIP-01, NIP-17, NIP-40, NIP-44, NIP-59
NIP-DATA-ACCESSScoped, Revocable Data Access Grantsecosystemdraft30556NIP-01, NIP-44, NIP-59
NIP-CREDENTIALSCredential Verification & Gatingupstreamdraft30527, 30528NIP-01, NIP-40, NIP-44, NIP-REPUTATION
NIP-REPUTATIONStructured Reputation & Reviewsupstreamdraft30520NIP-01, NIP-02, NIP-22, NIP-32, NIP-58, NIP-EVIDENCE
NIP-QUOTEStructured Pricing & Payment Termsupstreamdraft30530, 30531NIP-01, NIP-40, NIP-44
NIP-ESCROWConditional Payment Coordinationupstreamdraft30532, 30533, 30535NIP-01, NIP-40, NIP-44, NIP-59, NIP-QUOTE
NIP-DISPUTESDispute Resolution Protocolupstreamdraft7543, 30545NIP-01, NIP-32, NIP-44, NIP-56, NIP-59, NIP-EVIDENCE
NIP-ORACLEOracle Dispute Resolutionincubatingdraft incubating30543, 30547, 30548, 30549NIP-01, NIP-40, NIP-44, NIP-59
NIP-APPROVALMulti-Party Approval Gatesupstreamdraft30570, 30571NIP-01, NIP-40, NIP-44
NIP-CUSTODYChain-of-Custody Trackingupstreamdraft30572NIP-01, NIP-44, NIP-EVIDENCE, NIP-LOCATION
NIP-CONSENSUSMulti-Party Consensusupstreamdraft30574, 30575NIP-01, NIP-40, NIP-44
NIP-SUCCESSIONKey Succession with Pre-commitment and Consentupstreamdraft1360, 1361NIP-01, NIP-03, NIP-IDENTITY-TREES
NIP-CONTACT-CARDContact Card: one QR that makes a contact, names a box and starts a bondecosystemdraftnoneNIP-01, NIP-19, forgesworn-link
NIP-DEVICE-CREDENTIALDevice Credential for a Personupstreamdraftreuses 20460 (KithMoot)NIP-01, NIP-09, NIP-40, NIP-44
NIP-MATCHINGCompetitive Matching & Selectionupstreamdraft30576, 30577NIP-01, NIP-15, NIP-40, NIP-44, NIP-99
NIP-EVIDENCETimestamped Evidence Recordingupstreamdraft30578NIP-01, NIP-40, NIP-44
NIP-VARIATIONScope & Price Change Managementupstreamdraft30579NIP-01, NIP-40, NIP-44, NIP-QUOTE, NIP-APPROVAL
NIP-BOOKINGCalendar Availability & Bookingupstreamdraft30582, 30583, 30584NIP-01, NIP-40, NIP-44, NIP-52, NIP-APPROVAL, NIP-VARIATION, RFC 5545
NIP-INVOICINGStructured Invoicingecosystemdraft30588NIP-01, NIP-40, NIP-44, NIP-ESCROW, NIP-APPROVAL
NIP-SLAService Level Agreements (Composition Guide)ecosystemdraft composition-guidenoneNIP-EVIDENCE, NIP-APPROVAL, NIP-DISPUTES
NIP-PROVENANCEProduct & Supply Chain Provenanceecosystemdraft30404NIP-01, NIP-32, NIP-40, NIP-44, NIP-VA, NIP-CUSTODY, NIP-EVIDENCE
NIP-CRAFTSCraft Technique Documentationecosystemdraft30401NIP-01, NIP-32, NIP-40, NIP-44, NIP-PROVIDER-PROFILES
NIP-MENTORSHIPMentorship Pipelines & Training Progressionupstreamdraft30517 (ext)NIP-01, NIP-40, NIP-44, NIP-TRUST, NIP-REPUTATION, NIP-EVIDENCE
NIP-SCARCITYWorkforce & Resource Scarcity Signalsupstreamdraft30599NIP-01, NIP-40, NIP-TRUST, NIP-REPUTATION, NIP-PROVENANCE
NIP-REFERRAL-ROUTINGInstitutional Referral Routing (Composition Guide)ecosystemdraft composition-guidenoneNIP-51, NIP-APPROVAL, NIP-44, NIP-59
NIP-COMMUNITY-GOVERNANCECommunity Governance (Composition Guide)ecosystemdraft composition-guidenoneNIP-51, NIP-CONSENSUS, NIP-EVIDENCE
NIP-PAID-SERVICESPaid API Service Announcementsupstreamdraft31402NIP-01, NIP-40
NIP-KEY-HIERARCHYHierarchical Key Relationshipsupstreamdraft30594, 30595NIP-01, NIP-40, NIP-44, NIP-59
NIP-RESOURCE-CURATIONStructured Resource Listings, Reviews & Collectionsupstreamdraft30414, 30415, 30416NIP-01, NIP-22, NIP-32, NIP-40, NIP-51
NIP-DOMINIONEpoch-Based Encrypted Content Accessupstreamdraft30480NIP-01, NIP-44, NIP-59, NIP-78
NIP-SIGNETProgressive Identity Verificationupstreamdraft31000 (ext), 30078 (ext)NIP-01, NIP-40, NIP-44, NIP-VA, NIP-78
NIP-VEILAnonymous Trust Assertionsupstreamdraft30382-30385 (ext)NIP-01, NIP-85
NIP-IDENTITY-TREESPurpose-Tagged Identity Derivation (nsec-tree)upstreamdraftnone (client-side)NIP-01, NIP-06 (complementary)
NIP-ROSTERNamed-Group Rosterupstreamdraft31920NIP-01, NIP-51
NIP-SPATIAL-SIGNALSSpatial Signals & Corroborationupstreamdraft1315, 1316NIP-01, NIP-40, NIP-LOCATION
NIP-VENUE-ENTRYVenue Entry QRecosystemdraft21235NIP-01, NIP-98
NIP-LIVEFRAMEEphemeral State Frames for Live Activitiesupstreamdraft22769NIP-01, NIP-53, NIP-STREAMKEY
NIP-STREAMKEYEphemeral Session Keys for Live Streaming Activitiesupstreamdraft30311 (ext)NIP-01, NIP-07, NIP-46, NIP-53

Incubating

Incubating NIPs have promising patterns but insufficient cross-domain demand for standalone NIP status. They remain in this directory for visibility but are not recommended for implementation outside their originating domain.

NIP-ORACLE is currently incubating.

Promotion criteria: An incubating NIP is promoted to draft when 2+ unrelated domains demonstrate need for the pattern.

Classification

  • upstream -- Domain-agnostic, no lock-in. Ready for submission to nostr-protocol/nips.
  • ecosystem -- Strong patterns with clear application but currently narrow in scope or ambitious in kind count. Path to upstream after production adoption in 2+ independent Nostr apps.
  • incubating -- Promising patterns. Promotion requires 2+ unrelated domains to demonstrate need.

Authorship Attestations

Each published NIP has a corresponding NIP-VA authorship attestation (kind 31000) on Nostr, signed by the author's key. To verify:

{"kinds": [31000], "#type": ["authorship"], "authors": ["da19f1cd34beca44be74da4b306d9d1dd86b6343cef94ce22c49c6f59816e5bd"]}

This returns one attestation per NIP, each with an a tag referencing the kind 30817 event. Authorship is cryptographically verifiable without trusting any centralised registry.

NIP-VA's own authorship is self-attested: the same keypair publishes both the specification and the attestation. The trust anchor is the Nostr keypair, not the attestation format. Third-party attestations from independent reviewers can layer additional trust over time.

Relationships

Each NIP is classified by its maturity and genericness. See the Classification column in the table above.

Extended by TROTT

The TROTT protocol (TROTT-00 through TROTT-14) extends these NIPs with domain-specific configuration, operator integration, and cross-spec wiring. For example:

  • TROTT-03 extends NIP-CREDENTIALS with domain-specific credential requirements and reputation weighting.
  • TROTT-04 / TROTT-04b extend NIP-QUOTE and NIP-ESCROW with payment commitment and settlement workflows.
  • TROTT-05 extends NIP-DISPUTES with safety check-ins and emergency signals.
  • TROTT-06 extends NIP-PROVIDER-PROFILES with compliance and operator participation.
  • TROTT-06b extends NIP-DATA-ACCESS with compliance access control and audit-oriented operating guidance.
  • TROTT-08 extends NIP-CHANNELS with task archival and messaging preferences.
  • TROTT-10 extends NIP-TRUST with location sharing and operator-managed trust.
  • TROTT-11 extends NIP-BOOKING with domain-specific scheduling configuration and TROTT-01 lifecycle composition.
  • TROTT-12 extends NIP-INVOICING with lifecycle-triggered invoicing, approval gate composition, and tax retention guidance.
  • TROTT-14 extends NIP-SLA with escrow integration, dispute escalation, and domain-specific SLA defaults.

No public reference implementation exists yet. Implementors SHOULD refer to the kind definitions in each NIP.

To AtoB

NIPs that reference a "task" or "transaction" lifecycle are designed to work with any state machine protocol that defines request/accept/complete/cancel transitions. These NIPs define what happens around those transitions: payments, reputation, disputes, messaging.

To nostr-protocol/nips

When mature, each NIP may be proposed as a PR to nostr-protocol/nips. The drafts here use placeholder numbers (NIP-XX) and descriptive filenames.

Kind Allocation

These NIPs use the following kind ranges:

  • Regular (1xxx): 1315, 1316 (NIP-SPATIAL-SIGNALS), 1360, 1361 (NIP-SUCCESSION)
  • Regular (7xxx): 7543 (NIP-DISPUTES)
  • Ephemeral (20xxx): 20500-20502
  • Addressable (30xxx): 30401, 30404, 30414-30416, 30480, 30510-30511, 30515, 30517, 30520, 30527-30528, 30530-30533, 30535, 30543, 30545, 30547-30549, 30556, 30565, 30570-30572, 30574-30579, 30582-30584, 30588, 30594-30595, 30599
  • Addressable (31xxx): 31402 (NIP-PAID-SERVICES)

NIP-SUCCESSION allocates 1360 and 1361 and shares no numbers with any upstream proposal; NIP-DEVICE-CREDENTIAL reuses KithMoot's kind 20460; NIP-CONTACT-CARD allocates nothing. Their known-answer vectors are in vectors/.

Kind numbers will need formal allocation when proposed to nostr-protocol/nips.

Diagrams

The images/ directory contains rendered PNG diagrams (dark theme, 2400px, 2x scale) and their Mermaid sources (.mmd). To re-render after editing a .mmd file:

npx -y @mermaid-js/mermaid-cli -i images/<name>.mmd -o images/<name>.png \
  -c images/mermaid-config.json -w 2400 -b transparent --scale 2

Licence

MIT