--- layout: default navsection: sdk navmenu: Python title: Examples ... {% comment %} Copyright (C) The Arvados Authors. All rights reserved. SPDX-License-Identifier: CC-BY-SA-3.0 {% endcomment %} h2. Initialize SDK Import the module and set up an API client user agent: {% codeblock as ruby %} require 'arvados' arv = Arvados.new(apiVersion: 'v1') {% endcodeblock %} The SDK retrieves the list of API methods from the server at run time. Therefore, the set of available methods is determined by the server version rather than the SDK version. h2. create Create an object: {% codeblock as ruby %} new_link = arv.link.create(link: {link_class: 'test', name: 'test'}) {% endcodeblock %} h2. delete Delete an object: {% codeblock as ruby %} arv.link.delete(uuid: new_link[:uuid]) {% endcodeblock %} h2. get Retrieve an object by ID: {% codeblock as ruby %} some_user = arv.user.get(uuid: current_user_uuid) {% endcodeblock %} h2. list Get a list of objects: {% codeblock as ruby %} repos = arv.repository.list first_repo = repos[:items][0] puts "UUID of first repo returned is #{first_repo[:uuid]}" {% endcodeblock %} UUID of first repo returned is qr1hi-s0uqq-b1bnybpx3u5temz h2. update Update an object: {% codeblock as ruby %} updated_link = arv.link.update(uuid: new_link[:uuid], link: {properties: {foo: 'bar'}}) {% endcodeblock %} h2. Get current user Get the User object for the current user: {% codeblock as ruby %} current_user = arv.user.current {% endcodeblock %} Get the UUID of an object that was retrieved using the SDK: {% codeblock as ruby %} current_user_uuid = current_user[:uuid] {% endcodeblock %}