Source: Roblox Creator Hub · CC BY 4.0 · View source · Code samples: MIT Imported 2026-10-03. Formatting adapted for this site.
internal_public_v1.CreateCampaignRequest — openapi
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| bid | false | Optional bidding strategy. Only AUTOMATED is accepted in v1; may be omitted. | |
| budget | #/components/schemas/internal_public_v1.Budget | true | |
| creativeAssetIds | array | true | The Open Cloud image asset IDs to advertise, as decimal strings. Required. The assets must already exist and be usable by the caller. |
| name | string | true | The display name of the campaign. Required. |
| objective | string | true | The advertising goal. Required. Can be PLAYS (the deprecated ENGAGEMENT is also accepted during the transition; both create the same campaign). |
| paymentType | string | true | How the campaign is paid for. Required. Can be CREDIT_CARD, ADS_CREDIT, or INVOICE, subject to what the billing account supports. |
| schedule | #/components/schemas/internal_public_v1.Schedule | true | |
| targetUniverseId | string | true | The identifier of the experience to advertise. Required. |
| targeting | false | Optional audience targeting. Omit it, or send an empty object, to reach all audiences. |
Related Schemas
Complete Schema
{
"type": "object",
"required": [
"budget",
"creativeAssetIds",
"name",
"objective",
"paymentType",
"schedule",
"targetUniverseId"
],
"properties": {
"bid": {
"description": "Optional bidding strategy. Only `AUTOMATED` is accepted in v1; may be omitted.",
"allOf": [
{
"$ref": "#/components/schemas/internal_public_v1.Bid"
}
]
},
"budget": {
"$ref": "#/components/schemas/internal_public_v1.Budget"
},
"creativeAssetIds": {
"description": "The Open Cloud image asset IDs to advertise, as decimal strings. Required. The\nassets must already exist and be usable by the caller.",
"type": "array",
"items": {
"type": "string"
}
},
"name": {
"description": "The display name of the campaign. Required.",
"type": "string"
},
"objective": {
"description": "The advertising goal. Required. Can be `PLAYS` (the deprecated `ENGAGEMENT`\nis also accepted during the transition; both create the same campaign).",
"type": "string",
"enum": [
"PLAYS",
"ENGAGEMENT"
]
},
"paymentType": {
"description": "How the campaign is paid for. Required. Can be `CREDIT_CARD`, `ADS_CREDIT`, or\n`INVOICE`, subject to what the billing account supports.",
"type": "string",
"enum": [
"CREDIT_CARD",
"ADS_CREDIT",
"INVOICE"
]
},
"schedule": {
"$ref": "#/components/schemas/internal_public_v1.Schedule"
},
"targetUniverseId": {
"description": "The identifier of the experience to advertise. Required.",
"type": "string"
},
"targeting": {
"description": "Optional audience targeting. Omit it, or send an empty object, to reach all audiences.",
"allOf": [
{
"$ref": "#/components/schemas/internal_public_v1.Targeting"
}
]
}
}
}