> For the complete documentation index, see [llms.txt](https://docs.symbyoz.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.symbyoz.io/code_examples/create_save_object.md).

# Create & Save Object

Storing data on Symbyoz is built around **Parse** and his `ParseObject`. \
Each `ParseObject`contains key-value pairs of JSON-compatible data. This data is schemaless, which means that you don’t need to specify ahead of time what keys exist on each `ParseObject`. &#x20;

If you want to have a structured model of your object, you can do it so by registering what we call [Subclasses](/code_examples/subclasses.md) (see more infos on [this page](/code_examples/subclasses.md)).

## Simple Way

{% tabs %}
{% tab title="Java" %}

```java
import com.parse.ParseObject;

public void createObject()
{
    ParseObject object = new ParseObject("ClassName");
    // object.put(key, value);
    object.put("age", 37);
    object.put("userName", "John Doe");
    object.put("isFunny", false);
    
    object.saveInBackground();
}
```

{% endtab %}

{% tab title="Swift" %}

```swift
import Parse

class testVC: UIViewController
{
    override func viewDidLoad()
    {
        super.viewDidLoad()
        self.createObjet()
    }


    func createObjet()
    {
        let newObject = PFObject.init(className:"test")
        newObject["TitleA"] = "valueA"
        newObject["isBoolean"] = true
        newObecjt["pointer"] = PFUser.current()        
        newObject.saveInBackground()   
    }
}
```

{% endtab %}
{% endtabs %}

## With Callback

{% tabs %}
{% tab title="Java" %}

```java
import com.parse.ParseException;
import com.parse.ParseObject;
import com.parse.SaveCallback;

public void createObject()
{
        ParseObject object = new ParseObject("ClassName");
        // object.put(key, value);
        object.put("age", 37);
        object.put("userName", "John Doe");
        object.put("isFunny", false);

        object.saveInBackground(new SaveCallback()
        {
            @Override
            public void done(ParseException e) 
            {
                
            }
        });
}
```

{% endtab %}

{% tab title="Swift" %}

```swift
import Parse
​
class testVC: UIViewController
{
    override func viewDidLoad()
    {
        super.viewDidLoad()
        self.createObjet()
    }
​
​
    func createObjet()
    {
        let newObject = PFObject.init(className:"test")
        newObject["TitleA"] = "valueA"
        newObject["isBoolean"] = true
        newObecjt["pointer"] = PFUser.current()        
        newObject.saveInBackground(block:
        {
            (isSuccess, error) in
                if let error = error
                {   
                    print (error.localizedDescription)
                }
                else 
                {
                    if (isSuccess)
                    {
                        // Do something                    
                    }
                }
        })
    }
}
```

{% endtab %}
{% endtabs %}
