Syntax

var result = proxy.create(objectType, properties [, options]);

Parameters

Name Type Required Description
objectType string Yes SOAP API object type
properties object Yes Object properties to set
options object No Additional SOAP create options

Return Value

{
    Status: "OK",      // "OK" or "Error"
    RequestID: "...",
    Results: [
        {
            StatusCode: "OK",
            StatusMessage: "Created successfully",
            Object: { ... }  // the created object
        }
    ]
}

Examples

Add subscriber to All Subscribers

var proxy = new Script.Util.WSProxy();
var result = proxy.create("Subscriber", {
    EmailAddress: "jane@example.com",
    SubscriberKey: "sub_jane",
    Status: "Active",
    Lists: [
        { ID: 12345, Status: "Active" }
    ]
});
if (result.Status !== "OK") {
    Write("Error creating subscriber: " + result.Results[0].StatusMessage);
}

Create a Data Extension

var proxy = new Script.Util.WSProxy();
var result = proxy.create("DataExtension", {
    Name: "NewDE_Name",
    CustomerKey: "NewDE_Key",
    Fields: {
        Field: [
            { Name: "SubscriberKey", FieldType: "Text", IsPrimaryKey: true, IsRequired: true, MaxLength: 254 },
            { Name: "Email", FieldType: "EmailAddress", IsRequired: true },
            { Name: "Score", FieldType: "Number" },
            { Name: "CreatedAt", FieldType: "Date" }
        ]
    }
});

Insert DE row

var proxy = new Script.Util.WSProxy();
var result = proxy.create("DataExtensionObject[MyDE_Key]", {
    Properties: {
        Property: [
            { Name: "Email", Value: "jane@example.com" },
            { Name: "Score", Value: "95" },
            { Name: "Timestamp", Value: Platform.Function.Now() }
        ]
    }
});

Notes

For upsert (create or update) on Data Extension rows, use proxy.update with SaveOption or use the Core library’s de.Rows.Add() / de.Rows.Update().

See Also