<aside> 👉
Links (Block base class)
Notion Ruby Mapping Public API Reference
</aside>
$\fbox{implemented in UrlCaptionBaseBlock}$
self.new creates a LinkPreviewBlock object using a url. caption is an optional parameter.
b = LinkPreviewBlock.new "a_url"
b.block_json
# => {"type"=>"link_preview", "object"=>"block", "link_preview"=>{"url"=>"a_url"}}
$\fbox{implemented in Block}$
save updates the Block object with update block API. The updated object has block information generated from the JSON response.
block = Block.find "899e342cec84415f9ff86225704cbb75" # Notion API call
block.url = "<https://www.apple.com/>"
block.save
# => #<NotionRubyMapping::Block:...> # updated Block object
Block.find(id, dry_run: true) creates a shell script using Retrieve a block API for verification.
block = Block.find "899e342cec84415f9ff86225704cbb75" # Notion API call
block.url = "<https://www.apple.com/>"
block.save dry_run: true
# =>
# curl -X PATCH '<https://api.notion.com/v1/blocks/899e342cec84415f9ff86225704cbb75>' \\
# -H 'Notion-Version: 2022-02-22' \\
# -H 'Authorization: Bearer '"$NOTION_API_KEY"'' \\
# -H 'Content-Type: application/json' \\
# --data '{"bookmark":{"url":"<https://www.apple.com/>"}}'
url returns the url parameter of LinkPreviewBlock.
b = LinkPreviewBlock.new "a_url"
# => "a_url"
url= updates the url parameter of block for LinkPreviewBlock and sets update_block_key of the payload object.
b = LinkPreviewBlock.new "a_url"
b.url = "new_url"
b.update_block_json
# => {"link_preview"=>{"url"=>"new_url"}}