atproto blogging
at main 88 lines 2.1 kB view raw
1{ 2 "lexicon": 1, 3 "id": "sh.weaver.notebook.searchNotebooks", 4 "defs": { 5 "main": { 6 "type": "query", 7 "description": "Full-text search for notebooks.", 8 "parameters": { 9 "type": "params", 10 "required": [ 11 "q" 12 ], 13 "properties": { 14 "author": { 15 "type": "string", 16 "description": "Filter by author.", 17 "format": "at-identifier" 18 }, 19 "cursor": { 20 "type": "string" 21 }, 22 "limit": { 23 "type": "integer", 24 "default": 25, 25 "minimum": 1, 26 "maximum": 100 27 }, 28 "q": { 29 "type": "string", 30 "minLength": 1, 31 "maxLength": 500 32 }, 33 "rating": { 34 "type": "array", 35 "description": "Filter by content rating (any of these).", 36 "items": { 37 "type": "string", 38 "knownValues": [ 39 "general", 40 "teen", 41 "mature", 42 "explicit" 43 ] 44 } 45 }, 46 "sort": { 47 "type": "string", 48 "default": "relevance", 49 "knownValues": [ 50 "relevance", 51 "recent", 52 "popular" 53 ] 54 }, 55 "tags": { 56 "type": "array", 57 "description": "Filter by tags (all must match).", 58 "items": { 59 "type": "string" 60 }, 61 "maxLength": 10 62 } 63 } 64 }, 65 "output": { 66 "encoding": "application/json", 67 "schema": { 68 "type": "object", 69 "required": [ 70 "notebooks" 71 ], 72 "properties": { 73 "cursor": { 74 "type": "string" 75 }, 76 "notebooks": { 77 "type": "array", 78 "items": { 79 "type": "ref", 80 "ref": "sh.weaver.notebook.defs#notebookView" 81 } 82 } 83 } 84 } 85 } 86 } 87 } 88}