{"openapi":"3.0.0","paths":{"/v1/workspaces/{workspaceId}/campaigns":{"get":{"operationId":"CampaignPlanningController_listCampaigns_v1","parameters":[{"name":"search","required":false,"in":"query","description":"Case-insensitive campaign name search.","schema":{"description":"Case-insensitive campaign name search.","maxLength":160,"type":"string"}},{"name":"includePhases","required":false,"in":"query","description":"Set to true to include campaign phases.","schema":{"description":"Set to true to include campaign phases.","default":false,"type":"boolean"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Campaign list","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicCampaignDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List campaigns","tags":["Campaigns"]},"post":{"operationId":"CampaignPlanningController_createCampaign_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCampaignDto"}}}},"responses":{"201":{"description":"Campaign created","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicCampaignDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Create a campaign","tags":["Campaigns"]}},"/v1/workspaces/{workspaceId}/campaigns/{id}":{"get":{"operationId":"CampaignPlanningController_getCampaign_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Campaign UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Campaign detail","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicCampaignDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get a campaign","tags":["Campaigns"]},"patch":{"operationId":"CampaignPlanningController_updateCampaign_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Campaign UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/UpdateCampaignDto"}]}}}},"responses":{"200":{"description":"Campaign updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicCampaignDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Update a campaign","tags":["Campaigns"]},"delete":{"operationId":"CampaignPlanningController_deleteCampaign_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Campaign UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Campaign deleted","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicCampaignDeletedDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Delete a campaign","tags":["Campaigns"]}},"/v1/workspaces/{workspaceId}/campaigns/{id}/phases":{"get":{"operationId":"CampaignPhaseController_listPhases_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Campaign UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Campaign phases","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicCampaignPhaseDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List campaign phases","tags":["Campaigns"]},"post":{"operationId":"CampaignPhaseController_createPhase_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Campaign UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCampaignPhaseDto"}}}},"responses":{"201":{"description":"Campaign phase created","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicCampaignPhaseDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Create a campaign phase","tags":["Campaigns"]},"put":{"operationId":"CampaignPhaseController_savePhases_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Campaign UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SaveCampaignPhasesDto"}}}},"responses":{"200":{"description":"Campaign with updated phases","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicCampaignDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Save campaign phases in bulk","tags":["Campaigns"]}},"/v1/workspaces/{workspaceId}/campaigns/{id}/phases/{phaseId}":{"patch":{"operationId":"CampaignPhaseController_updatePhase_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Campaign UUID","schema":{"type":"string"}},{"name":"phaseId","required":true,"in":"path","description":"Campaign phase UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/UpdateCampaignPhaseDto"}]}}}},"responses":{"200":{"description":"Campaign phase updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicCampaignPhaseDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Update a campaign phase","tags":["Campaigns"]},"delete":{"operationId":"CampaignPhaseController_deletePhase_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Campaign UUID","schema":{"type":"string"}},{"name":"phaseId","required":true,"in":"path","description":"Campaign phase UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"Campaign phase deleted"}},"security":[{"bearer":[]}],"summary":"Delete a campaign phase","tags":["Campaigns"]}},"/v1/workspaces/{workspaceId}/campaigns/{id}/content":{"get":{"operationId":"CampaignContentController_listCampaignContent_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Campaign UUID","schema":{"type":"string"}},{"name":"limit","required":false,"in":"query","description":"Maximum rows to return.","schema":{"description":"Maximum content rows to return.","default":100,"nullable":true,"type":"integer","minimum":1,"maximum":100}},{"name":"offset","required":false,"in":"query","description":"Rows to skip.","schema":{"description":"Number of content rows to skip.","default":0,"nullable":true,"type":"integer","minimum":0,"maximum":9007199254740991}},{"name":"phase","required":false,"in":"query","description":"Phase UUID, or \"none\" for content without a phase.","schema":{"description":"Filter by phase id, or \"none\" for campaign content without a phase.","nullable":true,"maxLength":64,"type":"string"}},{"name":"status","required":false,"in":"query","description":"Content status filter.","schema":{"description":"Filter by content status.","nullable":true,"type":"string","enum":["draft","pending_approval","rejected","scheduled","sent","failed","cancelled"]}},{"name":"platform","required":false,"in":"query","description":"Integration platform filter.","schema":{"description":"Filter by integration platform.","nullable":true,"maxLength":50,"type":"string"}},{"name":"sortDirection","required":false,"in":"query","description":"Primary date sort direction.","schema":{"description":"Primary date sort direction.","default":"asc","nullable":true,"type":"string","enum":["asc","desc"]}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Campaign content page","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicCampaignContentPageDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List compact campaign content","tags":["Campaigns"]}},"/v1/workspaces/{workspaceId}/api-keys":{"post":{"description":"Creates a new API key. The raw key is only returned once in the response, so store it securely.","operationId":"ApiKeysController_create_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateApiKeyDto"}}}},"responses":{"201":{"description":"API key created with the raw key included once","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicApiKeyCreatedDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Create an API key","tags":["API Keys"]},"get":{"description":"List active API keys you can administer. Organization owners/admins can administer all organization keys; workspace managers must manage every granted workspace. Raw keys are never returned.","operationId":"ApiKeysController_list_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Active API key list","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicApiKeyListItemDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List API keys","tags":["API Keys"]}},"/v1/workspaces/{workspaceId}/api-keys/{id}":{"delete":{"description":"Soft-revokes an API key. The key can no longer be used for authentication.","operationId":"ApiKeysController_revoke_v1","parameters":[{"name":"id","required":true,"in":"path","description":"API key UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"API key revoked","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicApiKeyRevokedDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}},"404":{"description":"API key not found"}},"security":[{"bearer":[]}],"summary":"Revoke an API key","tags":["API Keys"]}},"/v1/workspaces/{workspaceId}/content-roots":{"get":{"operationId":"PublicContentRootsController_list_v1","parameters":[{"name":"limit","required":false,"in":"query","schema":{"default":250,"type":"integer","minimum":1,"maximum":500}},{"name":"offset","required":false,"in":"query","schema":{"default":0,"type":"integer","minimum":0,"maximum":9007199254740991}}],"responses":{"200":{"description":"Content roots as board cards","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicWorkbenchContentBoardQueryDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Discover Board content roots, including Ideas without editions","tags":["Content roots"]}},"/v1/workspaces/{workspaceId}/content-roots/{id}":{"get":{"operationId":"PublicContentRootsController_get_v1","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Content root","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicContentRootDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Read a content root by root ID, not channel edition ID","tags":["Content roots"]},"patch":{"operationId":"PublicContentRootsController_update_v1","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"captions":{"description":"Canonical caption and platform overrides. Omit overrides to preserve them; overrides: {} explicitly clears them.","type":"object","properties":{"canonical":{"nullable":true,"type":"string","maxLength":25000},"overrides":{"type":"object","additionalProperties":{"type":"string","maxLength":25000}}}},"contentMedia":{"description":"Canonical media relationship input with per-content crops, tags, ordering, and cover metadata.","maxItems":20,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"order":{"type":"integer","minimum":0,"maximum":9007199254740991},"crops":{"type":"object","additionalProperties":{}},"userTags":{"type":"array","items":{}},"productTags":{"type":"array","items":{}},"cover":{"nullable":true,"type":"object","additionalProperties":{}}},"required":["mediaId"]}},"title":{"nullable":true,"type":"string","maxLength":240}},"additionalProperties":false}}}},"responses":{"200":{"description":"Content root updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicContentRootDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Update canonical title, captions or media on a content root","tags":["Content roots"]}},"/v1/workspaces/{workspaceId}/content":{"post":{"description":"Create content as a draft, scheduled post, or explicit immediate publish. Omitted intent defaults to draft; use intent=schedule with scheduledAt or intent=publish_now to queue an immediate publish.","operationId":"PublicContentController_create_v1","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional create idempotency key scoped to workspace, authenticated principal, method, and route.","required":false,"schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreatePublicPostDto"}}}},"responses":{"201":{"description":"Content created","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicContentMutationResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Create content","tags":["Content"]},"get":{"description":"Offset-based paginated content list. Filters to public statuses (draft, scheduled, sent, failed) by default and supports workflow, integration, sorting, and opt-in reviewLifecycle filters.","operationId":"PublicContentController_list_v1","parameters":[{"name":"status","required":false,"in":"query","description":"Public content status filter. Defaults stay limited to draft, scheduled, sent, and failed; review-held pending_approval content requires explicit lifecycle filters.","schema":{"description":"Public content status filter. Defaults stay limited to draft, scheduled, sent, and failed; review-held pending_approval content requires explicit lifecycle filters.","allOf":[{"$ref":"#/components/schemas/PublicContentStatus"}]}},{"name":"workflowStatus","required":false,"in":"query","description":"Workflow status filter. This is not the review lifecycle contract; use reviewLifecycle fields when they are present on detail or review action responses.","schema":{"description":"Workflow status filter. This is not the review lifecycle contract; use reviewLifecycle fields when they are present on detail or review action responses.","allOf":[{"$ref":"#/components/schemas/ContentWorkflowStatus"}]}},{"name":"workflowStatuses","required":false,"in":"query","description":"Comma-separated or repeated workflow statuses. Takes precedence over workflowStatus when provided.","schema":{"description":"Comma-separated or repeated workflow statuses. Takes precedence over workflowStatus when provided.","minItems":1,"type":"array","items":{"$ref":"#/components/schemas/ContentWorkflowStatus"}}},{"name":"includeReviewLifecycle","required":false,"in":"query","description":"When true, includes reviewLifecycle on list items. Defaults false unless a reviewLifecycle filter is present.","schema":{"description":"When true, includes reviewLifecycle on list items. Defaults false unless a reviewLifecycle filter is present.","type":"boolean"}},{"name":"reviewLifecyclePhase","required":false,"in":"query","description":"Explicit review lifecycle phase filter. Supplying any reviewLifecycle filter opts into review-held content access.","schema":{"description":"Explicit review lifecycle phase filter. Supplying any reviewLifecycle filter opts into review-held content access.","allOf":[{"$ref":"#/components/schemas/ReviewLifecyclePhase"}]}},{"name":"reviewLifecycleState","required":false,"in":"query","description":"Explicit review lifecycle state filter. Supplying any reviewLifecycle filter opts into review-held content access.","schema":{"description":"Explicit review lifecycle state filter. Supplying any reviewLifecycle filter opts into review-held content access.","allOf":[{"$ref":"#/components/schemas/ReviewLifecycleState"}]}},{"name":"reviewLifecycleActor","required":false,"in":"query","schema":{"allOf":[{"$ref":"#/components/schemas/ReviewLifecycleActor"}]}},{"name":"reviewLifecycleNextAction","required":false,"in":"query","schema":{"allOf":[{"$ref":"#/components/schemas/ReviewLifecycleNextAction"}]}},{"name":"reviewLifecycleBlocksPublishing","required":false,"in":"query","description":"Filter content by whether reviewLifecycle currently blocks scheduling or publishing.","schema":{"description":"Filter content by whether reviewLifecycle currently blocks scheduling or publishing.","type":"boolean"}},{"name":"reviewLifecycleBlocker","required":false,"in":"query","schema":{"allOf":[{"$ref":"#/components/schemas/ReviewLifecycleBlockerCode"}]}},{"name":"reviewLifecycleBatchId","required":false,"in":"query","description":"Filter by reviewLifecycle.clientReview.batchId.","schema":{"description":"Filter by reviewLifecycle.clientReview.batchId.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},{"name":"reviewLifecycleItemId","required":false,"in":"query","description":"Filter by reviewLifecycle.clientReview.itemId.","schema":{"description":"Filter by reviewLifecycle.clientReview.itemId.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},{"name":"integrationId","required":false,"in":"query","schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},{"name":"sortBy","required":false,"in":"query","schema":{"allOf":[{"$ref":"#/components/schemas/PublicContentSortField"}]}},{"name":"sortDirection","required":false,"in":"query","schema":{"allOf":[{"$ref":"#/components/schemas/PublicContentSortDirection"}]}},{"name":"limit","required":false,"in":"query","schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"offset","required":false,"in":"query","schema":{"default":0,"type":"integer","minimum":0,"maximum":9007199254740991}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Paginated content list","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicContentListItemDto"}},"meta":{"$ref":"#/components/schemas/OffsetPaginationMetaDto"}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List content","tags":["Content"]}},"/v1/workspaces/{workspaceId}/content/failed-count":{"get":{"operationId":"PublicContentController_getFailedCount_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Failed content count","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicContentCountDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get failed content count","tags":["Content"]}},"/v1/workspaces/{workspaceId}/content/pending-approval-count":{"get":{"operationId":"PublicContentController_getPendingApprovalCount_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Pending approval content count","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicContentCountDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get pending approval content count","tags":["Content"]}},"/v1/workspaces/{workspaceId}/content/{contentId}/versions":{"get":{"operationId":"PublicContentController_listContentVersions_v1","parameters":[{"name":"contentId","required":true,"in":"path","description":"Content UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Content versions, newest first","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicContentVersionEntryDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List content versions","tags":["Content"]}},"/v1/workspaces/{workspaceId}/content/{contentId}/versions/{version}/restore":{"post":{"operationId":"PublicContentController_restoreContentVersion_v1","parameters":[{"name":"contentId","required":true,"in":"path","description":"Content UUID","schema":{"type":"string"}},{"name":"version","required":true,"in":"path","description":"Version number to restore","schema":{"type":"number"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestoreContentVersionDto"}}}},"responses":{"201":{"description":"Version restored","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicContentVersionRestoreResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Restore a content version","tags":["Content"]}},"/v1/workspaces/{workspaceId}/content/{id}":{"get":{"description":"Returns full content detail including integration info, media, thread messages, current metadata, and sanitized platform-specific settings.","operationId":"PublicContentController_getOne_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Content UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Content detail","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicContentDetailDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}},"404":{"description":"Content not found"}},"security":[{"bearer":[]}],"summary":"Get content","tags":["Content"]},"patch":{"description":"Update a draft or scheduled content item. All fields are optional; only provided fields are changed.","operationId":"PublicContentController_update_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Content UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/UpdatePublicPostDto"}]}}}},"responses":{"200":{"description":"Content updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicContentMutationResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}},"400":{"description":"Can only update draft or scheduled content"},"404":{"description":"Content not found"}},"security":[{"bearer":[]}],"summary":"Update content","tags":["Content"]},"delete":{"operationId":"PublicContentController_remove_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Content UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"Content deleted"}},"security":[{"bearer":[]}],"summary":"Delete content","tags":["Content"]}},"/v1/workspaces/{workspaceId}/content/{id}/schedule":{"patch":{"operationId":"PublicContentController_reschedule_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Content UUID","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional workflow idempotency key scoped to workspace, authenticated principal, method, and route.","required":false,"schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RescheduleContentDto"}}}},"responses":{"200":{"description":"Content scheduled or rescheduled","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicContentMutationResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}},"404":{"description":"Content not found"}},"security":[{"bearer":[]}],"summary":"Schedule or reschedule content","tags":["Content"]}},"/v1/workspaces/{workspaceId}/content/{id}/revert-to-draft":{"post":{"description":"Uses the existing web action, including queue cancellation and publishing locks. Optional expectedRootPostId and expectedRootEditionIds must be supplied together; stale scope is rejected.","operationId":"PublicContentController_revertToDraft_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Scheduled root content edition UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/RevertContentToDraftDto"}]}}}},"responses":{"201":{"description":"Editions returned to draft","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicContentRevertedDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Return all scheduled editions of the same root content to draft","tags":["Content"]}},"/v1/workspaces/{workspaceId}/content/{id}/intended-publish-time":{"patch":{"operationId":"PublicContentController_setIntendedPublishTime_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Content UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RescheduleContentDto"}}}},"responses":{"200":{"description":"Intended publish time set","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicIntendedPublishTimeResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Set intended publish time for draft or pending approval content","tags":["Content"]}},"/v1/workspaces/{workspaceId}/content/{id}/published-caption":{"patch":{"description":"Replaces the live text of published, user-created Facebook, LinkedIn or LinkedIn Page root content, then stores it in Maeve Social. Read allowedActions.canUpdatePublishedCaption first. LinkedIn text is limited to 3,000 characters, and only the text changes: media, polls, documents and link previews stay as published. An empty message clears the caption where the platform allows it.","operationId":"PublicContentController_updatePublishedCaption_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Content UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdatePublishedCaptionDto"}}}},"responses":{"200":{"description":"Published caption updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicContentCaptionResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Edit the caption of a published post","tags":["Content"]}},"/v1/workspaces/{workspaceId}/content/{id}/retry":{"post":{"operationId":"PublicContentController_retry_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Content UUID","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional workflow idempotency key scoped to workspace, authenticated principal, method, and route.","required":false,"schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"201":{"description":"Failed content queued for retry","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicContentMutationResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Retry failed content","tags":["Content"]}},"/v1/workspaces/{workspaceId}/content/{id}/metadata":{"patch":{"description":"Update the organizational title and planning metadata on draft, scheduled, or published content. The organizational title is internal to Maeve and never changes a provider-facing title. Omitted fields are unchanged; provided arrays replace existing assignments.","operationId":"PublicContentController_updateMetadata_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Content UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/UpdateContentMetadataDto"}]}}}},"responses":{"200":{"description":"Content planning metadata updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicContentMetadataResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}},"400":{"description":"Can only update draft, scheduled, or published content metadata"},"404":{"description":"Content not found"}},"security":[{"bearer":[]}],"summary":"Update content organizational metadata","tags":["Content"]}},"/v1/workspaces/{workspaceId}/content/{id}/notes":{"patch":{"description":"Replace the free-form rich-text notes attached to a content item. Notes are internal — never published.","operationId":"PublicContentController_updateNotes_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Content UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdatePublicPostNotesDto"}}}},"responses":{"200":{"description":"Notes updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicContentNotesResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}},"404":{"description":"Content not found"}},"security":[{"bearer":[]}],"summary":"Update content notes","tags":["Content"]}},"/v1/workspaces/{workspaceId}/content/{id}/publish":{"post":{"description":"Immediately publish a draft or scheduled content item. Returns status \"scheduled\" because the publish job is queued with near-zero delay.","operationId":"PublicContentController_publishNow_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Content UUID","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional workflow idempotency key scoped to workspace, authenticated principal, method, and route.","required":false,"schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"201":{"description":"Content queued for immediate publish","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicContentMutationResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}},"400":{"description":"Can only publish draft or scheduled content"},"404":{"description":"Content not found"}},"security":[{"bearer":[]}],"summary":"Publish content now","tags":["Content"]}},"/v1/workspaces/{workspaceId}/articles":{"get":{"description":"Lists articles from the Articles section, most recently changed first, without their bodies.","operationId":"PublicArticlesController_list_v1","parameters":[{"name":"limit","required":false,"in":"query","description":"Page size. Default 25, maximum 100.","schema":{"type":"string"}},{"name":"offset","required":false,"in":"query","description":"Zero-based page offset.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Articles","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"articles":{"type":"array","items":{"type":"object","properties":{"contentId":{"description":"Names the article here and in content.* lifecycle operations.","type":"string"},"rootId":{"type":"string"},"title":{"type":"string"},"status":{"type":"string"},"workflowStatus":{"type":"string"},"editable":{"description":"False while the article is scheduled, in review, publishing or published. Unschedule it to edit.","type":"boolean"},"destination":{"type":"object","properties":{"integrationId":{"type":"string"},"platform":{"type":"string"},"username":{"nullable":true,"type":"string"},"name":{"nullable":true,"type":"string"},"canPublishArticles":{"type":"boolean"}},"required":["integrationId","platform","username","name","canPublishArticles"],"additionalProperties":false},"cover":{"nullable":true,"type":"object","properties":{"mediaId":{"type":"string"},"url":{"type":"string"},"altText":{"description":"Media Room alt text, which X receives with the image.","nullable":true,"type":"string"}},"required":["mediaId","url","altText"],"additionalProperties":false},"scheduledAt":{"nullable":true,"type":"string"},"sentAt":{"nullable":true,"type":"string"},"permalink":{"description":"The published article on X. Null until X returns one.","nullable":true,"type":"string"},"xDraft":{"description":"The last draft sent to X drafts, if any.","nullable":true,"type":"object","properties":{"articleId":{"type":"string"},"sentAt":{"nullable":true,"type":"string"}},"required":["articleId","sentAt"],"additionalProperties":false},"updatedAt":{"type":"string"}},"required":["contentId","rootId","title","status","workflowStatus","editable","destination","cover","scheduledAt","sentAt","permalink","xDraft","updatedAt"],"additionalProperties":false}},"pagination":{"type":"object","properties":{"limit":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"offset":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"total":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"hasMore":{"type":"boolean"}},"required":["limit","offset","total","hasMore"],"additionalProperties":false}},"required":["articles","pagination"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List X Articles","tags":["Articles"]},"post":{"description":"Creates a draft article. Upload images to the Media Room first, then set coverMediaId and reference inline images with <img data-media-id=\"...\">. Nothing is sent to X.","operationId":"PublicArticlesController_create_v1","parameters":[{"name":"idempotency-key","required":true,"in":"header","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Retry with the same key and body to get the recorded result instead of a second article.","required":false,"schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"integrationId":{"description":"X integration from integrations.list whose content.canPublishArticles is true (X Premium).","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"title":{"description":"Article title shown on X, up to 200 characters.","type":"string","minLength":1,"maxLength":200},"bodyHtml":{"description":"Article body as HTML: p, h1 to h3, strong, em, s, a href, blockquote, ul, ol, li, hr, br and img. Each img needs data-media-id set to a still image of 5 MB or less from the Media Room, and Maeve fills in its src. Up to 100,000 characters of text and 20 images.","type":"string","maxLength":1000000},"coverMediaId":{"description":"Media Room ID of a still image of 5 MB or less (not a GIF) to use as the cover.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["integrationId","title"],"additionalProperties":false}}}},"responses":{"201":{"description":"Created article","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"article":{"type":"object","properties":{"contentId":{"description":"Names the article here and in content.* lifecycle operations.","type":"string"},"rootId":{"type":"string"},"title":{"type":"string"},"status":{"type":"string"},"workflowStatus":{"type":"string"},"editable":{"description":"False while the article is scheduled, in review, publishing or published. Unschedule it to edit.","type":"boolean"},"destination":{"type":"object","properties":{"integrationId":{"type":"string"},"platform":{"type":"string"},"username":{"nullable":true,"type":"string"},"name":{"nullable":true,"type":"string"},"canPublishArticles":{"type":"boolean"}},"required":["integrationId","platform","username","name","canPublishArticles"],"additionalProperties":false},"cover":{"nullable":true,"type":"object","properties":{"mediaId":{"type":"string"},"url":{"type":"string"},"altText":{"description":"Media Room alt text, which X receives with the image.","nullable":true,"type":"string"}},"required":["mediaId","url","altText"],"additionalProperties":false},"scheduledAt":{"nullable":true,"type":"string"},"sentAt":{"nullable":true,"type":"string"},"permalink":{"description":"The published article on X. Null until X returns one.","nullable":true,"type":"string"},"xDraft":{"description":"The last draft sent to X drafts, if any.","nullable":true,"type":"object","properties":{"articleId":{"type":"string"},"sentAt":{"nullable":true,"type":"string"}},"required":["articleId","sentAt"],"additionalProperties":false},"updatedAt":{"type":"string"},"bodyHtml":{"type":"string"},"bodyVersion":{"description":"Pass as expectedBodyVersion when replacing bodyHtml.","type":"string"},"images":{"description":"Inline images in body order.","type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string"},"url":{"type":"string"},"altText":{"description":"Media Room alt text, which X receives with the image.","nullable":true,"type":"string"}},"required":["mediaId","url","altText"],"additionalProperties":false}},"characterCount":{"description":"Body text length, counted as publishing counts it.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"error":{"description":"Why the last publish failed, when status is failed.","nullable":true,"type":"string"}},"required":["contentId","rootId","title","status","workflowStatus","editable","destination","cover","scheduledAt","sentAt","permalink","xDraft","updatedAt","bodyHtml","bodyVersion","images","characterCount","error"],"additionalProperties":false},"idempotency":{"type":"object","properties":{"key":{"type":"string"},"replayed":{"type":"boolean"}},"required":["key","replayed"],"additionalProperties":false}},"required":["article","idempotency"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Create an X Article","tags":["Articles"]}},"/v1/workspaces/{workspaceId}/articles/{contentId}":{"get":{"description":"Returns the title, HTML body, bodyVersion, cover, inline images in body order, status and destination.","operationId":"PublicArticlesController_get_v1","parameters":[{"name":"contentId","required":true,"in":"path","description":"Article content ID. Content lifecycle routes accept it too.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Article","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"article":{"type":"object","properties":{"contentId":{"description":"Names the article here and in content.* lifecycle operations.","type":"string"},"rootId":{"type":"string"},"title":{"type":"string"},"status":{"type":"string"},"workflowStatus":{"type":"string"},"editable":{"description":"False while the article is scheduled, in review, publishing or published. Unschedule it to edit.","type":"boolean"},"destination":{"type":"object","properties":{"integrationId":{"type":"string"},"platform":{"type":"string"},"username":{"nullable":true,"type":"string"},"name":{"nullable":true,"type":"string"},"canPublishArticles":{"type":"boolean"}},"required":["integrationId","platform","username","name","canPublishArticles"],"additionalProperties":false},"cover":{"nullable":true,"type":"object","properties":{"mediaId":{"type":"string"},"url":{"type":"string"},"altText":{"description":"Media Room alt text, which X receives with the image.","nullable":true,"type":"string"}},"required":["mediaId","url","altText"],"additionalProperties":false},"scheduledAt":{"nullable":true,"type":"string"},"sentAt":{"nullable":true,"type":"string"},"permalink":{"description":"The published article on X. Null until X returns one.","nullable":true,"type":"string"},"xDraft":{"description":"The last draft sent to X drafts, if any.","nullable":true,"type":"object","properties":{"articleId":{"type":"string"},"sentAt":{"nullable":true,"type":"string"}},"required":["articleId","sentAt"],"additionalProperties":false},"updatedAt":{"type":"string"},"bodyHtml":{"type":"string"},"bodyVersion":{"description":"Pass as expectedBodyVersion when replacing bodyHtml.","type":"string"},"images":{"description":"Inline images in body order.","type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string"},"url":{"type":"string"},"altText":{"description":"Media Room alt text, which X receives with the image.","nullable":true,"type":"string"}},"required":["mediaId","url","altText"],"additionalProperties":false}},"characterCount":{"description":"Body text length, counted as publishing counts it.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"error":{"description":"Why the last publish failed, when status is failed.","nullable":true,"type":"string"}},"required":["contentId","rootId","title","status","workflowStatus","editable","destination","cover","scheduledAt","sentAt","permalink","xDraft","updatedAt","bodyHtml","bodyVersion","images","characterCount","error"],"additionalProperties":false}},"required":["article"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Get an X Article","tags":["Articles"]},"patch":{"description":"Changes the title, body or cover of a draft article. bodyHtml replaces the whole body and needs expectedBodyVersion from the latest read; a body changed since then answers 409 POST_BODY_CHANGED. coverMediaId null removes the cover.","operationId":"PublicArticlesController_update_v1","parameters":[{"name":"contentId","required":true,"in":"path","description":"Article content ID. Content lifecycle routes accept it too.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"title":{"description":"Article title shown on X, up to 200 characters.","type":"string","minLength":1,"maxLength":200},"bodyHtml":{"description":"Replaces the whole body. Requires expectedBodyVersion.","type":"string","maxLength":1000000},"expectedBodyVersion":{"description":"The bodyVersion from the latest read. A body changed since then is refused with 409.","type":"string","minLength":1},"coverMediaId":{"description":"A still image ID, or null to remove it.","nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"additionalProperties":false}}}},"responses":{"200":{"description":"Updated article","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"article":{"type":"object","properties":{"contentId":{"description":"Names the article here and in content.* lifecycle operations.","type":"string"},"rootId":{"type":"string"},"title":{"type":"string"},"status":{"type":"string"},"workflowStatus":{"type":"string"},"editable":{"description":"False while the article is scheduled, in review, publishing or published. Unschedule it to edit.","type":"boolean"},"destination":{"type":"object","properties":{"integrationId":{"type":"string"},"platform":{"type":"string"},"username":{"nullable":true,"type":"string"},"name":{"nullable":true,"type":"string"},"canPublishArticles":{"type":"boolean"}},"required":["integrationId","platform","username","name","canPublishArticles"],"additionalProperties":false},"cover":{"nullable":true,"type":"object","properties":{"mediaId":{"type":"string"},"url":{"type":"string"},"altText":{"description":"Media Room alt text, which X receives with the image.","nullable":true,"type":"string"}},"required":["mediaId","url","altText"],"additionalProperties":false},"scheduledAt":{"nullable":true,"type":"string"},"sentAt":{"nullable":true,"type":"string"},"permalink":{"description":"The published article on X. Null until X returns one.","nullable":true,"type":"string"},"xDraft":{"description":"The last draft sent to X drafts, if any.","nullable":true,"type":"object","properties":{"articleId":{"type":"string"},"sentAt":{"nullable":true,"type":"string"}},"required":["articleId","sentAt"],"additionalProperties":false},"updatedAt":{"type":"string"},"bodyHtml":{"type":"string"},"bodyVersion":{"description":"Pass as expectedBodyVersion when replacing bodyHtml.","type":"string"},"images":{"description":"Inline images in body order.","type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string"},"url":{"type":"string"},"altText":{"description":"Media Room alt text, which X receives with the image.","nullable":true,"type":"string"}},"required":["mediaId","url","altText"],"additionalProperties":false}},"characterCount":{"description":"Body text length, counted as publishing counts it.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"error":{"description":"Why the last publish failed, when status is failed.","nullable":true,"type":"string"}},"required":["contentId","rootId","title","status","workflowStatus","editable","destination","cover","scheduledAt","sentAt","permalink","xDraft","updatedAt","bodyHtml","bodyVersion","images","characterCount","error"],"additionalProperties":false}},"required":["article"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Update an X Article","tags":["Articles"]}},"/v1/workspaces/{workspaceId}/articles/{contentId}/x-draft":{"post":{"description":"Creates a draft of the article in the account's drafts on X without publishing it. X's API cannot delete the draft. An unchanged article returns the draft it already made.","operationId":"PublicArticlesController_sendToXDrafts_v1","parameters":[{"name":"contentId","required":true,"in":"path","description":"Article content ID. Content lifecycle routes accept it too.","schema":{"type":"string"}},{"name":"idempotency-key","required":true,"in":"header","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Retry with the same key to replay the result.","required":true,"schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Draft sent to X","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"contentId":{"type":"string"},"articleId":{"description":"X draft article ID.","type":"string"},"draftUrl":{"description":"Where X keeps article drafts. X does not link to a single draft.","type":"string"}},"required":["contentId","articleId","draftUrl"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Send an X Article to X drafts","tags":["Articles"]}},"/v1/workspaces/{workspaceId}/approval-workflows":{"get":{"operationId":"PublicApprovalWorkflowsController_list_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Approval workflows","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicApprovalWorkflowDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List approval workflows in their routing order","tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/resolve":{"post":{"description":"Send either `contentIds` for saved content, or `channels` with the root post metadata for content that is not saved yet. Unsaved channels are routed as authored by the caller. Submitting routes what is saved again, so this is only a preview.","operationId":"PublicApprovalWorkflowsController_resolve_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ResolveReviewDto"}]}}}},"responses":{"200":{"description":"One resolution per channel","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicReviewResolutionDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Preview which approval workflow each channel routes to","tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/submit":{"post":{"description":"Each item names its choice (workflow, custom stages, or none) and action. Every workflow or custom item belongs to exactly one group, and each group becomes a review that is sent immediately. `requestId` makes retries safe: repeating a request replays its stored results.","operationId":"PublicApprovalWorkflowsController_submit_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubmitReviewsDto"}}}},"responses":{"200":{"description":"One result per item","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicReviewSubmitResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}},"409":{"description":"REVIEW_REQUIRED (details.resolutions lists the routing), REVIEW_WORKFLOW_UNAVAILABLE, or REVIEW_SUBMIT_STALE"}},"security":[{"bearer":[]}],"summary":"Send saved channels to review, or save, schedule or publish them without one","tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews":{"post":{"operationId":"PublicReviewsController_create_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateReviewDto"}}}},"responses":{"201":{"description":"Review created","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicReviewCreatedDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Create a review","tags":["Reviews"]},"get":{"operationId":"PublicReviewsController_list_v1","parameters":[{"name":"status","required":false,"in":"query","description":"Only reviews in this status.","schema":{"type":"string","enum":["draft","active","completed","cancelled","expired"]}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Reviews with their stages and items","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicReviewListItemDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List reviews","tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/preview":{"post":{"operationId":"PublicReviewsController_preview_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PreviewReviewDto"}}}},"responses":{"201":{"description":"Which content can enter a review","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicReviewEligibilityDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/inbox":{"get":{"operationId":"PublicReviewsController_inbox_v1","parameters":[{"name":"platform","required":true,"in":"query","schema":{"type":"string"}},{"name":"urgency","required":true,"in":"query","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Review inbox items for the caller","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicReviewInboxItemDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/summary":{"get":{"operationId":"PublicReviewsController_summary_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Review inbox counts for the caller","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicReviewSummaryCountsDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/history":{"get":{"operationId":"PublicReviewsController_history_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Completed, cancelled and expired reviews","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicReviewListItemDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/history/content/{contentId}":{"get":{"operationId":"PublicReviewsController_historyForContent_v1","parameters":[{"name":"contentId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Every review item for the content","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicReviewContentHistoryItemDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/history/{reviewId}":{"get":{"operationId":"PublicReviewsController_historyReview_v1","parameters":[{"name":"reviewId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"The review and one view per item","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicReviewWithItemsDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/{reviewId}":{"get":{"operationId":"PublicReviewsController_get_v1","parameters":[{"name":"reviewId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"One view per review item","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicReviewViewDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]},"patch":{"operationId":"PublicReviewsController_update_v1","parameters":[{"name":"reviewId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateReviewDto"}}}},"responses":{"200":{"description":"Review settings updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicReviewConfigRevisionDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/{reviewId}/stages":{"put":{"operationId":"PublicReviewsController_replaceStages_v1","parameters":[{"name":"reviewId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReplaceReviewStagesDto"}}}},"responses":{"200":{"description":"Review stages replaced","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicReviewStagesReplacedDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/{reviewId}/send":{"post":{"operationId":"PublicReviewsController_send_v1","parameters":[{"name":"reviewId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"201":{"description":"Review sent","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGenericResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/{reviewId}/remind":{"post":{"operationId":"PublicReviewsController_remind_v1","parameters":[{"name":"reviewId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/RemindReviewDto"}]}}}},"responses":{"201":{"description":"Reminder sent","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGenericResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/{reviewId}/cancel":{"post":{"operationId":"PublicReviewsController_cancel_v1","parameters":[{"name":"reviewId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"201":{"description":"Review cancelled","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGenericResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/{reviewId}/items":{"post":{"operationId":"PublicReviewsController_addItem_v1","parameters":[{"name":"reviewId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddReviewItemDto"}}}},"responses":{"201":{"description":"Item added to the review","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicReviewItemAddedDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/{reviewId}/items/decisions":{"post":{"operationId":"PublicReviewsController_bulkDecide_v1","parameters":[{"name":"reviewId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkReviewDecisionDto"}}}},"responses":{"201":{"description":"One result per decision","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicReviewDecisionResultDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/{reviewId}/items/{itemId}":{"delete":{"operationId":"PublicReviewsController_removeItem_v1","parameters":[{"name":"reviewId","required":true,"in":"path","schema":{"type":"string"}},{"name":"itemId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Item removed from the review","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGenericResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/{reviewId}/items/{itemId}/decision":{"post":{"operationId":"PublicReviewsController_decide_v1","parameters":[{"name":"reviewId","required":true,"in":"path","schema":{"type":"string"}},{"name":"itemId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReviewDecisionDto"}}}},"responses":{"201":{"description":"Decision recorded","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicReviewDecisionResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/{reviewId}/items/{itemId}/override":{"post":{"operationId":"PublicReviewsController_override_v1","parameters":[{"name":"reviewId","required":true,"in":"path","schema":{"type":"string"}},{"name":"itemId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReviewOverrideDto"}}}},"responses":{"201":{"description":"Override recorded","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicReviewDecisionIdDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/{reviewId}/items/{itemId}/revoke":{"post":{"operationId":"PublicReviewsController_revoke_v1","parameters":[{"name":"reviewId","required":true,"in":"path","schema":{"type":"string"}},{"name":"itemId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReviewRevokeDto"}}}},"responses":{"201":{"description":"Decision revoked","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicReviewDecisionIdDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/{reviewId}/items/{itemId}/comments":{"post":{"operationId":"PublicReviewsController_comment_v1","parameters":[{"name":"reviewId","required":true,"in":"path","schema":{"type":"string"}},{"name":"itemId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReviewCommentDto"}}}},"responses":{"201":{"description":"Comment added","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicReviewCommentCreatedDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/{reviewId}/items/{itemId}/activity":{"get":{"operationId":"PublicReviewsController_listActivity_v1","parameters":[{"name":"reviewId","required":true,"in":"path","schema":{"type":"string"}},{"name":"itemId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Activity on the review item","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicReviewActivityDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/{reviewId}/items/{itemId}/activity/{activityId}/reactions":{"post":{"operationId":"PublicReviewsController_react_v1","parameters":[{"name":"reviewId","required":true,"in":"path","schema":{"type":"string"}},{"name":"activityId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReviewReactionDto"}}}},"responses":{"201":{"description":"Reaction added","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGenericResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/{reviewId}/items/{itemId}/activity/{activityId}/reactions/{emoji}":{"delete":{"operationId":"PublicReviewsController_unreact_v1","parameters":[{"name":"reviewId","required":true,"in":"path","schema":{"type":"string"}},{"name":"activityId","required":true,"in":"path","schema":{"type":"string"}},{"name":"emoji","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Reaction removed","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGenericResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/{reviewId}/items/{itemId}/comment-attachments/init":{"post":{"operationId":"PublicReviewsController_initAttachment_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InitApprovalAttachmentUploadDto"}}}},"responses":{"201":{"description":"Attachment upload reserved","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicReviewAttachmentUploadDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/{reviewId}/items/{itemId}/comment-attachments/{attachmentId}/complete":{"post":{"operationId":"PublicReviewsController_completeAttachment_v1","parameters":[{"name":"attachmentId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"201":{"description":"Attachment upload completed","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicReviewActivityAttachmentDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/reviews/{reviewId}/items/{itemId}/comment-attachments/{attachmentId}/abort":{"post":{"operationId":"PublicReviewsController_abortAttachment_v1","parameters":[{"name":"attachmentId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"201":{"description":"Attachment upload aborted","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGenericResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"tags":["Reviews"]}},"/v1/workspaces/{workspaceId}/content/{id}/resolve-publishing-result":{"post":{"operationId":"PublicContentRecoveryController_resolve_v1","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResolvePublishingResultDto"}}}},"responses":{"201":{"description":"Publishing result recorded","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicPublishingResultResolutionDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Record a verified outcome for content awaiting publishing confirmation","tags":["Public Content"]}},"/v1/workspaces/{workspaceId}/content/recurring-occurrences/{occurrenceId}/cancel":{"post":{"description":"Cancels one occurrence of a recurring series along with its linked content. Discover the occurrenceId via `recurringMetadata` on the content list. Already-published occurrences cannot be cancelled.","operationId":"PublicRecurringController_cancelOccurrence_v1","parameters":[{"name":"occurrenceId","required":true,"in":"path","description":"Recurring occurrence UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/PublicCancelRecurringOccurrenceDto"}]}}}},"responses":{"200":{"description":"Occurrence cancelled","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicRecurringOccurrenceCancelResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Cancel a recurring occurrence","tags":["Content"]}},"/v1/workspaces/{workspaceId}/content/recurring-series/{seriesId}/cancel":{"post":{"description":"Cancels the series and every not-yet-published occurrence from `effectiveOccurrenceId` onward. Discover seriesId, occurrenceId, and seriesVersion via `recurringMetadata` on the content list.","operationId":"PublicRecurringController_cancelSeries_v1","parameters":[{"name":"seriesId","required":true,"in":"path","description":"Recurring series UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCancelRecurringSeriesDto"}}}},"responses":{"200":{"description":"Series cancelled","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicRecurringSeriesCancelResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Cancel a recurring series from an occurrence forward","tags":["Content"]}},"/v1/workspaces/{workspaceId}/media/upload":{"post":{"description":"Returns a presigned URL for direct upload to cloud storage.","operationId":"PublicMediaController_initUpload_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InitUploadDto"}}}},"responses":{"201":{"description":"Upload session created with presigned URL","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaUploadSessionDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Start a media upload","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/upload/{sessionId}/complete":{"post":{"description":"Finalize an upload session after the file has been uploaded to the presigned URL.","operationId":"PublicMediaController_completeUpload_v1","parameters":[{"name":"sessionId","required":true,"in":"path","description":"Upload session UUID from the init upload response","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/CompleteUploadBodyDto"}]}}}},"responses":{"200":{"description":"Upload completed and returns public media metadata","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaUploadCompleteDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Complete a media upload","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media":{"get":{"description":"Cursor-based paginated media listing with optional type, search, state, folder, label, usage, and sort filters.","operationId":"PublicMediaController_list_v1","parameters":[{"name":"folderId","required":false,"in":"query","schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"rootOnly","required":false,"in":"query","description":"Only return media in the workspace root folder.","schema":{"description":"Only return media in the workspace root folder.","type":"boolean"}},{"name":"labelIds","required":false,"in":"query","description":"Comma-separated media label UUIDs.","schema":{"description":"Comma-separated media label UUIDs.","type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},{"name":"isUnlabeled","required":false,"in":"query","description":"Only return media with no attached media labels.","schema":{"description":"Only return media with no attached media labels.","type":"boolean"}},{"name":"type","required":false,"in":"query","schema":{"type":"string","enum":["image","video","gif"]}},{"name":"search","required":false,"in":"query","schema":{"type":"string"}},{"name":"isFavorite","required":false,"in":"query","schema":{"type":"boolean"}},{"name":"isUsed","required":false,"in":"query","schema":{"type":"boolean"}},{"name":"isUnused","required":false,"in":"query","schema":{"type":"boolean"}},{"name":"state","required":false,"in":"query","description":"Media lifecycle state. Active excludes Bin items; deleted returns Bin items.","schema":{"description":"Media lifecycle state. Active excludes Bin items; deleted returns Bin items.","default":"active","type":"string","enum":["active","deleted","all"]}},{"name":"sortBy","required":false,"in":"query","schema":{"default":"createdAt","type":"string","enum":["createdAt","filename","fileSize"]}},{"name":"order","required":false,"in":"query","schema":{"default":"desc","type":"string","enum":["asc","desc"]}},{"name":"limit","required":false,"in":"query","schema":{"default":50,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","required":false,"in":"query","schema":{"type":"string"}},{"name":"source","required":false,"in":"query","description":"Only media uploaded through a client upload link.","schema":{"description":"Only media uploaded through a client upload link.","type":"string","enum":["client_upload"]}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Paginated media list","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicMediaListItemDto"}},"meta":{"$ref":"#/components/schemas/CursorPaginationMetaDto"}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List media","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/folders":{"post":{"description":"Media folders support root folders and one level of subfolders.","operationId":"PublicMediaController_createFolder_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateFolderDto"}}}},"responses":{"201":{"description":"Media folder created","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaFolderDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Create a media folder","tags":["Media"]},"get":{"description":"Cursor-paginated media folder listing.","operationId":"PublicMediaController_listFolders_v1","parameters":[{"name":"parentId","required":false,"in":"query","description":"Parent folder UUID, or \"root\" for top-level folders. Omit to list all folders.","schema":{"description":"Parent folder UUID, or \"root\" for top-level folders. Omit to list all folders.","type":"string","pattern":"^(root|[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12})$"}},{"name":"limit","required":false,"in":"query","schema":{"default":50,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","required":false,"in":"query","description":"Opaque continuation cursor from the previous folder page.","schema":{"description":"Opaque continuation cursor from the previous folder page.","maxLength":2048,"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Paginated media folder list","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicMediaFolderDto"}},"meta":{"$ref":"#/components/schemas/CursorPaginationMetaDto"}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List media folders","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/folders/{id}":{"get":{"operationId":"PublicMediaController_getFolder_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Media folder UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Media folder detail","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaFolderDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get a media folder","tags":["Media"]},"patch":{"operationId":"PublicMediaController_updateFolder_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Media folder UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateFolderDto"}}}},"responses":{"200":{"description":"Media folder updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaFolderDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Update a media folder","tags":["Media"]},"delete":{"operationId":"PublicMediaController_deleteFolder_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Media folder UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Media folder deleted","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaMutationSuccessDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Delete a media folder","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/folders/{id}/path":{"get":{"operationId":"PublicMediaController_getFolderPath_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Media folder UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Media folder path","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicMediaFolderDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get media folder path","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/folders/{id}/move":{"patch":{"description":"Folders may be moved to root or under a root folder. Deeper nesting is rejected.","operationId":"PublicMediaController_moveFolder_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Media folder UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/MoveFolderDto"}]}}}},"responses":{"200":{"description":"Media folder moved","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaFolderDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Move a media folder","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/labels":{"post":{"operationId":"PublicMediaController_createLabel_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateLabelDto"}}}},"responses":{"201":{"description":"Workspace label created","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaLabelDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Create a workspace label for media","tags":["Media"]},"get":{"description":"Media-scoped compatibility read for workspace labels. Use /workspaces/{workspaceId}/labels for the canonical taxonomy.read label catalog.","operationId":"PublicMediaController_listLabels_v1","parameters":[{"name":"groupId","required":false,"in":"query","description":"Filter labels by label group UUID; pass empty for ungrouped labels.","schema":{}},{"name":"includeMerged","required":false,"in":"query","description":"Set to true to include merged labels.","schema":{}},{"name":"search","required":false,"in":"query","description":"Case-insensitive label search.","schema":{}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Workspace label list for media","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicMediaLabelDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List workspace labels for media","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/labels/usage":{"get":{"operationId":"PublicMediaController_getLabelUsageCounts_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Label usage counts","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicMediaLabelUsageDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get workspace label usage counts for media","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/labels/health":{"get":{"operationId":"PublicMediaController_getLabelHealth_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Label health summary","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaLabelHealthDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get workspace label health summary for media","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/labels/{id}":{"patch":{"operationId":"PublicMediaController_updateLabel_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Workspace label UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/UpdateLabelDto"}]}}}},"responses":{"200":{"description":"Workspace label updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaLabelDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Update a workspace label for media","tags":["Media"]},"delete":{"operationId":"PublicMediaController_deleteLabel_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Workspace label UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Workspace label deleted","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaMutationSuccessDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Delete a workspace label for media","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/labels/{id}/merge":{"post":{"operationId":"PublicMediaController_mergeLabel_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Source workspace label UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MergeLabelsDto"}}}},"responses":{"200":{"description":"Merged source label","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaLabelDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Merge a workspace label into another label for media","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/label-groups":{"post":{"operationId":"PublicMediaController_createLabelGroup_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateLabelGroupDto"}}}},"responses":{"201":{"description":"Label group created","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicLabelGroupDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Create a label group","tags":["Media"]},"get":{"operationId":"PublicMediaController_listLabelGroups_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Label group list","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicLabelGroupDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List label groups","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/label-groups/reorder":{"post":{"operationId":"PublicMediaController_reorderLabelGroups_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReorderLabelGroupsDto"}}}},"responses":{"200":{"description":"Label groups reordered","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaMutationSuccessDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Reorder label groups","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/label-groups/ungroup-labels":{"post":{"operationId":"PublicMediaController_ungroupLabels_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MoveLabelsToGroupDto"}}}},"responses":{"201":{"description":"Labels removed from their groups","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicLabelGroupMoveResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Remove labels from any label group","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/label-groups/{id}/labels":{"post":{"operationId":"PublicMediaController_moveLabelsToGroup_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Label group UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MoveLabelsToGroupDto"}}}},"responses":{"201":{"description":"Labels moved into the group","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicLabelGroupMoveResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Move labels into a label group","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/label-groups/{id}":{"patch":{"operationId":"PublicMediaController_updateLabelGroup_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Label group UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/UpdateLabelGroupDto"}]}}}},"responses":{"200":{"description":"Label group updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicLabelGroupDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Update a label group","tags":["Media"]},"delete":{"description":"Deletes the group after deleting or ungrouping its labels, as selected in the request.","operationId":"PublicMediaController_deleteLabelGroup_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Label group UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteLabelGroupDto"}}}},"responses":{"200":{"description":"Label group deleted","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaMutationSuccessDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Delete a label group","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/bulk-delete":{"post":{"description":"Moves active media to the Bin and returns the deleteAfter timestamp. Scheduled-post usage blocks deletion.","operationId":"PublicMediaController_bulkDelete_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkMediaIdsDto"}}}},"responses":{"200":{"description":"Bulk delete result","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaMutationSuccessDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Move media to the Bin in bulk","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/bulk-restore":{"post":{"operationId":"PublicMediaController_bulkRestore_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkMediaIdsDto"}}}},"responses":{"200":{"description":"Bulk restore result","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaMutationSuccessDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Restore media from the Bin in bulk","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/bulk-delete-forever":{"post":{"operationId":"PublicMediaController_bulkDeleteForever_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkMediaIdsDto"}}}},"responses":{"200":{"description":"Bulk permanent delete result","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaMutationSuccessDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Permanently delete binned media in bulk","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/bulk-move":{"post":{"operationId":"PublicMediaController_bulkMove_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkMoveDto"}}}},"responses":{"200":{"description":"Bulk move result","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaMutationSuccessDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Move media in bulk","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/bulk-label":{"post":{"operationId":"PublicMediaController_bulkAddLabels_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkLabelDto"}}}},"responses":{"200":{"description":"Bulk label result","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaMutationSuccessDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Add labels to media in bulk","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/bulk-unlabel":{"post":{"operationId":"PublicMediaController_bulkRemoveLabels_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkLabelDto"}}}},"responses":{"200":{"description":"Bulk unlabel result","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaMutationSuccessDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Remove labels from media in bulk","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/{id}/usage-history":{"get":{"operationId":"PublicMediaController_getUsageHistory_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Media UUID","schema":{"type":"string"}},{"name":"limit","required":false,"in":"query","schema":{"default":50,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","required":false,"in":"query","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Paginated media usage history","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicMediaUsageHistoryItemDto"}},"meta":{"$ref":"#/components/schemas/CursorPaginationMetaDto"}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get media usage history","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/{id}":{"get":{"operationId":"PublicMediaController_getOne_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Media UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Media detail","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaListItemDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get media","tags":["Media"]},"patch":{"operationId":"PublicMediaController_update_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Media UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/UpdateMediaDto"}]}}}},"responses":{"200":{"description":"Media updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaListItemDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Update media","tags":["Media"]},"delete":{"description":"Moves active media to the Bin and returns the deleteAfter timestamp. Scheduled-post usage blocks deletion.","operationId":"PublicMediaController_delete_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Media UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Media deleted","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaMutationSuccessDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Move media to the Bin","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/{id}/download-url":{"get":{"operationId":"PublicMediaController_getDownloadUrl_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Media UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Presigned download URL","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaPresignedUrlDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Create a media download URL","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/{id}/view-url":{"get":{"operationId":"PublicMediaController_getViewUrl_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Media UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Presigned view URL","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaPresignedUrlDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Create a media view URL","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/{id}/restore":{"post":{"operationId":"PublicMediaController_restore_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Media UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Media restored","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaListItemDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Restore media from the Bin","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/{id}/permanent":{"delete":{"operationId":"PublicMediaController_deleteForever_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Media UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Media permanently deleted","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaMutationSuccessDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Permanently delete media from the Bin","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/{id}/labels":{"post":{"operationId":"PublicMediaController_attachLabels_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Media UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/AttachLabelsDto"}]}}}},"responses":{"200":{"description":"Labels attached to media","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaMutationSuccessDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Attach labels to media","tags":["Media"]},"delete":{"operationId":"PublicMediaController_detachLabels_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Media UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/DetachLabelsDto"}]}}}},"responses":{"200":{"description":"Labels detached from media","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaMutationSuccessDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Detach labels from media","tags":["Media"]}},"/v1/workspaces/{workspaceId}/media/{id}/audio-inspection":{"post":{"operationId":"PublicMediaInspectionController_inspectAudio_v1","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Audio inspection result","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMediaAudioInspectionDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Inspect video audio before selecting Instagram licensed audio","tags":["Public Media"]}},"/v1/workspaces/{workspaceId}/integrations":{"get":{"description":"List social accounts for the current workspace. Status is connected, requires_reauth, disabled, or auth_incomplete.","operationId":"PublicIntegrationsController_list_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Integration list","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicIntegrationListItemDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List integrations","tags":["Integrations"]}},"/v1/workspaces/{workspaceId}/integrations/{integrationId}/capabilities":{"get":{"description":"Returns safe, curated publishing capabilities for one integration. This does not expose stored provider settings, tokens, scopes, or raw provider payloads.","operationId":"PublicIntegrationsController_capabilities_v1","parameters":[{"name":"integrationId","required":true,"in":"path","description":"Integration UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Connection-specific publishing capabilities","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicIntegrationCapabilitiesDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get integration capabilities","tags":["Integrations"]}},"/v1/workspaces/{workspaceId}/integrations/{integrationId}/pinterest/boards":{"post":{"description":"Creates one PUBLIC or SECRET board on Pinterest. Defaults to PUBLIC. Not idempotent; inspect boards before retrying an uncertain response.","operationId":"PublicIntegrationsController_createBoard_v1","parameters":[{"name":"integrationId","required":true,"in":"path","description":"Integration UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicPinterestCreateBoardDto"}}}},"responses":{"201":{"description":"Board created","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"board":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"privacy":{"type":"string"}},"required":["id","name","privacy"],"additionalProperties":false}},"required":["board"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Create a Pinterest board","tags":["Integrations"]}},"/v1/workspaces/{workspaceId}/integrations/{integrationId}/options/{optionKey}":{"post":{"description":"Fetches safe read-only provider options such as Pinterest boards, YouTube categories, TikTok creator info, locations, catalogs, or products.","operationId":"PublicIntegrationsController_options_v1","parameters":[{"name":"integrationId","required":true,"in":"path","description":"Integration UUID","schema":{"type":"string"}},{"name":"optionKey","required":true,"in":"path","description":"Option key returned by the capabilities endpoint","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/PublicIntegrationOptionsBodyDto"}]}}}},"responses":{"201":{"description":"Options for the requested optionKey and connected account","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicIntegrationOptionsResponseDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Fetch integration dynamic options","tags":["Integrations"]}},"/v1/workspaces":{"get":{"description":"Discovery endpoint that lists accessible workspaces and does not require a workspace context. With API-key auth (`ezb_live_...`), results are filtered to the workspaces explicitly granted to the key. With CLI browser-login auth (`ezb_cli_...` from `maeve auth:login`), results include all workspaces the signed-in user can already access.","operationId":"PublicWorkspacesController_list_v1","parameters":[],"responses":{"200":{"description":"Workspace list","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicWorkspaceDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List workspaces","tags":["Workspaces"]}},"/v1/workspaces/{workspaceId}/members":{"get":{"description":"Lists every active member of the workspace with their effective workspace role, ordered by display name. Use member ids as `approverIds` when requesting internal approval or creating a client review batch.","operationId":"PublicWorkspaceMembersController_list_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Workspace member list","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicWorkspaceMemberDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List workspace members","tags":["Workspaces"]}},"/v2/workspaces/{workspaceId}/workbench/page-templates":{"get":{"operationId":"workbenchV2ListPageTemplates","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"limit","required":false,"in":"query","schema":{"type":"integer","minimum":1,"maximum":50}},{"name":"cursor","required":false,"in":"query","schema":{"maxLength":512,"type":"string","minLength":1}},{"name":"pageType","required":false,"in":"query","schema":{"type":"string","enum":["document","research","content_table"]}}],"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"List workbench page templates","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/workbench/pages":{"post":{"operationId":"workbenchV2CreatePage","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWorkbenchPageDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"oneOf":[{"type":"object","required":["page","surface"],"properties":{"page":{"allOf":[{"type":"object","required":["id","workspaceId","pageType","spaceId","folderId","title","description","visibility","owner","sortOrder","isFavourite","lifecycle","provenance","createdByUserId","updatedByUserId","createdAt","updatedAt","version"],"properties":{"id":{"type":"string","format":"uuid"},"workspaceId":{"type":"string","format":"uuid"},"pageType":{"type":"string","enum":["document","research","content_table"]},"spaceId":{"type":"string","format":"uuid","nullable":true},"folderId":{"type":"string","format":"uuid","nullable":true},"title":{"type":"string"},"description":{"type":"string","nullable":true},"visibility":{"type":"string","enum":["internal","private"]},"owner":{"type":"object","nullable":true,"required":["id","displayName","avatarUrl"],"properties":{"id":{"type":"string","format":"uuid"},"displayName":{"type":"string"},"avatarUrl":{"type":"string","nullable":true}}},"sortOrder":{"type":"integer"},"isFavourite":{"type":"boolean"},"lifecycle":{"type":"object","required":["state","archivedAt","deletedAt"],"properties":{"state":{"type":"string","enum":["active","archived","deleted"]},"archivedAt":{"type":"string","format":"date-time","nullable":true},"deletedAt":{"type":"string","format":"date-time","nullable":true}}},"provenance":{"type":"object","nullable":true,"required":["templateId","templateVersionId","versionNumber"],"properties":{"templateId":{"type":"string","format":"uuid"},"templateVersionId":{"type":"string","format":"uuid"},"versionNumber":{"type":"integer"}}},"createdByUserId":{"type":"string","format":"uuid","nullable":true},"updatedByUserId":{"type":"string","format":"uuid","nullable":true},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"version":{"type":"string"}}},{"type":"object","properties":{"pageType":{"type":"string","enum":["document"]}}}]},"surface":{"type":"object","required":["type","bodyHtml","documentVersion"],"properties":{"type":{"type":"string","enum":["document"]},"bodyHtml":{"type":"string"},"documentVersion":{"type":"string"}}}}},{"type":"object","required":["page","surface"],"properties":{"page":{"allOf":[{"type":"object","required":["id","workspaceId","pageType","spaceId","folderId","title","description","visibility","owner","sortOrder","isFavourite","lifecycle","provenance","createdByUserId","updatedByUserId","createdAt","updatedAt","version"],"properties":{"id":{"type":"string","format":"uuid"},"workspaceId":{"type":"string","format":"uuid"},"pageType":{"type":"string","enum":["document","research","content_table"]},"spaceId":{"type":"string","format":"uuid","nullable":true},"folderId":{"type":"string","format":"uuid","nullable":true},"title":{"type":"string"},"description":{"type":"string","nullable":true},"visibility":{"type":"string","enum":["internal","private"]},"owner":{"type":"object","nullable":true,"required":["id","displayName","avatarUrl"],"properties":{"id":{"type":"string","format":"uuid"},"displayName":{"type":"string"},"avatarUrl":{"type":"string","nullable":true}}},"sortOrder":{"type":"integer"},"isFavourite":{"type":"boolean"},"lifecycle":{"type":"object","required":["state","archivedAt","deletedAt"],"properties":{"state":{"type":"string","enum":["active","archived","deleted"]},"archivedAt":{"type":"string","format":"date-time","nullable":true},"deletedAt":{"type":"string","format":"date-time","nullable":true}}},"provenance":{"type":"object","nullable":true,"required":["templateId","templateVersionId","versionNumber"],"properties":{"templateId":{"type":"string","format":"uuid"},"templateVersionId":{"type":"string","format":"uuid"},"versionNumber":{"type":"integer"}}},"createdByUserId":{"type":"string","format":"uuid","nullable":true},"updatedByUserId":{"type":"string","format":"uuid","nullable":true},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"version":{"type":"string"}}},{"type":"object","properties":{"pageType":{"type":"string","enum":["research"]}}}]},"surface":{"type":"object","required":["type"],"properties":{"type":{"type":"string","enum":["research"]}}}}},{"type":"object","required":["page","surface"],"properties":{"page":{"allOf":[{"type":"object","required":["id","workspaceId","pageType","spaceId","folderId","title","description","visibility","owner","sortOrder","isFavourite","lifecycle","provenance","createdByUserId","updatedByUserId","createdAt","updatedAt","version"],"properties":{"id":{"type":"string","format":"uuid"},"workspaceId":{"type":"string","format":"uuid"},"pageType":{"type":"string","enum":["document","research","content_table"]},"spaceId":{"type":"string","format":"uuid","nullable":true},"folderId":{"type":"string","format":"uuid","nullable":true},"title":{"type":"string"},"description":{"type":"string","nullable":true},"visibility":{"type":"string","enum":["internal","private"]},"owner":{"type":"object","nullable":true,"required":["id","displayName","avatarUrl"],"properties":{"id":{"type":"string","format":"uuid"},"displayName":{"type":"string"},"avatarUrl":{"type":"string","nullable":true}}},"sortOrder":{"type":"integer"},"isFavourite":{"type":"boolean"},"lifecycle":{"type":"object","required":["state","archivedAt","deletedAt"],"properties":{"state":{"type":"string","enum":["active","archived","deleted"]},"archivedAt":{"type":"string","format":"date-time","nullable":true},"deletedAt":{"type":"string","format":"date-time","nullable":true}}},"provenance":{"type":"object","nullable":true,"required":["templateId","templateVersionId","versionNumber"],"properties":{"templateId":{"type":"string","format":"uuid"},"templateVersionId":{"type":"string","format":"uuid"},"versionNumber":{"type":"integer"}}},"createdByUserId":{"type":"string","format":"uuid","nullable":true},"updatedByUserId":{"type":"string","format":"uuid","nullable":true},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"version":{"type":"string"}}},{"type":"object","properties":{"pageType":{"type":"string","enum":["content_table"]}}}]},"surface":{"type":"object","required":["type","config","version"],"properties":{"type":{"type":"string","enum":["content_table"]},"config":{"type":"object"},"version":{"type":"string"}}}}}],"discriminator":{"propertyName":"page.pageType","mapping":{"document":"#/components/schemas/WorkbenchPageDetailDocument","research":"#/components/schemas/WorkbenchPageDetailResearch","content_table":"#/components/schemas/WorkbenchPageDetailContentTable"}}},"meta":{"type":"object","nullable":true}}}}}}},"security":[{"bearer":[]}],"summary":"Create a workbench page from a template","tags":["Workbench"]},"get":{"operationId":"workbenchV2ListPages","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"limit","required":false,"in":"query","schema":{"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","required":false,"in":"query","schema":{"maxLength":512,"type":"string","minLength":1}},{"name":"pageType","required":false,"in":"query","schema":{"type":"string","enum":["document","research","content_table"]}},{"name":"spaceId","required":false,"in":"query","schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"folderId","required":false,"in":"query","schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"visibility","required":false,"in":"query","schema":{"type":"string","enum":["internal","private"]}},{"name":"lifecycle","required":false,"in":"query","schema":{"type":"string","enum":["active","deleted"]}},{"name":"favourite","required":false,"in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"array","items":{"type":"object","required":["id","workspaceId","pageType","spaceId","folderId","title","description","visibility","owner","sortOrder","isFavourite","lifecycle","provenance","createdByUserId","updatedByUserId","createdAt","updatedAt","version"],"properties":{"id":{"type":"string","format":"uuid"},"workspaceId":{"type":"string","format":"uuid"},"pageType":{"type":"string","enum":["document","research","content_table"]},"spaceId":{"type":"string","format":"uuid","nullable":true},"folderId":{"type":"string","format":"uuid","nullable":true},"title":{"type":"string"},"description":{"type":"string","nullable":true},"visibility":{"type":"string","enum":["internal","private"]},"owner":{"type":"object","nullable":true,"required":["id","displayName","avatarUrl"],"properties":{"id":{"type":"string","format":"uuid"},"displayName":{"type":"string"},"avatarUrl":{"type":"string","nullable":true}}},"sortOrder":{"type":"integer"},"isFavourite":{"type":"boolean"},"lifecycle":{"type":"object","required":["state","archivedAt","deletedAt"],"properties":{"state":{"type":"string","enum":["active","archived","deleted"]},"archivedAt":{"type":"string","format":"date-time","nullable":true},"deletedAt":{"type":"string","format":"date-time","nullable":true}}},"provenance":{"type":"object","nullable":true,"required":["templateId","templateVersionId","versionNumber"],"properties":{"templateId":{"type":"string","format":"uuid"},"templateVersionId":{"type":"string","format":"uuid"},"versionNumber":{"type":"integer"}}},"createdByUserId":{"type":"string","format":"uuid","nullable":true},"updatedByUserId":{"type":"string","format":"uuid","nullable":true},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"version":{"type":"string"}}}},"meta":{"type":"object","required":["limit","hasMore","nextCursor"],"properties":{"limit":{"type":"integer"},"hasMore":{"type":"boolean"},"nextCursor":{"type":"string","nullable":true}}}}}}}}},"security":[{"bearer":[]}],"summary":"List workbench page summaries","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/workbench/navigation":{"get":{"operationId":"workbenchV2ListNavigation","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"limit","required":false,"in":"query","schema":{"type":"integer","minimum":1,"maximum":200}},{"name":"cursor","required":false,"in":"query","schema":{"maxLength":512,"type":"string","minLength":1}}],"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"List workbench navigation nodes","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/workbench/pages/reorder":{"patch":{"operationId":"workbenchV2ReorderPages","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkbenchReorderDto"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"Reorder workbench pages","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/workbench/pages/{pageId}":{"get":{"operationId":"workbenchV2GetPage","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"oneOf":[{"type":"object","required":["page","surface"],"properties":{"page":{"allOf":[{"type":"object","required":["id","workspaceId","pageType","spaceId","folderId","title","description","visibility","owner","sortOrder","isFavourite","lifecycle","provenance","createdByUserId","updatedByUserId","createdAt","updatedAt","version"],"properties":{"id":{"type":"string","format":"uuid"},"workspaceId":{"type":"string","format":"uuid"},"pageType":{"type":"string","enum":["document","research","content_table"]},"spaceId":{"type":"string","format":"uuid","nullable":true},"folderId":{"type":"string","format":"uuid","nullable":true},"title":{"type":"string"},"description":{"type":"string","nullable":true},"visibility":{"type":"string","enum":["internal","private"]},"owner":{"type":"object","nullable":true,"required":["id","displayName","avatarUrl"],"properties":{"id":{"type":"string","format":"uuid"},"displayName":{"type":"string"},"avatarUrl":{"type":"string","nullable":true}}},"sortOrder":{"type":"integer"},"isFavourite":{"type":"boolean"},"lifecycle":{"type":"object","required":["state","archivedAt","deletedAt"],"properties":{"state":{"type":"string","enum":["active","archived","deleted"]},"archivedAt":{"type":"string","format":"date-time","nullable":true},"deletedAt":{"type":"string","format":"date-time","nullable":true}}},"provenance":{"type":"object","nullable":true,"required":["templateId","templateVersionId","versionNumber"],"properties":{"templateId":{"type":"string","format":"uuid"},"templateVersionId":{"type":"string","format":"uuid"},"versionNumber":{"type":"integer"}}},"createdByUserId":{"type":"string","format":"uuid","nullable":true},"updatedByUserId":{"type":"string","format":"uuid","nullable":true},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"version":{"type":"string"}}},{"type":"object","properties":{"pageType":{"type":"string","enum":["document"]}}}]},"surface":{"type":"object","required":["type","bodyHtml","documentVersion"],"properties":{"type":{"type":"string","enum":["document"]},"bodyHtml":{"type":"string"},"documentVersion":{"type":"string"}}}}},{"type":"object","required":["page","surface"],"properties":{"page":{"allOf":[{"type":"object","required":["id","workspaceId","pageType","spaceId","folderId","title","description","visibility","owner","sortOrder","isFavourite","lifecycle","provenance","createdByUserId","updatedByUserId","createdAt","updatedAt","version"],"properties":{"id":{"type":"string","format":"uuid"},"workspaceId":{"type":"string","format":"uuid"},"pageType":{"type":"string","enum":["document","research","content_table"]},"spaceId":{"type":"string","format":"uuid","nullable":true},"folderId":{"type":"string","format":"uuid","nullable":true},"title":{"type":"string"},"description":{"type":"string","nullable":true},"visibility":{"type":"string","enum":["internal","private"]},"owner":{"type":"object","nullable":true,"required":["id","displayName","avatarUrl"],"properties":{"id":{"type":"string","format":"uuid"},"displayName":{"type":"string"},"avatarUrl":{"type":"string","nullable":true}}},"sortOrder":{"type":"integer"},"isFavourite":{"type":"boolean"},"lifecycle":{"type":"object","required":["state","archivedAt","deletedAt"],"properties":{"state":{"type":"string","enum":["active","archived","deleted"]},"archivedAt":{"type":"string","format":"date-time","nullable":true},"deletedAt":{"type":"string","format":"date-time","nullable":true}}},"provenance":{"type":"object","nullable":true,"required":["templateId","templateVersionId","versionNumber"],"properties":{"templateId":{"type":"string","format":"uuid"},"templateVersionId":{"type":"string","format":"uuid"},"versionNumber":{"type":"integer"}}},"createdByUserId":{"type":"string","format":"uuid","nullable":true},"updatedByUserId":{"type":"string","format":"uuid","nullable":true},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"version":{"type":"string"}}},{"type":"object","properties":{"pageType":{"type":"string","enum":["research"]}}}]},"surface":{"type":"object","required":["type"],"properties":{"type":{"type":"string","enum":["research"]}}}}},{"type":"object","required":["page","surface"],"properties":{"page":{"allOf":[{"type":"object","required":["id","workspaceId","pageType","spaceId","folderId","title","description","visibility","owner","sortOrder","isFavourite","lifecycle","provenance","createdByUserId","updatedByUserId","createdAt","updatedAt","version"],"properties":{"id":{"type":"string","format":"uuid"},"workspaceId":{"type":"string","format":"uuid"},"pageType":{"type":"string","enum":["document","research","content_table"]},"spaceId":{"type":"string","format":"uuid","nullable":true},"folderId":{"type":"string","format":"uuid","nullable":true},"title":{"type":"string"},"description":{"type":"string","nullable":true},"visibility":{"type":"string","enum":["internal","private"]},"owner":{"type":"object","nullable":true,"required":["id","displayName","avatarUrl"],"properties":{"id":{"type":"string","format":"uuid"},"displayName":{"type":"string"},"avatarUrl":{"type":"string","nullable":true}}},"sortOrder":{"type":"integer"},"isFavourite":{"type":"boolean"},"lifecycle":{"type":"object","required":["state","archivedAt","deletedAt"],"properties":{"state":{"type":"string","enum":["active","archived","deleted"]},"archivedAt":{"type":"string","format":"date-time","nullable":true},"deletedAt":{"type":"string","format":"date-time","nullable":true}}},"provenance":{"type":"object","nullable":true,"required":["templateId","templateVersionId","versionNumber"],"properties":{"templateId":{"type":"string","format":"uuid"},"templateVersionId":{"type":"string","format":"uuid"},"versionNumber":{"type":"integer"}}},"createdByUserId":{"type":"string","format":"uuid","nullable":true},"updatedByUserId":{"type":"string","format":"uuid","nullable":true},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"version":{"type":"string"}}},{"type":"object","properties":{"pageType":{"type":"string","enum":["content_table"]}}}]},"surface":{"type":"object","required":["type","config","version"],"properties":{"type":{"type":"string","enum":["content_table"]},"config":{"type":"object"},"version":{"type":"string"}}}}}],"discriminator":{"propertyName":"page.pageType","mapping":{"document":"#/components/schemas/WorkbenchPageDetailDocument","research":"#/components/schemas/WorkbenchPageDetailResearch","content_table":"#/components/schemas/WorkbenchPageDetailContentTable"}}},"meta":{"type":"object","nullable":true}}}}}}},"security":[{"bearer":[]}],"summary":"Get workbench page detail","tags":["Workbench"]},"patch":{"operationId":"workbenchV2UpdatePage","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateWorkbenchPageDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","required":["id","workspaceId","pageType","spaceId","folderId","title","description","visibility","owner","sortOrder","isFavourite","lifecycle","provenance","createdByUserId","updatedByUserId","createdAt","updatedAt","version"],"properties":{"id":{"type":"string","format":"uuid"},"workspaceId":{"type":"string","format":"uuid"},"pageType":{"type":"string","enum":["document","research","content_table"]},"spaceId":{"type":"string","format":"uuid","nullable":true},"folderId":{"type":"string","format":"uuid","nullable":true},"title":{"type":"string"},"description":{"type":"string","nullable":true},"visibility":{"type":"string","enum":["internal","private"]},"owner":{"type":"object","nullable":true,"required":["id","displayName","avatarUrl"],"properties":{"id":{"type":"string","format":"uuid"},"displayName":{"type":"string"},"avatarUrl":{"type":"string","nullable":true}}},"sortOrder":{"type":"integer"},"isFavourite":{"type":"boolean"},"lifecycle":{"type":"object","required":["state","archivedAt","deletedAt"],"properties":{"state":{"type":"string","enum":["active","archived","deleted"]},"archivedAt":{"type":"string","format":"date-time","nullable":true},"deletedAt":{"type":"string","format":"date-time","nullable":true}}},"provenance":{"type":"object","nullable":true,"required":["templateId","templateVersionId","versionNumber"],"properties":{"templateId":{"type":"string","format":"uuid"},"templateVersionId":{"type":"string","format":"uuid"},"versionNumber":{"type":"integer"}}},"createdByUserId":{"type":"string","format":"uuid","nullable":true},"updatedByUserId":{"type":"string","format":"uuid","nullable":true},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"version":{"type":"string"}}},"meta":{"type":"object","nullable":true}}}}}}},"security":[{"bearer":[]}],"summary":"Update workbench page metadata","tags":["Workbench"]},"delete":{"operationId":"workbenchV2SoftDeletePage","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkbenchExpectedVersionDto"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"Soft delete a workbench page","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/workbench/pages/{pageId}/favourite":{"put":{"operationId":"workbenchV2AddFavourite","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"Favourite a workbench page","tags":["Workbench"]},"delete":{"operationId":"workbenchV2RemoveFavourite","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"Unfavourite a workbench page","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/workbench/pages/{pageId}/undelete":{"post":{"operationId":"workbenchV2UndeletePage","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkbenchExpectedVersionDto"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"Restore a workbench page from soft deletion","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/workbench/pages/{pageId}/permanent":{"delete":{"operationId":"workbenchV2PermanentlyDeletePage","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkbenchExpectedVersionDto"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"Permanently delete a workbench page","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/workbench/pages/{pageId}/document/body":{"put":{"operationId":"workbenchV2ReplaceDocumentBody","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReplaceWorkbenchDocumentBodyDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"oneOf":[{"type":"object","required":["page","surface"],"properties":{"page":{"allOf":[{"type":"object","required":["id","workspaceId","pageType","spaceId","folderId","title","description","visibility","owner","sortOrder","isFavourite","lifecycle","provenance","createdByUserId","updatedByUserId","createdAt","updatedAt","version"],"properties":{"id":{"type":"string","format":"uuid"},"workspaceId":{"type":"string","format":"uuid"},"pageType":{"type":"string","enum":["document","research","content_table"]},"spaceId":{"type":"string","format":"uuid","nullable":true},"folderId":{"type":"string","format":"uuid","nullable":true},"title":{"type":"string"},"description":{"type":"string","nullable":true},"visibility":{"type":"string","enum":["internal","private"]},"owner":{"type":"object","nullable":true,"required":["id","displayName","avatarUrl"],"properties":{"id":{"type":"string","format":"uuid"},"displayName":{"type":"string"},"avatarUrl":{"type":"string","nullable":true}}},"sortOrder":{"type":"integer"},"isFavourite":{"type":"boolean"},"lifecycle":{"type":"object","required":["state","archivedAt","deletedAt"],"properties":{"state":{"type":"string","enum":["active","archived","deleted"]},"archivedAt":{"type":"string","format":"date-time","nullable":true},"deletedAt":{"type":"string","format":"date-time","nullable":true}}},"provenance":{"type":"object","nullable":true,"required":["templateId","templateVersionId","versionNumber"],"properties":{"templateId":{"type":"string","format":"uuid"},"templateVersionId":{"type":"string","format":"uuid"},"versionNumber":{"type":"integer"}}},"createdByUserId":{"type":"string","format":"uuid","nullable":true},"updatedByUserId":{"type":"string","format":"uuid","nullable":true},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"version":{"type":"string"}}},{"type":"object","properties":{"pageType":{"type":"string","enum":["document"]}}}]},"surface":{"type":"object","required":["type","bodyHtml","documentVersion"],"properties":{"type":{"type":"string","enum":["document"]},"bodyHtml":{"type":"string"},"documentVersion":{"type":"string"}}}}},{"type":"object","required":["page","surface"],"properties":{"page":{"allOf":[{"type":"object","required":["id","workspaceId","pageType","spaceId","folderId","title","description","visibility","owner","sortOrder","isFavourite","lifecycle","provenance","createdByUserId","updatedByUserId","createdAt","updatedAt","version"],"properties":{"id":{"type":"string","format":"uuid"},"workspaceId":{"type":"string","format":"uuid"},"pageType":{"type":"string","enum":["document","research","content_table"]},"spaceId":{"type":"string","format":"uuid","nullable":true},"folderId":{"type":"string","format":"uuid","nullable":true},"title":{"type":"string"},"description":{"type":"string","nullable":true},"visibility":{"type":"string","enum":["internal","private"]},"owner":{"type":"object","nullable":true,"required":["id","displayName","avatarUrl"],"properties":{"id":{"type":"string","format":"uuid"},"displayName":{"type":"string"},"avatarUrl":{"type":"string","nullable":true}}},"sortOrder":{"type":"integer"},"isFavourite":{"type":"boolean"},"lifecycle":{"type":"object","required":["state","archivedAt","deletedAt"],"properties":{"state":{"type":"string","enum":["active","archived","deleted"]},"archivedAt":{"type":"string","format":"date-time","nullable":true},"deletedAt":{"type":"string","format":"date-time","nullable":true}}},"provenance":{"type":"object","nullable":true,"required":["templateId","templateVersionId","versionNumber"],"properties":{"templateId":{"type":"string","format":"uuid"},"templateVersionId":{"type":"string","format":"uuid"},"versionNumber":{"type":"integer"}}},"createdByUserId":{"type":"string","format":"uuid","nullable":true},"updatedByUserId":{"type":"string","format":"uuid","nullable":true},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"version":{"type":"string"}}},{"type":"object","properties":{"pageType":{"type":"string","enum":["research"]}}}]},"surface":{"type":"object","required":["type"],"properties":{"type":{"type":"string","enum":["research"]}}}}},{"type":"object","required":["page","surface"],"properties":{"page":{"allOf":[{"type":"object","required":["id","workspaceId","pageType","spaceId","folderId","title","description","visibility","owner","sortOrder","isFavourite","lifecycle","provenance","createdByUserId","updatedByUserId","createdAt","updatedAt","version"],"properties":{"id":{"type":"string","format":"uuid"},"workspaceId":{"type":"string","format":"uuid"},"pageType":{"type":"string","enum":["document","research","content_table"]},"spaceId":{"type":"string","format":"uuid","nullable":true},"folderId":{"type":"string","format":"uuid","nullable":true},"title":{"type":"string"},"description":{"type":"string","nullable":true},"visibility":{"type":"string","enum":["internal","private"]},"owner":{"type":"object","nullable":true,"required":["id","displayName","avatarUrl"],"properties":{"id":{"type":"string","format":"uuid"},"displayName":{"type":"string"},"avatarUrl":{"type":"string","nullable":true}}},"sortOrder":{"type":"integer"},"isFavourite":{"type":"boolean"},"lifecycle":{"type":"object","required":["state","archivedAt","deletedAt"],"properties":{"state":{"type":"string","enum":["active","archived","deleted"]},"archivedAt":{"type":"string","format":"date-time","nullable":true},"deletedAt":{"type":"string","format":"date-time","nullable":true}}},"provenance":{"type":"object","nullable":true,"required":["templateId","templateVersionId","versionNumber"],"properties":{"templateId":{"type":"string","format":"uuid"},"templateVersionId":{"type":"string","format":"uuid"},"versionNumber":{"type":"integer"}}},"createdByUserId":{"type":"string","format":"uuid","nullable":true},"updatedByUserId":{"type":"string","format":"uuid","nullable":true},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"version":{"type":"string"}}},{"type":"object","properties":{"pageType":{"type":"string","enum":["content_table"]}}}]},"surface":{"type":"object","required":["type","config","version"],"properties":{"type":{"type":"string","enum":["content_table"]},"config":{"type":"object"},"version":{"type":"string"}}}}}],"discriminator":{"propertyName":"page.pageType","mapping":{"document":"#/components/schemas/WorkbenchPageDetailDocument","research":"#/components/schemas/WorkbenchPageDetailResearch","content_table":"#/components/schemas/WorkbenchPageDetailContentTable"}}},"meta":{"type":"object","nullable":true}}}}}}},"security":[{"bearer":[]}],"summary":"Replace the complete document body of a workbench Document page","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/workbench/spaces":{"post":{"operationId":"workbenchV2CreateSpace","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWorkbenchSpaceDto"}}}},"responses":{"201":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"Create a workbench space","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/workbench/spaces/reorder":{"patch":{"operationId":"workbenchV2ReorderSpaces","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkbenchReorderDto"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"Reorder workbench spaces","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/workbench/spaces/{spaceId}":{"patch":{"operationId":"workbenchV2UpdateSpace","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"spaceId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateWorkbenchSpaceDto"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"Rename a workbench space","tags":["Workbench"]},"delete":{"operationId":"workbenchV2DeleteSpace","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"spaceId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkbenchExpectedVersionDto"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"Delete an empty workbench space","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/workbench/folders":{"post":{"operationId":"workbenchV2CreateFolder","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWorkbenchFolderDto"}}}},"responses":{"201":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"Create a workbench folder","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/workbench/folders/reorder":{"patch":{"operationId":"workbenchV2ReorderFolders","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkbenchReorderDto"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"Reorder workbench folders","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/workbench/folders/{folderId}":{"patch":{"operationId":"workbenchV2UpdateFolder","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"folderId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateWorkbenchFolderDto"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"Rename a workbench folder","tags":["Workbench"]},"delete":{"operationId":"workbenchV2DeleteFolder","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"folderId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkbenchExpectedVersionDto"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"Delete an empty workbench folder","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/workbench/pages/{pageId}/content-table/placements":{"get":{"operationId":"workbenchV2ListPlacements","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageId","required":true,"in":"path","schema":{"type":"string"}},{"name":"limit","required":false,"in":"query","schema":{"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","required":false,"in":"query","schema":{"maxLength":512,"type":"string","minLength":1}},{"name":"viewId","required":false,"in":"query","schema":{"type":"string","minLength":1}}],"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"List content-table placements","tags":["Workbench"]},"post":{"operationId":"workbenchV2CreatePlacement","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWorkbenchPlacementDto"}}}},"responses":{"201":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"Place a post on the content table","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/workbench/pages/{pageId}/content-table/config":{"put":{"operationId":"workbenchV2ReplaceContentTableConfig","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReplaceWorkbenchContentTableConfigDto"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"Replace the content-table configuration","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/workbench/pages/{pageId}/content-table/placements/reorder":{"patch":{"operationId":"workbenchV2ReorderPlacements","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkbenchReorderDto"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"Reorder content-table placements","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/workbench/pages/{pageId}/content-table/placements/{placementId}/cells":{"patch":{"operationId":"workbenchV2UpdatePlacementCells","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageId","required":true,"in":"path","schema":{"type":"string"}},{"name":"placementId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateWorkbenchPlacementCellsDto"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"Replace a placement custom-cell map","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/workbench/pages/{pageId}/content-table/placements/{placementId}/move":{"post":{"operationId":"workbenchV2MovePlacement","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageId","required":true,"in":"path","schema":{"type":"string"}},{"name":"placementId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MoveWorkbenchPlacementDto"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"Move a placement to another content table","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/workbench/pages/{pageId}/content-table/placements/{placementId}/permanent":{"delete":{"operationId":"workbenchV2PermanentlyDeletePlacement","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageId","required":true,"in":"path","schema":{"type":"string"}},{"name":"placementId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkbenchExpectedVersionDto"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"Permanently delete a placement","tags":["Workbench"]}},"/v2/workspaces/{workspaceId}/posts/{postId}/workbench-placements":{"get":{"operationId":"workbenchV2ListPostPlacements","parameters":[{"name":"workspaceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"postId","required":true,"in":"path","schema":{"type":"string"}},{"name":"limit","required":false,"in":"query","schema":{"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","required":false,"in":"query","schema":{"maxLength":512,"type":"string","minLength":1}}],"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":""}},"security":[{"bearer":[]}],"summary":"List workbench placements for a post","tags":["Workbench"]}},"/v1/workspaces/{workspaceId}/workbench/content-board/config":{"get":{"operationId":"PublicContentBoardController_getContentBoardConfig_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Content board configuration","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicWorkbenchContentBoardConfigDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get content board configuration","tags":["Content Board"]},"put":{"operationId":"PublicContentBoardController_updateContentBoardConfig_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateWorkbenchContentBoardConfigDto"}}}},"responses":{"200":{"description":"Content board configuration updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicWorkbenchContentBoardConfigDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Update content board visibility","tags":["Content Board"]}},"/v1/workspaces/{workspaceId}/workbench/content-board":{"get":{"operationId":"PublicContentBoardController_getContentBoard_v1","parameters":[{"name":"limit","required":false,"in":"query","schema":{"default":250,"type":"integer","minimum":1,"maximum":500}},{"name":"offset","required":false,"in":"query","schema":{"default":0,"type":"integer","minimum":0,"maximum":9007199254740991}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Content board cards","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicWorkbenchContentBoardQueryDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Query content board cards","tags":["Content Board"]}},"/v1/workspaces/{workspaceId}/labels":{"get":{"description":"Canonical taxonomy read for workspace labels that can be supplied as labelIds when creating or updating public API content. Labels are ordered by name ascending.","operationId":"PublicTaxonomyController_listLabels_v1","parameters":[{"name":"search","required":false,"in":"query","description":"Case-insensitive label name search.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Workspace label list","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicLabelDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List workspace labels","tags":["Taxonomy"]}},"/v1/workspaces/{workspaceId}/pillars":{"get":{"description":"Returns active workspace content pillars that can be supplied as pillarIds when creating or updating public API content. Pillars are ordered by sortOrder, then creation time ascending.","operationId":"PublicTaxonomyController_listPillars_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Pillar list","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicPillarDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List content pillars","tags":["Taxonomy"]}},"/v1/workspaces/{workspaceId}/formats":{"get":{"description":"Returns active workspace content formats that can be supplied as formatIds when creating or updating public API content. Formats are ordered by sortOrder, then creation time ascending.","operationId":"PublicTaxonomyController_listFormats_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Format list","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicFormatDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List content formats","tags":["Taxonomy"]}},"/v1/workspaces/{workspaceId}/ads/accounts":{"get":{"description":"List the Meta, TikTok and LinkedIn ad accounts connected to a workspace, with platform, currency, timezone, whether each is enabled, and whether its connection needs reconnecting. A Meta account works in one workspace of the organization at a time: only one whose assignment.state is assigned_here can be used here, and any other is refused with 409 and details.metaAssignmentRequired. Read-only. Connect, reconnect, enable or disconnect ad accounts, choose the workspace for a Meta account and upgrade permissions in the Maeve dashboard. Use an account id with the other ads operations.","operationId":"PublicAdsController_listAccounts_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List ad accounts","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"accounts":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]},"credentialId":{"type":"string"},"displayTimezone":{"nullable":true,"type":"string"},"providerStatus":{"nullable":true,"type":"string"},"accountType":{"nullable":true,"type":"string"},"assignment":{"type":"object","properties":{"state":{"type":"string","enum":["available","assigned_here","assigned_elsewhere","needs_resolution","moving"]},"assignmentId":{"type":"string"},"revision":{"type":"number"},"canMove":{"type":"boolean"},"canReassign":{"type":"boolean"},"message":{"type":"string"},"ownerWorkspace":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"href":{"type":"string"}},"required":["id","name","href"],"additionalProperties":false}},"required":["state","message"],"additionalProperties":false},"connectedAt":{"type":"string"},"lastSyncedAt":{"nullable":true,"type":"string"},"environment":{"type":"string"}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus","credentialId","displayTimezone","providerStatus","accountType","connectedAt","lastSyncedAt","environment"],"additionalProperties":false}},"connections":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"environment":{"type":"string"},"status":{"type":"string","enum":["active","revoked"]},"connectedAt":{"type":"string"},"revokedAt":{"nullable":true,"type":"string"},"lastVerifiedAt":{"nullable":true,"type":"string"}},"required":["id","platform","environment","status","connectedAt","revokedAt","lastVerifiedAt"],"additionalProperties":false}}},"required":["accounts","connections"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List ad accounts","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/accounts/{accountId}/capabilities":{"get":{"description":"Returns what the ad account allows: objectives, formats, status changes and why anything is blocked. Meta, TikTok and LinkedIn campaign and boost creation run through the API after the person approves each one.","operationId":"PublicAdsController_getCapabilities_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read ad account capabilities","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"entityLevels":{"type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"}},"required":["level","nativeType"],"additionalProperties":false}},"writes":{"type":"object","properties":{"enabled":{"description":"False when this platform is read-only in this environment.","type":"boolean"},"reasons":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false}}},"required":["enabled","reasons"],"additionalProperties":false},"creation":{"type":"object","properties":{"eligible":{"description":"Whether this account may create campaigns in the Maeve app.","type":"boolean"},"reasons":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false}},"availableHere":{"description":"Whether campaign and boost creation runs through the API, CLI and MCP for this platform: Meta, TikTok and LinkedIn. Each creation still waits for the person to approve it in Maeve.","type":"boolean"},"requiresUserConfirmation":{"type":"boolean","enum":[true]}},"required":["eligible","reasons","availableHere","requiresUserConfirmation"],"additionalProperties":false},"management":{"type":"object","properties":{"statusChange":{"type":"object","properties":{"available":{"type":"boolean"},"operations":{"type":"array","items":{"type":"string","enum":["ENABLE","DISABLE"]}},"levels":{"type":"array","items":{"type":"string","enum":["campaign","ad_set","ad"]}},"reasons":{"description":"Why status changes are unavailable.","type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false}},"restrictions":{"description":"Limits that apply when they are available.","type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false}}},"required":["available","operations","levels","reasons","restrictions"],"additionalProperties":false}},"required":["statusChange"],"additionalProperties":false},"native":{"description":"What the platform allows for this account: objectives, formats and gates.","type":"object","additionalProperties":{}}},"required":["account","money","entityLevels","writes","creation","management","native"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read ad account capabilities","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/accounts/{accountId}/campaigns":{"get":{"description":"List the paid campaigns in one ad account, one page at a time. Each campaign carries its Maeve level, what the platform calls it, the platform ID, status, spend and delivery metrics, and the platform-specific fields under native. For LinkedIn the campaigns are campaign groups. Meta reports Lifetime unless startDate and endDate are given, and lists archived and deleted campaigns too (native.status.category), which the dashboard hides under All; native.allowedActions names what the dashboard offers on each. Read-only. For content campaigns use campaigns.list.","operationId":"PublicAdsController_listCampaigns_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List paid campaigns","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"freshness":{"type":"object","properties":{"state":{"description":"stored means Maeve served its last synced copy and did not ask the platform.","type":"string","enum":["fresh","partial","stale","empty","stored"]},"refreshedAt":{"description":"When the data was last refreshed from the platform.","nullable":true,"type":"string"}},"required":["state","refreshedAt"],"additionalProperties":false},"providerError":{"description":"Set when the platform failed and stored data is shown.","nullable":true,"type":"object","properties":{"code":{"description":"Maeve ads error code, for example ADS_PROVIDER_RATE_LIMITED.","type":"string"},"message":{"type":"string"},"retry":{"type":"object","properties":{"retryable":{"description":"Whether repeating the same request can succeed.","type":"boolean"},"action":{"description":"What to do before trying again.","type":"string","enum":["retry_later","reconnect_account","grant_provider_permission","enable_account","correct_input","refresh_and_check","get_user_approval","none"]},"retryAfterSeconds":{"description":"Wait this long when the provider gave a time.","nullable":true,"type":"integer","exclusiveMinimum":true,"maximum":9007199254740991}},"required":["retryable","action","retryAfterSeconds"],"additionalProperties":false}},"required":["code","message","retry"],"additionalProperties":false},"entityLevels":{"type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"}},"required":["level","nativeType"],"additionalProperties":false}},"campaigns":{"type":"array","items":{"type":"object","properties":{"level":{"description":"Maeve level: campaign, ad_set or ad.","type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"description":"What the platform calls this level, for example campaign_group.","type":"string"},"nativeId":{"description":"The platform ID for this entity.","type":"string"},"parentNativeId":{"nullable":true,"type":"string"},"name":{"nullable":true,"type":"string"},"status":{"description":"Status as the platform reports it.","nullable":true,"type":"string"},"metrics":{"type":"object","properties":{"spendMicros":{"nullable":true,"type":"string"},"impressions":{"nullable":true,"type":"string"},"clicks":{"nullable":true,"type":"string"},"results":{"description":"Platform result count. LinkedIn has no results metric.","nullable":true,"type":"string"}},"required":["spendMicros","impressions","clicks","results"],"additionalProperties":false},"unavailableMetrics":{"type":"array","items":{"type":"string"}},"native":{"description":"The platform-specific fields the dashboard shows for this entity.","type":"object","additionalProperties":{}}},"required":["level","nativeType","nativeId","parentNativeId","name","status","metrics","unavailableMetrics","native"],"additionalProperties":false}},"page":{"type":"object","properties":{"limit":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"offset":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"total":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"hasMore":{"type":"boolean"}},"required":["limit","offset","total","hasMore"],"additionalProperties":false},"native":{"description":"Platform-specific list fields, such as the metrics window.","type":"object","additionalProperties":{}}},"required":["account","money","freshness","providerError","entityLevels","campaigns","page","native"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List paid campaigns","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/accounts/{accountId}/campaigns/status":{"post":{"description":"Pause or resume existing paid campaigns, ad sets or ads on Meta and TikTok. It creates nothing. Resuming starts delivery again and spends the existing budget, so ENABLE needs the exact confirmation text. On Meta it applies to any campaign in the ad account except a Boost, including one made in Ads Manager. A TikTok campaign published from Maeve is refused here; pause and activate it with ads.tiktok.publications.pause and ads.tiktok.publications.activate. LinkedIn status changes are not part of this operation. On Meta the IDs change one at a time and stop at the first failure: the error lists each ID under details.outcomes as confirmed, rejected, unknown or untouched, and reading ads.meta.campaigns.get_edit_context again settles an unknown one. A Meta campaign Maeve is still creating, and a deleted or archived item, are refused. Delete with ads.meta.entities.delete or ads.tiktok.entities.delete.","operationId":"PublicAdsController_updateCampaignStatus_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"level":{"description":"Maeve level of the entities: campaign, ad_set or ad.","type":"string","enum":["campaign","ad_set","ad"]},"ids":{"description":"Distinct platform IDs to change, up to 20. Each must be at the given level.","minItems":1,"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":64}},"status":{"description":"ENABLE resumes delivery. DISABLE pauses it.","type":"string","enum":["ENABLE","DISABLE"]},"baseline":{"description":"For Meta, return the exact baseline you reviewed. ads.meta.campaigns.get_edit_context returns it for every change, and budget requirements return it under native.baseline. A missing or stale baseline returns META_ADS_EDIT_CONFLICT with details.currentBaseline and makes no changes. Show those current values to the user before resubmitting. Not used for other networks.","type":"object","additionalProperties":{}}},"required":["level","ids","status"],"additionalProperties":false}}}},"responses":{"200":{"description":"Pause or resume paid campaigns","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"},"ids":{"type":"array","items":{"type":"string"}},"status":{"type":"string","enum":["ENABLE","DISABLE"]},"refresh":{"description":"The provider confirmed the change, but the saved campaign view has not refreshed yet.","type":"string","enum":["pending"]}},"required":["account","level","nativeType","ids","status"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Pause or resume paid campaigns","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/accounts/{accountId}/campaigns/budget":{"post":{"description":"Change the budget of one existing Meta or TikTok campaign or ad set, in micros of the account currency. It creates nothing and asks for no confirmation, the same as the dashboard. On Meta it applies to any campaign except a Boost, including one made in Ads Manager. The budget keeps its kind (native.budgetKind from ads.campaigns.get_budget_requirements, daily or lifetime), the amount must reach native.minimumBudgetMicros, and Meta allows at most four changes an hour for each campaign or ad set. An ad set under a campaign budget, or a campaign whose ad sets own their budgets, is refused; change the level that owns the budget. Send native.baseline from the requirements unchanged as the baseline. TikTok applies a daily ad group change at the next account day and locks changes from 23:55 to 00:00 in the account timezone. LinkedIn budgets change through ads.linkedin.entities.update.","operationId":"PublicAdsController_updateCampaignBudget_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"level":{"description":"Maeve level: campaign or ad_set.","type":"string","enum":["campaign","ad_set"]},"id":{"description":"Platform ID of the campaign or ad set.","type":"string","minLength":1,"maxLength":64},"budgetMicros":{"description":"Whole micros of the account currency as a decimal string: 1000000 is one currency unit.","type":"string","pattern":"^\\d{1,18}$"},"baseline":{"description":"For Meta, return the exact baseline you reviewed. ads.meta.campaigns.get_edit_context returns it for every change, and budget requirements return it under native.baseline. A missing or stale baseline returns META_ADS_EDIT_CONFLICT with details.currentBaseline and makes no changes. Show those current values to the user before resubmitting. Not used for other networks.","type":"object","additionalProperties":{}}},"required":["level","id","budgetMicros"],"additionalProperties":false}}}},"responses":{"200":{"description":"Change a campaign or ad set budget","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"level":{"description":"Maeve level: campaign or ad_set.","type":"string","enum":["campaign","ad_set"]},"nativeType":{"type":"string"},"id":{"type":"string"},"budgetMicros":{"type":"string"},"minimumBudgetMicros":{"nullable":true,"type":"string"},"native":{"description":"Platform-specific result fields, such as when TikTok applies the change.","type":"object","additionalProperties":{}}},"required":["account","money","level","nativeType","id","budgetMicros","minimumBudgetMicros","native"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Change a campaign or ad set budget","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/accounts/{accountId}/campaigns/budget-requirements":{"get":{"description":"Read what a budget change must satisfy for one Meta or TikTok campaign or ad set: the current budget, the minimum the platform accepts and the platform-specific rules under native, such as a TikTok lock window or a Meta campaign that owns its ad set budgets. Read this before ads.campaigns.update_budget. Read-only.","operationId":"PublicAdsController_getBudgetRequirements_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read budget requirements for a campaign or ad set","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"level":{"description":"Maeve level: campaign or ad_set.","type":"string","enum":["campaign","ad_set"]},"nativeType":{"type":"string"},"id":{"type":"string"},"currentBudgetMicros":{"nullable":true,"type":"string"},"minimumBudgetMicros":{"description":"The lowest budget the platform accepts for the next change.","nullable":true,"type":"string"},"native":{"description":"The platform-specific requirement fields the dashboard shows.","type":"object","additionalProperties":{}}},"required":["account","money","level","nativeType","id","currentBudgetMicros","minimumBudgetMicros","native"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read budget requirements for a campaign or ad set","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/accounts/{accountId}/campaigns/rejections":{"get":{"description":"List the ad sets and ads the platform rejected in one ad account, with review status, appeal status and the reasons the platform gave. Meta reads its saved inventory, can list a campaign too, and has no review or appeal status, so those are null. LinkedIn returns an empty list. Read-only. A TikTok rejection can be appealed with ads.tiktok.campaigns.appeal. TikTok never reports appeal status, so each TikTok item carries `appeal`: null when Maeve has not appealed the current review, otherwise `outcome` (`submitted`, or `unknown` when TikTok did not confirm it), `appealedAt` and `appealedBy`. Do not appeal an item whose outcome is `submitted`.","operationId":"PublicAdsController_listRejections_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List rejected ad sets and ads","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"rejections":{"description":"The dashboard rejection list: rejected entities with review status, appeal status and reasons. TikTok items carry `appeal`, the appeal Maeve already sent for the current review, or null.","type":"object","additionalProperties":{}}},"required":["account","money","rejections"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List rejected ad sets and ads","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/accounts/{accountId}/entities":{"get":{"description":"List every ad set or every ad in one Meta, TikTok or LinkedIn ad account with its status, budget and results, a page at a time, as the dashboard's account-wide Ad sets and Ads tabs show them. Filter by campaign, ad set or name; Meta's search also matches an exact ID. Meta sorts, filters by status and reports any date range on the server, and Lifetime without dates, while the dashboard opens on the last 30 days ending yesterday; compare needs dates. TikTok and LinkedIn cover the dashboard period, given as days, and refuse the Meta-only fields. Read-only.","operationId":"PublicAdsController_listEntities_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List every ad set or ad in an ad account","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"entities":{"description":"level, nativeType, total, offset, limit and rows; Meta adds its table totals and comparison, TikTok and LinkedIn add days and currency. Each row names its campaignId, and an ad its adSetId.","type":"object","additionalProperties":{}}},"required":["account","money","entities"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List every ad set or ad in an ad account","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/accounts/{accountId}/refresh":{"get":{"description":"Read the refresh state of one Meta, TikTok or LinkedIn ad account: whether an import is running, when the saved data last refreshed, and when the next manual refresh is allowed. The dashboard's Refresh button shows the same.","operationId":"PublicAdsController_getRefresh_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read the refresh state of an ad account","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"refresh":{"description":"state (idle, queued, running, unavailable or reconnect), lastCompletedAt, lastAttemptAt, nextAllowedRefreshAt and any error, with provider-specific fields.","type":"object","additionalProperties":{}}},"required":["account","money","refresh"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read the refresh state of an ad account","tags":["Ads"]},"post":{"description":"Ask the platform for a fresh import of one Meta, TikTok or LinkedIn ad account's campaigns and results, as the dashboard's Refresh button does, so a campaign made in the platform's own manager shows up before the scheduled import. It respects the same cooldown: read nextAllowedRefreshAt first, and read the state again until it is idle; a refresh already running is not restarted. It changes nothing on the platform and only queues an import into Maeve's saved data, so anyone who can read the account can run it, including a read-only grant.","operationId":"PublicAdsController_requestRefresh_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Refresh an ad account's saved campaigns and results","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"refresh":{"description":"state (idle, queued, running, unavailable or reconnect), lastCompletedAt, lastAttemptAt, nextAllowedRefreshAt and any error, with provider-specific fields.","type":"object","additionalProperties":{}}},"required":["account","money","refresh"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Refresh an ad account's saved campaigns and results","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/accounts/{accountId}/campaigns/{campaignId}":{"get":{"description":"Read one paid campaign with its ad sets and ads. Every entity carries its Maeve level, what the platform calls it, the platform ID, status, metrics and the platform-specific fields under native. TikTok ad sets are ad groups. LinkedIn ad sets are campaigns and LinkedIn ads are creatives. Meta reports Lifetime unless startDate and endDate are given, as the campaign page does for a chosen period. Read-only.","operationId":"PublicAdsController_getCampaign_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"campaignId","required":true,"in":"path","description":"Platform ID of the campaign.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read a paid campaign","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"freshness":{"type":"object","properties":{"state":{"description":"stored means Maeve served its last synced copy and did not ask the platform.","type":"string","enum":["fresh","partial","stale","empty","stored"]},"refreshedAt":{"description":"When the data was last refreshed from the platform.","nullable":true,"type":"string"}},"required":["state","refreshedAt"],"additionalProperties":false},"providerError":{"description":"Set when the platform failed and stored data is shown.","nullable":true,"type":"object","properties":{"code":{"description":"Maeve ads error code, for example ADS_PROVIDER_RATE_LIMITED.","type":"string"},"message":{"type":"string"},"retry":{"type":"object","properties":{"retryable":{"description":"Whether repeating the same request can succeed.","type":"boolean"},"action":{"description":"What to do before trying again.","type":"string","enum":["retry_later","reconnect_account","grant_provider_permission","enable_account","correct_input","refresh_and_check","get_user_approval","none"]},"retryAfterSeconds":{"description":"Wait this long when the provider gave a time.","nullable":true,"type":"integer","exclusiveMinimum":true,"maximum":9007199254740991}},"required":["retryable","action","retryAfterSeconds"],"additionalProperties":false}},"required":["code","message","retry"],"additionalProperties":false},"entityLevels":{"type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"}},"required":["level","nativeType"],"additionalProperties":false}},"campaign":{"type":"object","properties":{"level":{"description":"Maeve level: campaign, ad_set or ad.","type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"description":"What the platform calls this level, for example campaign_group.","type":"string"},"nativeId":{"description":"The platform ID for this entity.","type":"string"},"parentNativeId":{"nullable":true,"type":"string"},"name":{"nullable":true,"type":"string"},"status":{"description":"Status as the platform reports it.","nullable":true,"type":"string"},"metrics":{"type":"object","properties":{"spendMicros":{"nullable":true,"type":"string"},"impressions":{"nullable":true,"type":"string"},"clicks":{"nullable":true,"type":"string"},"results":{"description":"Platform result count. LinkedIn has no results metric.","nullable":true,"type":"string"}},"required":["spendMicros","impressions","clicks","results"],"additionalProperties":false},"unavailableMetrics":{"type":"array","items":{"type":"string"}},"native":{"description":"The platform-specific fields the dashboard shows for this entity.","type":"object","additionalProperties":{}}},"required":["level","nativeType","nativeId","parentNativeId","name","status","metrics","unavailableMetrics","native"],"additionalProperties":false},"adSets":{"type":"array","items":{"type":"object","properties":{"level":{"description":"Maeve level: campaign, ad_set or ad.","type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"description":"What the platform calls this level, for example campaign_group.","type":"string"},"nativeId":{"description":"The platform ID for this entity.","type":"string"},"parentNativeId":{"nullable":true,"type":"string"},"name":{"nullable":true,"type":"string"},"status":{"description":"Status as the platform reports it.","nullable":true,"type":"string"},"metrics":{"type":"object","properties":{"spendMicros":{"nullable":true,"type":"string"},"impressions":{"nullable":true,"type":"string"},"clicks":{"nullable":true,"type":"string"},"results":{"description":"Platform result count. LinkedIn has no results metric.","nullable":true,"type":"string"}},"required":["spendMicros","impressions","clicks","results"],"additionalProperties":false},"unavailableMetrics":{"type":"array","items":{"type":"string"}},"native":{"description":"The platform-specific fields the dashboard shows for this entity.","type":"object","additionalProperties":{}},"ads":{"type":"array","items":{"type":"object","properties":{"level":{"description":"Maeve level: campaign, ad_set or ad.","type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"description":"What the platform calls this level, for example campaign_group.","type":"string"},"nativeId":{"description":"The platform ID for this entity.","type":"string"},"parentNativeId":{"nullable":true,"type":"string"},"name":{"nullable":true,"type":"string"},"status":{"description":"Status as the platform reports it.","nullable":true,"type":"string"},"metrics":{"type":"object","properties":{"spendMicros":{"nullable":true,"type":"string"},"impressions":{"nullable":true,"type":"string"},"clicks":{"nullable":true,"type":"string"},"results":{"description":"Platform result count. LinkedIn has no results metric.","nullable":true,"type":"string"}},"required":["spendMicros","impressions","clicks","results"],"additionalProperties":false},"unavailableMetrics":{"type":"array","items":{"type":"string"}},"native":{"description":"The platform-specific fields the dashboard shows for this entity.","type":"object","additionalProperties":{}}},"required":["level","nativeType","nativeId","parentNativeId","name","status","metrics","unavailableMetrics","native"],"additionalProperties":false}}},"required":["level","nativeType","nativeId","parentNativeId","name","status","metrics","unavailableMetrics","native","ads"],"additionalProperties":false}},"native":{"description":"Platform-specific detail fields, such as the metrics window.","type":"object","additionalProperties":{}}},"required":["account","money","freshness","providerError","entityLevels","campaign","adSets","native"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read a paid campaign","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/accounts/{accountId}/budget":{"get":{"description":"Read the dashboard's budget view for one ad account: balance or account health, recent and month-to-date spend, active daily budgets and pacing per campaign and ad set. Meta shows it as Account spending on Reports over 30 days, so pass days 30 to match; TikTok always uses its 30 day window. Unavailable values carry a state such as restricted or reconnect_required instead of a number. Read-only.","operationId":"PublicAdsController_getBudget_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read account balance, spend and pacing","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"budget":{"description":"The dashboard's budget view: account balance or health, spend windows and pacing per campaign and ad set.","type":"object","additionalProperties":{}}},"required":["account","money","budget"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read account balance, spend and pacing","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/accounts/{accountId}/reports/summary":{"get":{"description":"Read spend, impressions, clicks, results and reach for one ad account over a number of days, with the date range, its timezone, the currency and how fresh the data is. Metrics the platform did not return are null and listed in unavailableMetrics. The full platform report is under native. Read-only.","operationId":"PublicAdsController_getReportSummary_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read paid ad totals","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"freshness":{"type":"object","properties":{"state":{"description":"stored means Maeve served its last synced copy and did not ask the platform.","type":"string","enum":["fresh","partial","stale","empty","stored"]},"refreshedAt":{"description":"When the data was last refreshed from the platform.","nullable":true,"type":"string"}},"required":["state","refreshedAt"],"additionalProperties":false},"providerError":{"description":"Set when the platform failed and stored data is shown.","nullable":true,"type":"object","properties":{"code":{"description":"Maeve ads error code, for example ADS_PROVIDER_RATE_LIMITED.","type":"string"},"message":{"type":"string"},"retry":{"type":"object","properties":{"retryable":{"description":"Whether repeating the same request can succeed.","type":"boolean"},"action":{"description":"What to do before trying again.","type":"string","enum":["retry_later","reconnect_account","grant_provider_permission","enable_account","correct_input","refresh_and_check","get_user_approval","none"]},"retryAfterSeconds":{"description":"Wait this long when the provider gave a time.","nullable":true,"type":"integer","exclusiveMinimum":true,"maximum":9007199254740991}},"required":["retryable","action","retryAfterSeconds"],"additionalProperties":false}},"required":["code","message","retry"],"additionalProperties":false},"range":{"type":"object","properties":{"days":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"startDate":{"nullable":true,"type":"string"},"endDate":{"nullable":true,"type":"string"},"timezone":{"description":"Timezone the dates are in.","nullable":true,"type":"string"}},"required":["days","startDate","endDate","timezone"],"additionalProperties":false},"metrics":{"type":"object","properties":{"spendMicros":{"nullable":true,"type":"string"},"impressions":{"nullable":true,"type":"string"},"clicks":{"nullable":true,"type":"string"},"results":{"description":"Platform result count. LinkedIn has no results metric.","nullable":true,"type":"string"},"reach":{"description":"Unique reach. It cannot be added up across days.","nullable":true,"type":"string"}},"required":["spendMicros","impressions","clicks","results","reach"],"additionalProperties":false},"unavailableMetrics":{"type":"array","items":{"type":"string"}},"native":{"description":"The platform-specific report, including metrics Maeve does not normalize.","type":"object","additionalProperties":{}}},"required":["account","money","freshness","providerError","range","metrics","unavailableMetrics","native"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read paid ad totals","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/accounts/{accountId}/reports/daily":{"get":{"description":"Read one row per day of spend, impressions, clicks, results and reach for one ad account, or for one campaign when campaignId is given. Days are in the account timezone. Recent days can still change while the platform finishes counting. Metrics the platform did not return are null. Read-only.","operationId":"PublicAdsController_getReportDaily_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read the daily paid ad series","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"freshness":{"type":"object","properties":{"state":{"description":"stored means Maeve served its last synced copy and did not ask the platform.","type":"string","enum":["fresh","partial","stale","empty","stored"]},"refreshedAt":{"description":"When the data was last refreshed from the platform.","nullable":true,"type":"string"}},"required":["state","refreshedAt"],"additionalProperties":false},"providerError":{"description":"Set when the platform failed and stored data is shown.","nullable":true,"type":"object","properties":{"code":{"description":"Maeve ads error code, for example ADS_PROVIDER_RATE_LIMITED.","type":"string"},"message":{"type":"string"},"retry":{"type":"object","properties":{"retryable":{"description":"Whether repeating the same request can succeed.","type":"boolean"},"action":{"description":"What to do before trying again.","type":"string","enum":["retry_later","reconnect_account","grant_provider_permission","enable_account","correct_input","refresh_and_check","get_user_approval","none"]},"retryAfterSeconds":{"description":"Wait this long when the provider gave a time.","nullable":true,"type":"integer","exclusiveMinimum":true,"maximum":9007199254740991}},"required":["retryable","action","retryAfterSeconds"],"additionalProperties":false}},"required":["code","message","retry"],"additionalProperties":false},"range":{"type":"object","properties":{"days":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"startDate":{"nullable":true,"type":"string"},"endDate":{"nullable":true,"type":"string"},"timezone":{"description":"Timezone the dates are in.","nullable":true,"type":"string"}},"required":["days","startDate","endDate","timezone"],"additionalProperties":false},"campaignId":{"nullable":true,"type":"string"},"rows":{"type":"array","items":{"type":"object","properties":{"day":{"description":"Date in the account timezone, YYYY-MM-DD.","type":"string"},"metrics":{"type":"object","properties":{"spendMicros":{"nullable":true,"type":"string"},"impressions":{"nullable":true,"type":"string"},"clicks":{"nullable":true,"type":"string"},"results":{"description":"Platform result count. LinkedIn has no results metric.","nullable":true,"type":"string"},"reach":{"description":"Unique reach. It cannot be added up across days.","nullable":true,"type":"string"}},"required":["spendMicros","impressions","clicks","results","reach"],"additionalProperties":false},"unavailableMetrics":{"type":"array","items":{"type":"string"}},"native":{"type":"object","additionalProperties":{}}},"required":["day","metrics","unavailableMetrics","native"],"additionalProperties":false}},"native":{"description":"Platform-specific report fields, such as attribution windows.","type":"object","additionalProperties":{}}},"required":["account","money","freshness","providerError","range","campaignId","rows","native"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read the daily paid ad series","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/accounts/{accountId}/reports/today":{"get":{"description":"Read today's figures for one ad account in its timezone. TikTok returns saved hourly results and renews them in the background; check freshness before treating empty rows as a successful empty report. Meta uses its reporting cache; LinkedIn returns the stored day. TikTok gives hourly rows at campaign level. Results can be null while the platform is still counting. Read-only.","operationId":"PublicAdsController_getReportToday_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read today's paid ad figures","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"today":{"description":"Today's figures as the dashboard shows them: hourly rows for TikTok, account totals for Meta, the stored day for LinkedIn.","type":"object","additionalProperties":{}}},"required":["account","money","today"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read today's paid ad figures","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/accounts/{accountId}/reports/breakdown":{"get":{"description":"Read one audience breakdown for a TikTok or Meta ad account: spend, impressions, clicks and results per age and gender, country or placement. TikTok always reports the last seven days and ignores the dates. Its saved result includes freshness; importing means the background request is pending, not a successful empty result. Meta reports at most 30 days: the 30 ending today, or startDate to endDate, which must be past days inside the 365 days Meta keeps. LinkedIn uses ads.linkedin.reports.get_demographics instead. Read-only.","operationId":"PublicAdsController_getReportBreakdown_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read paid ad results by age, gender, country or placement","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"breakdown":{"description":"Rows per dimension value with spend, impressions, clicks and results, plus the range and freshness.","type":"object","additionalProperties":{}}},"required":["account","money","breakdown"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read paid ad results by age, gender, country or placement","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/accounts/{accountId}/reports/client":{"get":{"description":"Read the client report for one ad account. The client report is the stored data behind the dashboard reports page and its export: totals, daily rows and the top campaigns and ads, grouped by currency. Meta ranks the top ten campaigns, ad sets and ads and TikTok and LinkedIn the top five campaigns and ads, by the chosen ranking (spend unless given); Meta and TikTok add a comparison period for a date range. days ends today, while the Reports page Last N days ends yesterday, so use startDate and endDate to match it. Ranges are at most 365 days, and the Meta comparison period must fall inside them too; LinkedIn keeps only its most recent 180 days, so a longer or older LinkedIn range is refused. Read-only. ads.reports.export_csv returns the same report as the CSV the dashboard downloads.","operationId":"PublicAdsController_getClientReport_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read the client report","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"report":{"description":"The client report the dashboard exports: totals, daily rows and top entities grouped by currency.","type":"object","additionalProperties":{}}},"required":["account","money","report"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read the client report","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/accounts/{accountId}/reports/client.csv":{"get":{"description":"Export the client report for one TikTok or LinkedIn ad account as CSV, with the same rows and columns as the dashboard download: summary, daily, campaign and ad rows per currency. The client report is the stored data behind the dashboard reports page and its export: totals, daily rows and the top campaigns and ads, grouped by currency. Meta ranks the top ten campaigns, ad sets and ads and TikTok and LinkedIn the top five campaigns and ads, by the chosen ranking (spend unless given); Meta and TikTok add a comparison period for a date range. days ends today, while the Reports page Last N days ends yesterday, so use startDate and endDate to match it. Ranges are at most 365 days, and the Meta comparison period must fall inside them too; LinkedIn keeps only its most recent 180 days, so a longer or older LinkedIn range is refused. Meta has no CSV export on the dashboard; read ads.reports.get_client_report instead. PDF reports are not available outside the app. Read-only.","operationId":"PublicAdsController_exportClientReportCsv_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Export the client report as CSV","content":{"text/csv":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"filename":{"type":"string"},"contentType":{"type":"string","enum":["text/csv;charset=utf-8"]},"rowCount":{"description":"Data rows, not counting the header.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"csv":{"description":"The CSV text, identical to the dashboard download.","type":"string"}},"required":["account","filename","contentType","rowCount","csv"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Export the client report as CSV","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/accounts/{accountId}/creative":{"get":{"description":"List the creatives in one Meta or TikTok ad account with performance over the chosen days and a preview or thumbnail URL. TikTok returns saved data with background renewal. Check freshness: importing is not a successful empty library. Preview URLs expire independently of saved metrics. LinkedIn creatives are read through ads.campaigns.get and ads.linkedin.creative.get_preview. Read-only.","operationId":"PublicAdsController_listCreative_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List creatives with performance","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"library":{"description":"The creative library as the dashboard shows it: items with performance and short-lived preview URLs.","type":"object","additionalProperties":{}}},"required":["account","money","library"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List creatives with performance","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/approvals/{approvalId}":{"get":{"description":"Read one approval for creating a paid campaign or boost: its status, when it expires, what would be created and the Maeve review page. Only the person who asked can read it, as only they can open the review page. Read-only. It cannot approve. Only the person who asked can approve, signed in to Maeve on the review page, so give them the reviewUrl and read again later. Once it is approved, repeat the creation request unchanged with its approvalId.","operationId":"PublicAdsController_getApproval_v1","parameters":[{"name":"approvalId","required":true,"in":"path","description":"Approval UUID returned when a creation asked for approval.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read a campaign creation approval","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"approval":{"type":"object","properties":{"id":{"type":"string"},"status":{"description":"pending waits for the person. approved can be used once. consumed has been used. declined and expired cannot be used.","type":"string","enum":["pending","approved","declined","expired","consumed"]},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"accountId":{"type":"string"},"reviewUrl":{"description":"The Maeve page where the person who asked reviews and decides. Opening it does not approve.","type":"string"},"requestedAt":{"type":"string"},"expiresAt":{"type":"string"},"decidedAt":{"nullable":true,"type":"string"},"declineNote":{"description":"What the person said should change when they declined. Change the request to match before asking again.","nullable":true,"type":"string"},"summary":{"nullable":true,"type":"object","properties":{"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"title":{"description":"What will be created, in plain words.","type":"string"},"account":{"type":"object","properties":{"id":{"type":"string"},"name":{"nullable":true,"type":"string"},"providerAccountId":{"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"nullable":true,"type":"string"}},"required":["id","name","providerAccountId","currency","timezone"],"additionalProperties":false},"objective":{"description":"The objective as the platform names it.","type":"string"},"hierarchy":{"description":"Every entity the request creates or adds to, from the campaign down.","type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"},"name":{"type":"string"},"existing":{"description":"True when this entity already exists and is only added to.","type":"boolean"}},"required":["level","nativeType","name","existing"],"additionalProperties":false}},"creative":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"audience":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"budgets":{"type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set"]},"kind":{"type":"string","enum":["daily","lifetime"]},"amountMicros":{"type":"string"},"currency":{"type":"string"},"name":{"description":"The campaign or ad set this budget belongs to, when there are several.","type":"string"}},"required":["level","kind","amountMicros","currency"],"additionalProperties":false}},"schedule":{"type":"object","properties":{"startAt":{"type":"string"},"endAt":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone of the ad account.","nullable":true,"type":"string"}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"initialState":{"description":"The state the platform creates it in.","type":"string","enum":["paused","disabled","draft","enabled"]},"activatesDelivery":{"description":"True when this request also starts delivery, so the budget can be spent without another step.","type":"boolean"}},"required":["initialState","activatesDelivery"],"additionalProperties":false}},"required":["platform","operation","title","account","objective","hierarchy","creative","audience","budgets","schedule","delivery"],"additionalProperties":false}},"required":["id","status","platform","operation","accountId","reviewUrl","requestedAt","expiresAt","decidedAt","summary"],"additionalProperties":false}},"required":["approval"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read a campaign creation approval","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/creation-config":{"get":{"description":"Read what the Meta composer offers for one Meta ad account: objectives with their destinations and optimization goals, calls to action, placements, special ad categories, granted permissions, Pages and Instagram accounts. The composer also hides multiple ad sets, a campaign budget, bid caps, frequency controls, Messenger, website leads, Advantage+ audience and placement assets unless native.features from ads.capabilities.get marks them available, and saving and publishing refuse them the same way. The account must be a Meta account. Read-only. It creates nothing.","operationId":"PublicAdsController_getMetaCreationConfig_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read the Meta campaign creation configuration","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"entityLevels":{"type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"}},"required":["level","nativeType"],"additionalProperties":false}},"config":{"description":"The creation configuration in the shape this platform defines.","type":"object","additionalProperties":{}}},"required":["account","money","entityLevels","config"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read the Meta campaign creation configuration","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/campaigns/end-time":{"post":{"description":"Change when one Meta campaign or ad set stops delivering. A campaign end time is written to each of its active or paused ad sets. The time must be in the future and after the start, a daily budget needs more than 24 hours, and a lifetime budget must cover the minimum for every day. A null end time removes the end date, which only a daily budget allows. Any campaign except a Boost can change, including one made in Ads Manager. No confirmation, the same as the dashboard.","operationId":"PublicAdsController_updateMetaEndTime_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"level":{"description":"Maeve level: campaign or ad_set.","type":"string","enum":["campaign","ad_set"]},"id":{"description":"Platform ID of the campaign or ad set.","type":"string","minLength":1,"maxLength":64},"endTime":{"description":"When delivery ends, or null to remove the end date, which only a daily budget allows. Applied to every active or paused ad set when the level is campaign.","nullable":true,"type":"string"},"baseline":{"description":"For Meta, return the exact baseline you reviewed. ads.meta.campaigns.get_edit_context returns it for every change, and budget requirements return it under native.baseline. A missing or stale baseline returns META_ADS_EDIT_CONFLICT with details.currentBaseline and makes no changes. Show those current values to the user before resubmitting. Not used for other networks.","type":"object","additionalProperties":{}}},"required":["level","id","endTime"],"additionalProperties":false}}}},"responses":{"200":{"description":"Change when a Meta campaign or ad set stops","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"level":{"description":"Maeve level: campaign or ad_set.","type":"string","enum":["campaign","ad_set"]},"nativeType":{"type":"string"},"id":{"type":"string"},"endTime":{"description":"Null when the end date was removed.","nullable":true,"type":"string"},"adSetIds":{"description":"The ad sets whose end time changed.","type":"array","items":{"type":"string"}},"refresh":{"description":"Meta confirmed the change, but the saved campaign view has not refreshed yet.","type":"string","enum":["pending"]}},"required":["account","level","nativeType","id","endTime","adSetIds"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Change when a Meta campaign or ad set stops","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/campaigns/name":{"post":{"description":"Rename one Meta campaign, ad set or ad, as the dashboard's Rename does. Read the name baseline first with ads.meta.campaigns.get_edit_context (action name) and send it unchanged; if the name changed in between, the rename returns META_ADS_EDIT_CONFLICT with the current name and changes nothing. A name Maeve wrote keeps the suffix Maeve uses to recognise it on Meta; any other name is replaced as typed. Any campaign except a Boost can be renamed, including one made in Ads Manager; a campaign Maeve is still creating, and a deleted or archived item, are refused. No confirmation, the same as the dashboard.","operationId":"PublicAdsController_renameMetaEntity_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"level":{"description":"Maeve level of the entity: campaign, ad_set or ad.","type":"string","enum":["campaign","ad_set","ad"]},"id":{"description":"Platform ID of the campaign, ad set or ad.","type":"string","minLength":1,"maxLength":64},"name":{"description":"The new name, 1 to 200 characters once trimmed.","type":"string","minLength":1,"maxLength":200},"baseline":{"description":"For Meta, return the exact baseline you reviewed. ads.meta.campaigns.get_edit_context returns it for every change, and budget requirements return it under native.baseline. A missing or stale baseline returns META_ADS_EDIT_CONFLICT with details.currentBaseline and makes no changes. Show those current values to the user before resubmitting. Not used for other networks.","type":"object","additionalProperties":{}}},"required":["level","id","name"],"additionalProperties":false}}}},"responses":{"200":{"description":"Rename a Meta campaign, ad set or ad","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"},"id":{"type":"string"},"name":{"description":"The name as typed.","type":"string"},"refresh":{"description":"Meta confirmed the change, but the saved campaign view has not refreshed yet.","type":"string","enum":["pending"]}},"required":["account","level","nativeType","id","name"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Rename a Meta campaign, ad set or ad","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/entities/{level}/{entityId}":{"delete":{"description":"Delete one Meta campaign, ad set or ad and everything under it, as the dashboard's Delete does. An ad can be deleted while it is on; check the other ads in its ad set first, because an ad set whose only active ad is deleted stops delivering. An ad set or campaign must be paused first. A campaign Maeve published is deleted with everything its publication created, and its draft becomes editable again; a campaign Maeve copied is deleted with everything Maeve copied or added into it; any other campaign, such as one made in Ads Manager, is deleted with every ad set and ad Meta lists in it. A Boost is refused: use ads.meta.boosts.cleanup. Read the delete baseline first with ads.meta.campaigns.get_edit_context (action delete) and send it unchanged. Meta deletes for good. Requires the exact confirmation text and is never auto-confirmed.","operationId":"PublicAdsController_deleteMetaEntity_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"level","required":true,"in":"path","description":"Maeve level: campaign, ad_set or ad.","schema":{"type":"string"}},{"name":"entityId","required":true,"in":"path","description":"Platform ID of the campaign, ad set or ad.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"baseline":{"description":"For Meta, return the exact baseline you reviewed. ads.meta.campaigns.get_edit_context returns it for every change, and budget requirements return it under native.baseline. A missing or stale baseline returns META_ADS_EDIT_CONFLICT with details.currentBaseline and makes no changes. Show those current values to the user before resubmitting. Not used for other networks.","type":"object","additionalProperties":{}}},"additionalProperties":false}}}},"responses":{"200":{"description":"Delete a Meta campaign, ad set or ad","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"},"entityId":{"type":"string"},"deleted":{"type":"boolean","enum":[true]},"refresh":{"description":"Meta confirmed the delete, but the saved campaign view has not refreshed yet.","type":"string","enum":["pending"]},"confirmationMode":{"type":"string","enum":["explicit_confirmation","dangerous_auto_confirm"]}},"required":["account","level","nativeType","entityId","deleted"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Delete a Meta campaign, ad set or ad","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/ad-sets/{adSetId}/ad-context":{"get":{"description":"Read what a new ad added to one Meta ad set inherits, as the dashboard's Add ad dialog does: the ad set's specification with no ads, initialStatus (ACTIVE when its campaign and ad set are both on), and the baseline to send with ads.meta.ads.create. Only Traffic ad sets take new ads, at most 50 each. Only campaigns Maeve created can be changed this way, as in the dashboard; a campaign made in Ads Manager, a Boost and an object changed in Ads Manager since are refused with the reason. Reads Meta live. The dashboard shows this only to people who manage ads, so it needs ads.manage.","operationId":"PublicAdsController_getMetaAdContext_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"adSetId","required":true,"in":"path","description":"Platform ID of the ad set.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read what a new ad in a Meta ad set inherits","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"context":{"description":"specification (the ad set with no ads), initialStatus and baseline.","type":"object","additionalProperties":{}}},"required":["account","money","context"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read what a new ad in a Meta ad set inherits","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/ad-sets/{adSetId}/ads":{"post":{"description":"Add one ad to an existing Meta ad set, as the dashboard's Add ad does: Traffic ad sets only, at most 50 ads each. Only campaigns Maeve created can be changed this way, as in the dashboard; a campaign made in Ads Manager, a Boost and an object changed in Ads Manager since are refused with the reason. Read ads.meta.ad_sets.get_ad_context first and send its baseline unchanged; images and videos must already be uploaded with ads.meta.media.upload. The ad is added paused unless initialStatus is ACTIVE, which starts it when its campaign and ad set are on, so it spends the budget and needs the exact confirmation text. No approval, as the dashboard asks for none. Send the same idempotencyKey on every repeat; a key that already added the ad returns it.","operationId":"PublicAdsController_createMetaAd_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"adSetId","required":true,"in":"path","description":"Platform ID of the ad set.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"idempotencyKey":{"description":"A key you choose once for this change and send unchanged on every repeat. The same key never applies it twice.","type":"string","minLength":1,"maxLength":128},"ad":{"description":"The ad in the draft shape: a new adKey, and the adSetKey of the ad set in ads.meta.ad_sets.get_ad_context.","type":"object","properties":{"adKey":{"description":"Stable key you choose for this ad.","type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"},"adSetKey":{"description":"The adSetKey of the ad set this ad belongs to.","type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"},"name":{"type":"string","maxLength":255},"primaryText":{"type":"string","maxLength":2200},"headline":{"description":"Empty for Messenger and Page likes ads.","type":"string","maxLength":255},"destinationUrl":{"description":"An https URL for website ads. Empty for Messenger, Page likes, profile visits and event responses.","type":"string","maxLength":2048},"cta":{"type":"string","enum":["install_mobile_app","none","learn_more","apply_now","book_now","contact_us","download","get_offer","get_quote","get_showtimes","listen_now","request_time","see_menu","shop_now","sign_up","subscribe","watch_more","like_page","view_instagram_profile","event_rsvp"]},"creative":{"description":"The format must be one the goal allows: video views need single_video, Page likes and profile visits a single image or video, event responses a single image.","anyOf":[{"type":"object","properties":{"format":{"type":"string","enum":["catalog_template"]},"description":{"type":"string","maxLength":255}},"required":["format","description"],"additionalProperties":false},{"type":"object","properties":{"format":{"type":"string","enum":["single_image"]},"media":{"nullable":true,"description":"A Media Room asset. Upload it with ads.meta.media.upload and wait for ready before publishing.","type":"object","properties":{"mediaId":{"description":"Media Room asset ID, from media.list, media.get or media.complete_upload.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false},"placementAssets":{"maxItems":2,"type":"array","items":{"type":"object","properties":{"assetKey":{"description":"Stable key for this placement image.","type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"},"placementGroup":{"type":"string","enum":["feed","stories_reels"]},"media":{"nullable":true,"description":"A Media Room asset. Upload it with ads.meta.media.upload and wait for ready before publishing.","type":"object","properties":{"mediaId":{"description":"Media Room asset ID, from media.list, media.get or media.complete_upload.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["assetKey","placementGroup","media"],"additionalProperties":false}}},"required":["format","media","placementAssets"],"additionalProperties":false},{"type":"object","properties":{"format":{"type":"string","enum":["single_video"]},"media":{"nullable":true,"description":"A Media Room asset. Upload it with ads.meta.media.upload and wait for ready before publishing.","type":"object","properties":{"mediaId":{"description":"Media Room asset ID, from media.list, media.get or media.complete_upload.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["format","media"],"additionalProperties":false},{"type":"object","properties":{"format":{"type":"string","enum":["carousel"]},"cards":{"description":"2 to 10 cards before publishing.","maxItems":10,"type":"array","items":{"type":"object","properties":{"cardKey":{"description":"Stable key for this card.","type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"},"media":{"nullable":true,"description":"A Media Room asset. Upload it with ads.meta.media.upload and wait for ready before publishing.","type":"object","properties":{"mediaId":{"description":"Media Room asset ID, from media.list, media.get or media.complete_upload.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false},"destinationUrl":{"type":"string","maxLength":2048},"headline":{"type":"string","maxLength":255}},"required":["cardKey","media","destinationUrl","headline"],"additionalProperties":false}}},"required":["format","cards"],"additionalProperties":false},{"type":"object","properties":{"format":{"type":"string","enum":["flexible_asset_feed"]},"assets":{"maxItems":10,"type":"array","items":{"description":"A Media Room asset. Upload it with ads.meta.media.upload and wait for ready before publishing.","type":"object","properties":{"mediaId":{"description":"Media Room asset ID, from media.list, media.get or media.complete_upload.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"additionalPrimaryTexts":{"maxItems":4,"type":"array","items":{"type":"string"}},"additionalHeadlines":{"maxItems":4,"type":"array","items":{"type":"string"}},"descriptions":{"maxItems":5,"type":"array","items":{"type":"string"}},"additionalDestinationUrls":{"description":"Keep empty when publishing. Flexible ads currently support one destination URL.","maxItems":4,"type":"array","items":{"type":"string"}},"adFormats":{"type":"array","items":{"anyOf":[{"type":"string","enum":["single_image"]}]},"minItems":1,"maxItems":1}},"required":["format","assets","additionalPrimaryTexts","additionalHeadlines","descriptions","additionalDestinationUrls","adFormats"],"additionalProperties":false}]},"welcomeMessage":{"description":"Messenger ads only; null otherwise.","nullable":true,"type":"string","maxLength":300},"urlTags":{"description":"URL parameters such as utm_source=meta, without ? or #. Empty when unused.","type":"string","maxLength":2048,"pattern":"^[^\\s?#]*$"},"multiAdvertiserAds":{"type":"string","enum":["disabled","enabled"]},"adaptToPlacement":{"type":"string","enum":["disabled","enabled"]}},"required":["adKey","adSetKey","name","primaryText","headline","destinationUrl","cta","creative","welcomeMessage","urlTags","multiAdvertiserAds","adaptToPlacement"],"additionalProperties":false},"initialStatus":{"description":"PAUSED, the default, adds the ad paused. ACTIVE starts it once created when its campaign and ad set are on, which spends the budget and needs the exact confirmation text.","type":"string","enum":["PAUSED","ACTIVE"]},"baseline":{"description":"For Meta, return the exact baseline you reviewed. ads.meta.campaigns.get_edit_context returns it for every change, and budget requirements return it under native.baseline. A missing or stale baseline returns META_ADS_EDIT_CONFLICT with details.currentBaseline and makes no changes. Show those current values to the user before resubmitting. Not used for other networks.","type":"object","additionalProperties":{}}},"required":["idempotencyKey","ad"],"additionalProperties":false}}}},"responses":{"200":{"description":"Add an ad to a Meta ad set","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"addition":{"description":"additionId, adId, creativeId, and refresh when the saved campaign view has not refreshed yet.","type":"object","additionalProperties":{}}},"required":["account","money","addition"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Add an ad to a Meta ad set","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/ads/{adId}/edit-context":{"get":{"description":"Read one Meta ad as the dashboard's Edit ad dialog does: its ad set's specification, the ad in the draft shape, whether it can be edited here and why not, and the baseline to send with ads.meta.ads.update. Only Traffic ads can be edited. Only campaigns Maeve created can be changed this way, as in the dashboard; a campaign made in Ads Manager, a Boost and an object changed in Ads Manager since are refused with the reason. Reads Meta live. The dashboard shows this only to people who manage ads, so it needs ads.manage.","operationId":"PublicAdsController_getMetaAdEditContext_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"adId","required":true,"in":"path","description":"Platform ID of the ad.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read a Meta ad as the dashboard edits it","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"context":{"description":"specification, ad, editable, reason and baseline.","type":"object","additionalProperties":{}}},"required":["account","money","context"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read a Meta ad as the dashboard edits it","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/ads/{adId}":{"post":{"description":"Replace the text, link, button and media of one Meta ad, as the dashboard's Edit ad does. Meta builds a new creative and reviews the ad again; the ad keeps its status, so an active ad goes on delivering once approved. Traffic ads only. Only campaigns Maeve created can be changed this way, as in the dashboard; a campaign made in Ads Manager, a Boost and an object changed in Ads Manager since are refused with the reason. Read ads.meta.ads.get_edit_context first, send the whole ad and its baseline unchanged, and upload new media with ads.meta.media.upload first. No confirmation, the same as the dashboard. Send the same idempotencyKey on every repeat.","operationId":"PublicAdsController_updateMetaAd_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"adId","required":true,"in":"path","description":"Platform ID of the ad.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"idempotencyKey":{"description":"A key you choose once for this change and send unchanged on every repeat. The same key never applies it twice.","type":"string","minLength":1,"maxLength":128},"ad":{"description":"The whole ad in the draft shape, keeping the adKey and adSetKey from ads.meta.ads.get_edit_context.","type":"object","properties":{"adKey":{"description":"Stable key you choose for this ad.","type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"},"adSetKey":{"description":"The adSetKey of the ad set this ad belongs to.","type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"},"name":{"type":"string","maxLength":255},"primaryText":{"type":"string","maxLength":2200},"headline":{"description":"Empty for Messenger and Page likes ads.","type":"string","maxLength":255},"destinationUrl":{"description":"An https URL for website ads. Empty for Messenger, Page likes, profile visits and event responses.","type":"string","maxLength":2048},"cta":{"type":"string","enum":["install_mobile_app","none","learn_more","apply_now","book_now","contact_us","download","get_offer","get_quote","get_showtimes","listen_now","request_time","see_menu","shop_now","sign_up","subscribe","watch_more","like_page","view_instagram_profile","event_rsvp"]},"creative":{"description":"The format must be one the goal allows: video views need single_video, Page likes and profile visits a single image or video, event responses a single image.","anyOf":[{"type":"object","properties":{"format":{"type":"string","enum":["catalog_template"]},"description":{"type":"string","maxLength":255}},"required":["format","description"],"additionalProperties":false},{"type":"object","properties":{"format":{"type":"string","enum":["single_image"]},"media":{"nullable":true,"description":"A Media Room asset. Upload it with ads.meta.media.upload and wait for ready before publishing.","type":"object","properties":{"mediaId":{"description":"Media Room asset ID, from media.list, media.get or media.complete_upload.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false},"placementAssets":{"maxItems":2,"type":"array","items":{"type":"object","properties":{"assetKey":{"description":"Stable key for this placement image.","type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"},"placementGroup":{"type":"string","enum":["feed","stories_reels"]},"media":{"nullable":true,"description":"A Media Room asset. Upload it with ads.meta.media.upload and wait for ready before publishing.","type":"object","properties":{"mediaId":{"description":"Media Room asset ID, from media.list, media.get or media.complete_upload.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["assetKey","placementGroup","media"],"additionalProperties":false}}},"required":["format","media","placementAssets"],"additionalProperties":false},{"type":"object","properties":{"format":{"type":"string","enum":["single_video"]},"media":{"nullable":true,"description":"A Media Room asset. Upload it with ads.meta.media.upload and wait for ready before publishing.","type":"object","properties":{"mediaId":{"description":"Media Room asset ID, from media.list, media.get or media.complete_upload.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["format","media"],"additionalProperties":false},{"type":"object","properties":{"format":{"type":"string","enum":["carousel"]},"cards":{"description":"2 to 10 cards before publishing.","maxItems":10,"type":"array","items":{"type":"object","properties":{"cardKey":{"description":"Stable key for this card.","type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"},"media":{"nullable":true,"description":"A Media Room asset. Upload it with ads.meta.media.upload and wait for ready before publishing.","type":"object","properties":{"mediaId":{"description":"Media Room asset ID, from media.list, media.get or media.complete_upload.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false},"destinationUrl":{"type":"string","maxLength":2048},"headline":{"type":"string","maxLength":255}},"required":["cardKey","media","destinationUrl","headline"],"additionalProperties":false}}},"required":["format","cards"],"additionalProperties":false},{"type":"object","properties":{"format":{"type":"string","enum":["flexible_asset_feed"]},"assets":{"maxItems":10,"type":"array","items":{"description":"A Media Room asset. Upload it with ads.meta.media.upload and wait for ready before publishing.","type":"object","properties":{"mediaId":{"description":"Media Room asset ID, from media.list, media.get or media.complete_upload.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"additionalPrimaryTexts":{"maxItems":4,"type":"array","items":{"type":"string"}},"additionalHeadlines":{"maxItems":4,"type":"array","items":{"type":"string"}},"descriptions":{"maxItems":5,"type":"array","items":{"type":"string"}},"additionalDestinationUrls":{"description":"Keep empty when publishing. Flexible ads currently support one destination URL.","maxItems":4,"type":"array","items":{"type":"string"}},"adFormats":{"type":"array","items":{"anyOf":[{"type":"string","enum":["single_image"]}]},"minItems":1,"maxItems":1}},"required":["format","assets","additionalPrimaryTexts","additionalHeadlines","descriptions","additionalDestinationUrls","adFormats"],"additionalProperties":false}]},"welcomeMessage":{"description":"Messenger ads only; null otherwise.","nullable":true,"type":"string","maxLength":300},"urlTags":{"description":"URL parameters such as utm_source=meta, without ? or #. Empty when unused.","type":"string","maxLength":2048,"pattern":"^[^\\s?#]*$"},"multiAdvertiserAds":{"type":"string","enum":["disabled","enabled"]},"adaptToPlacement":{"type":"string","enum":["disabled","enabled"]}},"required":["adKey","adSetKey","name","primaryText","headline","destinationUrl","cta","creative","welcomeMessage","urlTags","multiAdvertiserAds","adaptToPlacement"],"additionalProperties":false},"baseline":{"description":"For Meta, return the exact baseline you reviewed. ads.meta.campaigns.get_edit_context returns it for every change, and budget requirements return it under native.baseline. A missing or stale baseline returns META_ADS_EDIT_CONFLICT with details.currentBaseline and makes no changes. Show those current values to the user before resubmitting. Not used for other networks.","type":"object","additionalProperties":{}}},"required":["idempotencyKey","ad"],"additionalProperties":false}}}},"responses":{"200":{"description":"Replace the content of a Meta ad","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"edit":{"description":"The edit as the dashboard records it, with refresh when the saved view has not refreshed yet.","type":"object","additionalProperties":{}}},"required":["account","money","edit"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Replace the content of a Meta ad","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/ad-sets/{adSetId}/targeting":{"get":{"description":"Read one Meta ad set's audience, placements and EU beneficiary and payer as the dashboard's Edit audience dialog does, with whether they can be edited here and why not, and the baseline to send with ads.meta.ad_sets.update_targeting. An ad set on a saved audience cannot be edited. Only campaigns Maeve created can be changed this way, as in the dashboard; a campaign made in Ads Manager, a Boost and an object changed in Ads Manager since are refused with the reason. Reads Meta live. The dashboard shows this only to people who manage ads, so it needs ads.manage.","operationId":"PublicAdsController_getMetaAdSetTargeting_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"adSetId","required":true,"in":"path","description":"Platform ID of the ad set.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read a Meta ad set's audience, placements and DSA","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"targeting":{"description":"audience, placements, dsa, editable, reason and baseline.","type":"object","additionalProperties":{}}},"required":["account","money","targeting"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read a Meta ad set's audience, placements and DSA","tags":["Ads"]},"post":{"description":"Change who one Meta ad set reaches and where, as the dashboard's Edit audience does: the built audience, the placements, and the EU beneficiary and payer. A running ad set changes at once. The same checks as the composer apply, including Advantage+ audience, custom audience readiness and DSA for European locations. Only campaigns Maeve created can be changed this way, as in the dashboard; a campaign made in Ads Manager, a Boost and an object changed in Ads Manager since are refused with the reason. Read ads.meta.ad_sets.get_targeting first and send its baseline unchanged. No confirmation, the same as the dashboard.","operationId":"PublicAdsController_updateMetaAdSetTargeting_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"adSetId","required":true,"in":"path","description":"Platform ID of the ad set.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"audience":{"nullable":true,"anyOf":[{"type":"object","properties":{"source":{"type":"string","enum":["built"]},"includedLocations":{"type":"array","items":{"type":"object","properties":{"id":{"description":"ID from ads.meta.targeting.search.","type":"string","minLength":1},"name":{"type":"string","minLength":1},"targetingType":{"description":"Required for demographics: the result's targetingType from ads.meta.targeting.search. Meta accepts one ID under several demographic fields.","type":"string","enum":["college_years","education_majors","education_schools","education_statuses","family_statuses","household_composition","income","industries","interested_in","life_events","moms","office_type","political_views","politics","relationship_statuses","work_employers","work_positions"]},"locationType":{"type":"string","enum":["country","region","city","postal_code"]},"countryCode":{"nullable":true,"type":"string"},"countryName":{"nullable":true,"type":"string"},"regionName":{"nullable":true,"type":"string"},"primaryCity":{"nullable":true,"type":"string"},"geoHierarchyName":{"nullable":true,"type":"string"}},"required":["id","name"],"additionalProperties":false}},"excludedLocations":{"type":"array","items":{"type":"object","properties":{"id":{"description":"ID from ads.meta.targeting.search.","type":"string","minLength":1},"name":{"type":"string","minLength":1},"targetingType":{"description":"Required for demographics: the result's targetingType from ads.meta.targeting.search. Meta accepts one ID under several demographic fields.","type":"string","enum":["college_years","education_majors","education_schools","education_statuses","family_statuses","household_composition","income","industries","interested_in","life_events","moms","office_type","political_views","politics","relationship_statuses","work_employers","work_positions"]},"locationType":{"type":"string","enum":["country","region","city","postal_code"]},"countryCode":{"nullable":true,"type":"string"},"countryName":{"nullable":true,"type":"string"},"regionName":{"nullable":true,"type":"string"},"primaryCity":{"nullable":true,"type":"string"},"geoHierarchyName":{"nullable":true,"type":"string"}},"required":["id","name"],"additionalProperties":false}},"ageMin":{"description":"Hard minimum age. 18 to 25 with Advantage+ audience; otherwise 18 to 65.","nullable":true,"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"ageMax":{"description":"18 to 65. 65 means 65 and over.","nullable":true,"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"ageRangeMin":{"description":"Advantage+ suggested range start, independent of ageMin. Must be between ageMin and ageMax. Older drafts default to ageMin.","type":"integer","minimum":18,"maximum":65},"gender":{"type":"string","enum":["all","female","male"]},"demographics":{"type":"array","items":{"type":"object","properties":{"id":{"description":"ID from ads.meta.targeting.search.","type":"string","minLength":1},"name":{"type":"string","minLength":1},"targetingType":{"description":"Required for demographics: the result's targetingType from ads.meta.targeting.search. Meta accepts one ID under several demographic fields.","type":"string","enum":["college_years","education_majors","education_schools","education_statuses","family_statuses","household_composition","income","industries","interested_in","life_events","moms","office_type","political_views","politics","relationship_statuses","work_employers","work_positions"]},"locationType":{"type":"string","enum":["country","region","city","postal_code"]},"countryCode":{"nullable":true,"type":"string"},"countryName":{"nullable":true,"type":"string"},"regionName":{"nullable":true,"type":"string"},"primaryCity":{"nullable":true,"type":"string"},"geoHierarchyName":{"nullable":true,"type":"string"}},"required":["id","name"],"additionalProperties":false}},"interests":{"type":"array","items":{"type":"object","properties":{"id":{"description":"ID from ads.meta.targeting.search.","type":"string","minLength":1},"name":{"type":"string","minLength":1},"targetingType":{"description":"Required for demographics: the result's targetingType from ads.meta.targeting.search. Meta accepts one ID under several demographic fields.","type":"string","enum":["college_years","education_majors","education_schools","education_statuses","family_statuses","household_composition","income","industries","interested_in","life_events","moms","office_type","political_views","politics","relationship_statuses","work_employers","work_positions"]},"locationType":{"type":"string","enum":["country","region","city","postal_code"]},"countryCode":{"nullable":true,"type":"string"},"countryName":{"nullable":true,"type":"string"},"regionName":{"nullable":true,"type":"string"},"primaryCity":{"nullable":true,"type":"string"},"geoHierarchyName":{"nullable":true,"type":"string"}},"required":["id","name"],"additionalProperties":false}},"behaviors":{"type":"array","items":{"type":"object","properties":{"id":{"description":"ID from ads.meta.targeting.search.","type":"string","minLength":1},"name":{"type":"string","minLength":1},"targetingType":{"description":"Required for demographics: the result's targetingType from ads.meta.targeting.search. Meta accepts one ID under several demographic fields.","type":"string","enum":["college_years","education_majors","education_schools","education_statuses","family_statuses","household_composition","income","industries","interested_in","life_events","moms","office_type","political_views","politics","relationship_statuses","work_employers","work_positions"]},"locationType":{"type":"string","enum":["country","region","city","postal_code"]},"countryCode":{"nullable":true,"type":"string"},"countryName":{"nullable":true,"type":"string"},"regionName":{"nullable":true,"type":"string"},"primaryCity":{"nullable":true,"type":"string"},"geoHierarchyName":{"nullable":true,"type":"string"}},"required":["id","name"],"additionalProperties":false}},"includedCustomAudienceIds":{"description":"IDs from ads.meta.audiences.list.","type":"array","items":{"type":"string","minLength":1}},"excludedCustomAudienceIds":{"type":"array","items":{"type":"string","minLength":1}},"advantageAudience":{"type":"string","enum":["disabled","enabled"]}},"required":["source","includedLocations","excludedLocations","ageMin","ageMax","gender","demographics","interests","behaviors","includedCustomAudienceIds","excludedCustomAudienceIds","advantageAudience"],"additionalProperties":false},{"type":"object","properties":{"source":{"type":"string","enum":["existing"]},"audienceType":{"type":"string","enum":["saved","custom"]},"audienceId":{"description":"ID from ads.meta.audiences.list.","type":"string","minLength":1}},"required":["source","audienceType","audienceId"],"additionalProperties":false}]},"placements":{"anyOf":[{"type":"object","properties":{"mode":{"type":"string","enum":["automatic"]}},"required":["mode"],"additionalProperties":false},{"type":"object","properties":{"mode":{"type":"string","enum":["manual"]},"devices":{"minItems":1,"type":"array","items":{"type":"string","enum":["mobile","desktop"]}},"values":{"type":"array","items":{"type":"string","enum":["facebook_feed","instagram_feed","facebook_marketplace","facebook_video_feeds","facebook_right_column","instagram_explore","messenger_inbox","instagram_stories","facebook_stories","messenger_stories","facebook_in_stream_video","facebook_search_results","audience_network_classic","audience_network_rewarded_video","audience_network_in_stream_video","facebook_reels","instagram_reels","threads_feed"]}}},"required":["mode","devices","values"],"additionalProperties":false}]},"dsa":{"description":"Required when the audience includes the European Union.","type":"object","properties":{"beneficiary":{"nullable":true,"type":"string"},"payor":{"nullable":true,"type":"string"}},"required":["beneficiary","payor"],"additionalProperties":false},"baseline":{"description":"For Meta, return the exact baseline you reviewed. ads.meta.campaigns.get_edit_context returns it for every change, and budget requirements return it under native.baseline. A missing or stale baseline returns META_ADS_EDIT_CONFLICT with details.currentBaseline and makes no changes. Show those current values to the user before resubmitting. Not used for other networks.","type":"object","additionalProperties":{}}},"required":["audience","placements","dsa"],"additionalProperties":false}}}},"responses":{"200":{"description":"Change a Meta ad set's audience, placements and DSA","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"targeting":{"description":"The targeting Meta now has, with refresh when the saved view has not refreshed yet.","type":"object","additionalProperties":{}}},"required":["account","money","targeting"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Change a Meta ad set's audience, placements and DSA","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/campaigns/edit-context":{"get":{"description":"Read Meta's current values for a change to campaigns, ad sets or ads, before making it: status for a pause, resume or cleanup, the budget, the ad set end dates or the name. Show the values to the user, then send the returned baseline unchanged with ads.campaigns.update_status, ads.campaigns.update_budget, ads.meta.campaigns.update_end_time, ads.meta.campaigns.update_name, ads.meta.entities.delete or ads.meta.publications.cleanup. If anything changes in between, the change returns META_ADS_EDIT_CONFLICT with the new values and makes no changes. Reads Meta live. The baseline grants no permission. The dashboard reads these values only in the dialogs of people who manage ads, so this needs ads.manage.","operationId":"PublicAdsController_getMetaEditContext_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read the current Meta values a change will replace","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"action":{"type":"string","enum":["status","budget","end_time","name","delete"]},"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"},"ids":{"type":"array","items":{"type":"string"}},"baseline":{"description":"Meta's current values for this change under values. Show them to the user, then send this object unchanged as baseline with the change.","type":"object","additionalProperties":{}}},"required":["account","action","level","nativeType","ids","baseline"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read the current Meta values a change will replace","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/audiences":{"get":{"description":"List the saved audiences and custom audiences that exist on one Meta ad account, as the composer offers them. The account must be a Meta account. Read-only.","operationId":"PublicAdsController_listMetaAudiences_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List Meta saved and custom audiences","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"audiences":{"description":"savedAudiences and customAudiences with the time they were checked. A custom audience or lookalike is usable only when selectable is true; availabilityReason says why not, such as too_small or failed, and validation refuses those as the composer does.","type":"object","additionalProperties":{}}},"required":["account","money","audiences"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List Meta saved and custom audiences","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/catalogs":{"get":{"description":"Read catalogs owned by this advertiser business. Select catalogId for product sets and accessible connected pixels, then productSetId for a bounded product sample. A sample and token visibility do not prove advertising eligibility or event product-ID matching. Shared catalogs are unavailable.","operationId":"PublicAdsController_listMetaCatalogs_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List Meta catalogs","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"catalogs":{"type":"object","properties":{"catalogs":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":64},"name":{"type":"string"},"productCount":{"type":"number"},"businessId":{"type":"string","minLength":1,"maxLength":64}},"required":["id","name","productCount","businessId"],"additionalProperties":false}},"selection":{"nullable":true,"type":"object","properties":{"catalogId":{"type":"string","minLength":1,"maxLength":64},"productSets":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":64},"name":{"type":"string"},"productCount":{"type":"number"}},"required":["id","name","productCount"],"additionalProperties":false}},"eventSources":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":64},"name":{"type":"string"},"lastFiredAt":{"nullable":true,"type":"string"}},"required":["id","name","lastFiredAt"],"additionalProperties":false}},"productSetId":{"nullable":true,"type":"string","minLength":1,"maxLength":64},"products":{"maxItems":3,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":64},"name":{"type":"string"},"retailerId":{"nullable":true,"type":"string"},"availability":{"type":"string"},"visibility":{"type":"string"},"reviewStatus":{"type":"string"},"url":{"nullable":true,"type":"string"},"imageUrl":{"nullable":true,"type":"string"}},"required":["id","name","retailerId","availability","visibility","reviewStatus","url","imageUrl"],"additionalProperties":false}},"sampleHasMore":{"type":"boolean"},"readinessReasons":{"type":"array","items":{"type":"string"}}},"required":["catalogId","productSets","eventSources","productSetId","products","sampleHasMore","readinessReasons"],"additionalProperties":false},"checkedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"nextStep":{"type":"string"}},"required":["catalogs","selection","checkedAt","nextStep"],"additionalProperties":false}},"required":["account","money","catalogs"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List Meta catalogs","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/apps":{"get":{"description":"Discover account-scoped apps, iOS and Android store destinations, install tracking and unresolved readiness reasons. Discovery does not establish publication or attribution eligibility.","operationId":"PublicAdsController_listMetaApps_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List Meta apps","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"apps":{"type":"object","properties":{"apps":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":64},"name":{"type":"string"},"stores":{"type":"array","items":{"type":"object","properties":{"platform":{"type":"string","enum":["ios","android"]},"url":{"type":"string","format":"uri"}},"required":["platform","url"],"additionalProperties":false}},"installTracking":{"type":"string","enum":["tracked","not_tracked","unknown"]},"nextStep":{"type":"string"},"readinessReasons":{"type":"array","items":{"type":"string","enum":["mobile_store_missing","install_tracking_missing","install_tracking_unknown","ios_attribution_unverified"]}}},"required":["id","name","stores","installTracking","nextStep","readinessReasons"],"additionalProperties":false}},"checkedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["apps","checkedAt"],"additionalProperties":false}},"required":["account","money","apps"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List Meta apps","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/pixels":{"get":{"description":"List the Meta pixels available to one ad account with their status and when each last fired. The account must be a Meta account. Read-only.","operationId":"PublicAdsController_listMetaPixels_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List Meta pixels","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"pixels":{"description":"pixels with id, name, status and last fired time, plus the Events Manager link.","type":"object","additionalProperties":{}}},"required":["account","money","pixels"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List Meta pixels","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/pixels/{pixelId}/events":{"get":{"description":"List the events one Meta pixel fired recently, so a conversion event can be chosen with confidence. The account must be a Meta account. Read-only.","operationId":"PublicAdsController_listMetaPixelEvents_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"pixelId","required":true,"in":"path","description":"Pixel ID from the pixel list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List recent events of a Meta pixel","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"events":{"description":"The pixel, the time window and the recent events.","type":"object","additionalProperties":{}}},"required":["account","money","events"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List recent events of a Meta pixel","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/custom-conversions":{"get":{"description":"List the custom conversions defined on one Meta ad account, with their event source and whether each fired recently. The account must be a Meta account. Read-only.","operationId":"PublicAdsController_listMetaCustomConversions_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List Meta custom conversions","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"customConversions":{"description":"customConversions with id, name, event type, source and recent activity, plus the Events Manager link.","type":"object","additionalProperties":{}}},"required":["account","money","customConversions"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List Meta custom conversions","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/lead-forms":{"get":{"description":"List the instant forms one Facebook Page offers for lead ads, with status and locale. The account must be a Meta account. Read-only.","operationId":"PublicAdsController_listMetaLeadForms_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List instant forms of a Facebook Page","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"leadForms":{"description":"state, the forms and the Forms Manager link.","type":"object","additionalProperties":{}}},"required":["account","money","leadForms"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List instant forms of a Facebook Page","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/events":{"get":{"description":"List the upcoming Facebook events one Page hosts, for event response campaigns. The account must be a Meta account. Read-only.","operationId":"PublicAdsController_listMetaEvents_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List upcoming events of a Facebook Page","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"events":{"description":"state and the events with id, name and start time.","type":"object","additionalProperties":{}}},"required":["account","money","events"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List upcoming events of a Facebook Page","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/targeting/search":{"get":{"description":"Search Meta targeting options by kind: locations, demographics, interests or behaviors. Returns the IDs the targeting specification uses. Keep the targetingType of a demographic result on its selection; Meta accepts one ID under several demographic fields. The account must be a Meta account. Read-only.","operationId":"PublicAdsController_searchMetaTargeting_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Search Meta targeting options","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"results":{"description":"Matching targeting options with their IDs and types.","type":"array","items":{"type":"object","additionalProperties":{}}}},"required":["account","money","results"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Search Meta targeting options","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/targeting/validate":{"post":{"description":"Check a whole Meta campaign specification against the account, the same check publishing runs: targeting, schedule, budget minimums, delivery controls, placements and DSA. Returns the normalized specification and whether the first ad set needs a DSA beneficiary; check each other ad set on its own. It saves nothing. The account must be a Meta account. Read-only.","operationId":"PublicAdsController_validateMetaTargeting_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"specification":{"description":"A Meta campaign specification in the shape ads.meta.drafts.save describes. The examples use fixture IDs.","type":"object","additionalProperties":{}}},"required":["specification"],"additionalProperties":false}}}},"responses":{"200":{"description":"Validate Meta targeting in a specification","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"validation":{"description":"valid, the normalized specification and dsaRequired.","type":"object","additionalProperties":{}}},"required":["account","money","validation"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Validate Meta targeting in a specification","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/estimate":{"post":{"description":"Estimate audience size and delivery for the first ad set of a Meta campaign specification, the figures the composer shows for each ad set before publishing. To estimate another ad set, send a specification with that ad set alone. It saves nothing and spends nothing. The account must be a Meta account. Read-only.","operationId":"PublicAdsController_estimateMetaDelivery_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"specification":{"description":"A Meta campaign specification in the shape ads.meta.drafts.save describes. The examples use fixture IDs.","type":"object","additionalProperties":{}}},"required":["specification"],"additionalProperties":false}}}},"responses":{"200":{"description":"Estimate reach and delivery for a Meta specification","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"estimate":{"description":"The reach estimate and delivery estimate as the composer shows them.","type":"object","additionalProperties":{}}},"required":["account","money","estimate"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Estimate reach and delivery for a Meta specification","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/placements":{"post":{"description":"Resolve which Meta placements a campaign can use for its objective, destination, optimization, devices, creative format and identities, including the Advantage+ options the account allows. The account must be a Meta account. Read-only.","operationId":"PublicAdsController_resolveMetaPlacements_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"objective":{"type":"string","enum":["traffic","awareness","engagement","sales","leads","app_promotion","catalog_sales"]},"destination":{"type":"string","enum":["app","website","on_ad","instant_form","messenger","instagram_profile","facebook_page","facebook_event"]},"optimization":{"type":"string","enum":["app_installs","landing_page_views","link_clicks","daily_unique_reach","ad_recall_lift","post_engagement","offsite_conversions","lead_generation","conversations","thruplay","two_second_video_views","profile_visits","page_likes","event_responses"]},"billingEvent":{"type":"string","enum":["impressions"]},"devices":{"minItems":1,"type":"array","items":{"type":"string","enum":["mobile","desktop"]}},"creativeFormat":{"type":"string","enum":["single_image","single_video","carousel","flexible_asset_feed","catalog_template"]},"mediaType":{"type":"string","enum":["image","video","mixed","unknown"]},"assetWidth":{"nullable":true,"type":"integer","minimum":1,"maximum":100000},"assetHeight":{"nullable":true,"type":"integer","minimum":1,"maximum":100000},"assetAspectRatios":{"minItems":1,"type":"array","items":{"type":"string","enum":["square","portrait","vertical","landscape","unknown"]}},"hasPlacementAssets":{"type":"boolean"},"hasInstagramIdentity":{"type":"boolean"},"hasThreadsIdentity":{"type":"boolean"}},"required":["objective","destination","optimization","billingEvent","devices","creativeFormat","mediaType","assetAspectRatios","hasPlacementAssets","hasInstagramIdentity","hasThreadsIdentity"],"additionalProperties":false}}}},"responses":{"200":{"description":"Resolve effective Meta placements","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"placements":{"description":"The effective placements and their restrictions as the composer shows them.","type":"object","additionalProperties":{}}},"required":["account","money","placements"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Resolve effective Meta placements","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/media/{mediaId}":{"get":{"description":"Check one Media Room asset against Meta ad rules and read whether it has been uploaded to Meta and finished processing. Use it to poll after ads.meta.media.upload. The account must be a Meta account. Read-only.","operationId":"PublicAdsController_getMetaMedia_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"mediaId","required":true,"in":"path","description":"Media Room asset UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Check a Media Room asset for Meta ads and read its upload state","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"media":{"description":"Compatibility with Meta ad rules and the provider upload state.","type":"object","additionalProperties":{}}},"required":["account","money","media"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Check a Media Room asset for Meta ads and read its upload state","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/media/{mediaId}/upload":{"post":{"description":"Upload one Media Room asset to a Meta ad account so an ad can use it. Images upload at once; videos upload and then process, so poll ads.meta.media.get until the state is ready. The asset must already be in the Media Room (see media.upload) and pass the Meta rules: a JPEG or PNG image up to 30 MB, or an MP4 or MOV video in H.264 up to 4 GB and 240 minutes. It creates no ad and no campaign.","operationId":"PublicAdsController_uploadMetaMedia_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"mediaId","required":true,"in":"path","description":"Media Room asset UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Upload a Media Room asset to Meta","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"media":{"description":"Compatibility with Meta ad rules and the provider upload: null before the first upload, otherwise its state (uploading, processing, ready or failed) and any error.","type":"object","additionalProperties":{}}},"required":["account","money","media"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Upload a Media Room asset to Meta","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/preview":{"post":{"description":"Render a preview of one ad from a Meta campaign specification in a feed or story format, using media that has finished uploading. Returns a Meta-hosted preview URL, never raw HTML. It creates nothing. The account must be a Meta account. Read-only.","operationId":"PublicAdsController_previewMetaAd_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"specification":{"description":"A Meta campaign specification in the shape ads.meta.drafts.save describes, whose media has finished uploading.","type":"object","additionalProperties":{}},"adKey":{"description":"The key of the ad inside the specification to preview.","type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"},"format":{"type":"string","enum":["DESKTOP_FEED_STANDARD","MOBILE_FEED_STANDARD","FACEBOOK_STORY_MOBILE"]}},"required":["specification","adKey"],"additionalProperties":false}}}},"responses":{"200":{"description":"Preview one ad from a Meta specification","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"preview":{"description":"format and the preview URL.","type":"object","additionalProperties":{}}},"required":["account","money","preview"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Preview one ad from a Meta specification","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/creative/{creativeId}":{"get":{"description":"Read one Meta creative: its copy, media thumbnail, the ads that use it and its performance over the chosen days. The account must be a Meta account. Read-only.","operationId":"PublicAdsController_getMetaCreative_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"creativeId","required":true,"in":"path","description":"Creative ID from the creative list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read one Meta creative with performance","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"creative":{"description":"The creative item, the account currency and the range.","type":"object","additionalProperties":{}}},"required":["account","money","creative"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read one Meta creative with performance","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/creative/{creativeId}/preview":{"get":{"description":"Get a Meta-hosted desktop feed preview URL for one existing creative. Maeve checks the host and returns only the URL, never the preview HTML. A creative deleted on Meta has no preview. The account must be a Meta account. Read-only.","operationId":"PublicAdsController_getMetaCreativePreview_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"creativeId","required":true,"in":"path","description":"Creative ID from the creative list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Get a Meta-hosted preview URL for a creative","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"preview":{"description":"format and the preview URL.","type":"object","additionalProperties":{}}},"required":["account","money","preview"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Get a Meta-hosted preview URL for a creative","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/boosts/posts":{"get":{"description":"List the published Facebook and Instagram posts in the workspace that one Meta ad account could boost, newest first, with why each is eligible. Filter by platform and page with limit and offset; page.total counts every matching post. Posts that already have a managed boost are left out. Create one with ads.meta.boosts.create, which waits for the person's approval on the Maeve review page. The account must be a Meta account. Read-only.","operationId":"PublicAdsController_listMetaBoostPosts_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List posts eligible for a Meta boost","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"posts":{"description":"Posts with caption, permalink, thumbnail and eligibility.","type":"array","items":{"type":"object","additionalProperties":{}}},"page":{"type":"object","properties":{"limit":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"offset":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"total":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"hasMore":{"type":"boolean"}},"required":["limit","offset","total","hasMore"],"additionalProperties":false}},"required":["account","money","posts","page"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List posts eligible for a Meta boost","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/boosts/config":{"get":{"description":"Read the options a Meta boost can use on one ad account: objectives, budget kinds, the minimum budget, age range, genders, countries and placements. minimumBudgetMicros is per day for both kinds: a lifetime budget needs at least that times the number of days. The account must be a Meta account. Read-only.","operationId":"PublicAdsController_getMetaBoostConfig_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read the Meta boost options","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"config":{"description":"The boost configuration as the dashboard reads it.","type":"object","additionalProperties":{}}},"required":["account","money","config"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read the Meta boost options","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/boosts/estimate":{"post":{"description":"Estimate the monthly audience of a Meta boost for one post, budget, schedule and audience. It spends nothing and creates nothing. The account must be a Meta account. Read-only.","operationId":"PublicAdsController_estimateMetaBoost_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"contentId":{"description":"Content ID from ads.meta.boosts.list_posts.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"objective":{"type":"string","enum":["POST_ENGAGEMENT"]},"optimizationGoal":{"type":"string","enum":["POST_ENGAGEMENT"]},"budgetKind":{"type":"string","enum":["daily","lifetime"]},"budgetMicros":{"description":"Whole micros of the account currency as a decimal string: 1000000 is one currency unit.","type":"string","pattern":"^\\d{1,18}$"},"startAt":{"type":"string"},"endAt":{"type":"string"},"countryCodes":{"description":"Two-letter country codes, such as NZ. Any country Meta serves; ads.meta.boosts.get_config suggests some. Give at least one country here or one place in locations.","maxItems":25,"type":"array","items":{"type":"string","pattern":"^[A-Z]{2}$"}},"locations":{"description":"Countries, regions, cities or postcodes from ads.meta.targeting.search with kind location, as it returns them. A place inside another chosen place is refused, such as Auckland with New Zealand.","maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":64},"name":{"type":"string","minLength":1,"maxLength":200},"locationType":{"type":"string","enum":["country","region","city","postal_code"]},"countryCode":{"nullable":true,"type":"string","pattern":"^[A-Z]{2}$"},"countryName":{"nullable":true,"type":"string","maxLength":200},"regionName":{"nullable":true,"type":"string","maxLength":200},"primaryCity":{"nullable":true,"type":"string","maxLength":200}},"required":["id","name","locationType"]}},"ageMin":{"type":"integer","minimum":18,"maximum":65},"ageMax":{"type":"integer","minimum":18,"maximum":65},"gender":{"type":"string","enum":["all","female","male"]}},"required":["contentId","objective","optimizationGoal","budgetKind","budgetMicros","startAt","endAt","ageMin","ageMax","gender"],"additionalProperties":false}}}},"responses":{"200":{"description":"Estimate a Meta boost","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"estimate":{"description":"state and monthly audience bounds, or when to retry.","type":"object","additionalProperties":{}}},"required":["account","money","estimate"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Estimate a Meta boost","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/boosts":{"post":{"description":"Create a Meta boost for one published post from ads.meta.boosts.list_posts: a post engagement campaign, ad set and ad, all paused. The first request creates nothing: it returns approvalRequired with an approval and its reviewUrl. Give the reviewUrl to the person; only their approval there, signed in to Maeve, lets the same request continue. Opening the page approves nothing. Then send the same request again, with the same idempotencyKey, plus approvalId. A repeat of a key that already created returns what it created without asking again. It does not start delivery; activate it with ads.meta.boosts.activate once it is paused and ready.","operationId":"PublicAdsController_createMetaBoost_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"contentId":{"description":"Content ID from ads.meta.boosts.list_posts.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"objective":{"type":"string","enum":["POST_ENGAGEMENT"]},"optimizationGoal":{"type":"string","enum":["POST_ENGAGEMENT"]},"budgetKind":{"type":"string","enum":["daily","lifetime"]},"budgetMicros":{"description":"Whole micros of the account currency as a decimal string: 1000000 is one currency unit.","type":"string","pattern":"^\\d{1,18}$"},"startAt":{"type":"string"},"endAt":{"type":"string"},"countryCodes":{"description":"Two-letter country codes, such as NZ. Any country Meta serves; ads.meta.boosts.get_config suggests some. Give at least one country here or one place in locations.","maxItems":25,"type":"array","items":{"type":"string","pattern":"^[A-Z]{2}$"}},"locations":{"description":"Countries, regions, cities or postcodes from ads.meta.targeting.search with kind location, as it returns them. A place inside another chosen place is refused, such as Auckland with New Zealand.","maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":64},"name":{"type":"string","minLength":1,"maxLength":200},"locationType":{"type":"string","enum":["country","region","city","postal_code"]},"countryCode":{"nullable":true,"type":"string","pattern":"^[A-Z]{2}$"},"countryName":{"nullable":true,"type":"string","maxLength":200},"regionName":{"nullable":true,"type":"string","maxLength":200},"primaryCity":{"nullable":true,"type":"string","maxLength":200}},"required":["id","name","locationType"]}},"ageMin":{"type":"integer","minimum":18,"maximum":65},"ageMax":{"type":"integer","minimum":18,"maximum":65},"gender":{"type":"string","enum":["all","female","male"]},"dsa":{"description":"Who benefits from the boost and who pays for it. Required when a country or place is in the EU or EEA; ignored otherwise.","nullable":true,"type":"object","properties":{"beneficiary":{"type":"string","minLength":1,"maxLength":255},"payor":{"type":"string","minLength":1,"maxLength":255}},"required":["beneficiary","payor"]},"idempotencyKey":{"description":"A key you choose once for this creation and send unchanged on every repeat, including after the approval. The same key never creates twice.","type":"string","minLength":1,"maxLength":128},"approvalId":{"description":"The approval from the first response, sent after the person has approved it in Maeve.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"chatConfirmation":{"description":"Only when the workspace lets people approve paid ad creation in chat: the chatConfirmation text from the approval response, sent with its approvalId after the person agreed in this chat. Never send it before they agree.","type":"string","maxLength":100}},"required":["contentId","objective","optimizationGoal","budgetKind","budgetMicros","startAt","endAt","ageMin","ageMax","gender","idempotencyKey"],"additionalProperties":false}}}},"responses":{"200":{"description":"Create a paused Meta boost after approval","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"anyOf":[{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"boost":{"type":"object","properties":{"provider":{"type":"string","enum":["meta"]},"accountId":{"nullable":true,"type":"string"},"boostId":{"type":"string"},"sourceContentId":{"description":"The boosted post, a content ID.","type":"string"},"state":{"description":"failed means the boost stopped with an error. deleted means it was cleaned up: Maeve deleted what it created on Meta, or it created nothing.","type":"string","enum":["creating","paused","active","paused_by_user","failed","deleted","ambiguous","manual_reconciliation_required"]},"checkpoint":{"type":"string","enum":["attempt_saved","campaign_saved","adset_saved","creative_saved","ad_saved","paused_ready"]},"localCampaignId":{"description":"Meta campaign ID once created.","nullable":true,"type":"string"},"localAdSetId":{"description":"Meta ad set ID once created.","nullable":true,"type":"string"},"localCreativeId":{"description":"Meta creative ID once created.","nullable":true,"type":"string"},"localAdId":{"description":"Meta ad ID once created.","nullable":true,"type":"string"},"allowedActions":{"type":"array","items":{"type":"string","enum":["activate_boost","pause_boost","resume_boost"]}},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"error":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"retryable":{"type":"boolean"}},"required":["code","message","retryable"],"additionalProperties":false}},"required":["provider","accountId","boostId","sourceContentId","state","checkpoint","localCampaignId","localAdSetId","localCreativeId","localAdId","allowedActions","createdAt","updatedAt","error"],"additionalProperties":false},"nextStep":{"description":"What to do next, in plain words.","type":"string"},"approvalRequired":{"type":"boolean","enum":[false]}},"required":["account","boost","nextStep","approvalRequired"],"additionalProperties":false},{"type":"object","properties":{"approvalRequired":{"type":"boolean","enum":[true]},"approval":{"type":"object","properties":{"id":{"type":"string"},"status":{"description":"pending waits for the person. approved can be used once. consumed has been used. declined and expired cannot be used.","type":"string","enum":["pending","approved","declined","expired","consumed"]},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"accountId":{"type":"string"},"reviewUrl":{"description":"The Maeve page where the person who asked reviews and decides. Opening it does not approve.","type":"string"},"requestedAt":{"type":"string"},"expiresAt":{"type":"string"},"decidedAt":{"nullable":true,"type":"string"},"declineNote":{"description":"What the person said should change when they declined. Change the request to match before asking again.","nullable":true,"type":"string"},"summary":{"nullable":true,"type":"object","properties":{"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"title":{"description":"What will be created, in plain words.","type":"string"},"account":{"type":"object","properties":{"id":{"type":"string"},"name":{"nullable":true,"type":"string"},"providerAccountId":{"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"nullable":true,"type":"string"}},"required":["id","name","providerAccountId","currency","timezone"],"additionalProperties":false},"objective":{"description":"The objective as the platform names it.","type":"string"},"hierarchy":{"description":"Every entity the request creates or adds to, from the campaign down.","type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"},"name":{"type":"string"},"existing":{"description":"True when this entity already exists and is only added to.","type":"boolean"}},"required":["level","nativeType","name","existing"],"additionalProperties":false}},"creative":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"audience":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"budgets":{"type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set"]},"kind":{"type":"string","enum":["daily","lifetime"]},"amountMicros":{"type":"string"},"currency":{"type":"string"},"name":{"description":"The campaign or ad set this budget belongs to, when there are several.","type":"string"}},"required":["level","kind","amountMicros","currency"],"additionalProperties":false}},"schedule":{"type":"object","properties":{"startAt":{"type":"string"},"endAt":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone of the ad account.","nullable":true,"type":"string"}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"initialState":{"description":"The state the platform creates it in.","type":"string","enum":["paused","disabled","draft","enabled"]},"activatesDelivery":{"description":"True when this request also starts delivery, so the budget can be spent without another step.","type":"boolean"}},"required":["initialState","activatesDelivery"],"additionalProperties":false}},"required":["platform","operation","title","account","objective","hierarchy","creative","audience","budgets","schedule","delivery"],"additionalProperties":false}},"required":["id","status","platform","operation","accountId","reviewUrl","requestedAt","expiresAt","decidedAt","summary"],"additionalProperties":false},"chatConfirmation":{"description":"Present when the workspace lets the person approve in chat. Show them approval.summary and ask. Only after they agree, send the same request again with approvalId and this text as chatConfirmation. A value returned here is not permission.","type":"string"},"nextStep":{"description":"What to do with this approval before sending the request again.","type":"string"}},"required":["approvalRequired","approval","nextStep"],"additionalProperties":false}]},"meta":{"type":"null","nullable":true,"example":null}}}}}},"202":{"description":"Nothing was created. The request is waiting for the person to approve it in Maeve.","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"approvalRequired":{"type":"boolean","enum":[true]},"approval":{"type":"object","properties":{"id":{"type":"string"},"status":{"description":"pending waits for the person. approved can be used once. consumed has been used. declined and expired cannot be used.","type":"string","enum":["pending","approved","declined","expired","consumed"]},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"accountId":{"type":"string"},"reviewUrl":{"description":"The Maeve page where the person who asked reviews and decides. Opening it does not approve.","type":"string"},"requestedAt":{"type":"string"},"expiresAt":{"type":"string"},"decidedAt":{"nullable":true,"type":"string"},"declineNote":{"description":"What the person said should change when they declined. Change the request to match before asking again.","nullable":true,"type":"string"},"summary":{"nullable":true,"type":"object","properties":{"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"title":{"description":"What will be created, in plain words.","type":"string"},"account":{"type":"object","properties":{"id":{"type":"string"},"name":{"nullable":true,"type":"string"},"providerAccountId":{"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"nullable":true,"type":"string"}},"required":["id","name","providerAccountId","currency","timezone"],"additionalProperties":false},"objective":{"description":"The objective as the platform names it.","type":"string"},"hierarchy":{"description":"Every entity the request creates or adds to, from the campaign down.","type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"},"name":{"type":"string"},"existing":{"description":"True when this entity already exists and is only added to.","type":"boolean"}},"required":["level","nativeType","name","existing"],"additionalProperties":false}},"creative":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"audience":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"budgets":{"type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set"]},"kind":{"type":"string","enum":["daily","lifetime"]},"amountMicros":{"type":"string"},"currency":{"type":"string"},"name":{"description":"The campaign or ad set this budget belongs to, when there are several.","type":"string"}},"required":["level","kind","amountMicros","currency"],"additionalProperties":false}},"schedule":{"type":"object","properties":{"startAt":{"type":"string"},"endAt":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone of the ad account.","nullable":true,"type":"string"}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"initialState":{"description":"The state the platform creates it in.","type":"string","enum":["paused","disabled","draft","enabled"]},"activatesDelivery":{"description":"True when this request also starts delivery, so the budget can be spent without another step.","type":"boolean"}},"required":["initialState","activatesDelivery"],"additionalProperties":false}},"required":["platform","operation","title","account","objective","hierarchy","creative","audience","budgets","schedule","delivery"],"additionalProperties":false}},"required":["id","status","platform","operation","accountId","reviewUrl","requestedAt","expiresAt","decidedAt","summary"],"additionalProperties":false},"chatConfirmation":{"description":"Present when the workspace lets the person approve in chat. Show them approval.summary and ask. Only after they agree, send the same request again with approvalId and this text as chatConfirmation. A value returned here is not permission.","type":"string"},"nextStep":{"description":"What to do with this approval before sending the request again.","type":"string"}},"required":["approvalRequired","approval","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Create a paused Meta boost after approval","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/boosts/{boostId}":{"get":{"description":"Read one Meta boost: its state, the last confirmed step, the Meta IDs it created, the actions it allows and a safe error. Read-only.","operationId":"PublicAdsController_getMetaBoost_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"boostId","required":true,"in":"path","description":"Meta boost UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read a Meta boost","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"boost":{"type":"object","properties":{"provider":{"type":"string","enum":["meta"]},"accountId":{"nullable":true,"type":"string"},"boostId":{"type":"string"},"sourceContentId":{"description":"The boosted post, a content ID.","type":"string"},"state":{"description":"failed means the boost stopped with an error. deleted means it was cleaned up: Maeve deleted what it created on Meta, or it created nothing.","type":"string","enum":["creating","paused","active","paused_by_user","failed","deleted","ambiguous","manual_reconciliation_required"]},"checkpoint":{"type":"string","enum":["attempt_saved","campaign_saved","adset_saved","creative_saved","ad_saved","paused_ready"]},"localCampaignId":{"description":"Meta campaign ID once created.","nullable":true,"type":"string"},"localAdSetId":{"description":"Meta ad set ID once created.","nullable":true,"type":"string"},"localCreativeId":{"description":"Meta creative ID once created.","nullable":true,"type":"string"},"localAdId":{"description":"Meta ad ID once created.","nullable":true,"type":"string"},"allowedActions":{"type":"array","items":{"type":"string","enum":["activate_boost","pause_boost","resume_boost"]}},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"error":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"retryable":{"type":"boolean"}},"required":["code","message","retryable"],"additionalProperties":false}},"required":["provider","accountId","boostId","sourceContentId","state","checkpoint","localCampaignId","localAdSetId","localCreativeId","localAdId","allowedActions","createdAt","updatedAt","error"],"additionalProperties":false},"nextStep":{"description":"What to do next, in plain words.","type":"string"}},"required":["account","boost","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read a Meta boost","tags":["Ads"]},"delete":{"description":"Delete from Meta exactly the campaign this one boost created, with its ad set and ad, and end the boost. Nothing else on the account and no post is touched. A delivering boost is refused: pause it with ads.meta.boosts.pause first. Requires the exact confirmation text and is never auto-confirmed.","operationId":"PublicAdsController_cleanUpMetaBoost_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"boostId","required":true,"in":"path","description":"Meta boost UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Delete exactly what one Meta boost created","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"boostId":{"type":"string"},"cleanedUp":{"type":"boolean","enum":[true]},"confirmationMode":{"type":"string","enum":["explicit_confirmation","dangerous_auto_confirm"]}},"required":["account","boostId","cleanedUp"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Delete exactly what one Meta boost created","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/boosts/{boostId}/reconcile":{"post":{"description":"Resolve an uncertain write in one Meta boost: Maeve looks on Meta for the exact campaign, ad set, creative or ad it may have created and adopts it, then continues, so nothing is created twice. It needs no new approval.","operationId":"PublicAdsController_reconcileMetaBoost_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"boostId","required":true,"in":"path","description":"Meta boost UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Reconcile an uncertain Meta boost write","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"boost":{"type":"object","properties":{"provider":{"type":"string","enum":["meta"]},"accountId":{"nullable":true,"type":"string"},"boostId":{"type":"string"},"sourceContentId":{"description":"The boosted post, a content ID.","type":"string"},"state":{"description":"failed means the boost stopped with an error. deleted means it was cleaned up: Maeve deleted what it created on Meta, or it created nothing.","type":"string","enum":["creating","paused","active","paused_by_user","failed","deleted","ambiguous","manual_reconciliation_required"]},"checkpoint":{"type":"string","enum":["attempt_saved","campaign_saved","adset_saved","creative_saved","ad_saved","paused_ready"]},"localCampaignId":{"description":"Meta campaign ID once created.","nullable":true,"type":"string"},"localAdSetId":{"description":"Meta ad set ID once created.","nullable":true,"type":"string"},"localCreativeId":{"description":"Meta creative ID once created.","nullable":true,"type":"string"},"localAdId":{"description":"Meta ad ID once created.","nullable":true,"type":"string"},"allowedActions":{"type":"array","items":{"type":"string","enum":["activate_boost","pause_boost","resume_boost"]}},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"error":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"retryable":{"type":"boolean"}},"required":["code","message","retryable"],"additionalProperties":false}},"required":["provider","accountId","boostId","sourceContentId","state","checkpoint","localCampaignId","localAdSetId","localCreativeId","localAdId","allowedActions","createdAt","updatedAt","error"],"additionalProperties":false},"nextStep":{"description":"What to do next, in plain words.","type":"string"}},"required":["account","boost","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Reconcile an uncertain Meta boost write","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/boosts/{boostId}/activate":{"post":{"description":"Start delivery of one Meta boost that is paused and ready. Delivery spends the boost budget. It needs the exact confirmation text and no further approval. If Meta does not confirm every part, Maeve pauses them all again.","operationId":"PublicAdsController_activateMetaBoost_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"boostId","required":true,"in":"path","description":"Meta boost UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Start delivery of a paused Meta boost","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"activation":{"type":"object","properties":{"provider":{"type":"string","enum":["meta"]},"accountId":{"nullable":true,"type":"string"},"boostId":{"type":"string"},"state":{"type":"string","enum":["active","ambiguous","activation_failed"]},"allowedActions":{"type":"array","items":{"type":"string","enum":["activate_boost","pause_boost"]}},"activatedAt":{"nullable":true,"type":"string"},"error":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"retryable":{"type":"boolean"}},"required":["code","message","retryable"],"additionalProperties":false}},"required":["provider","accountId","boostId","state","allowedActions","activatedAt","error"],"additionalProperties":false},"nextStep":{"description":"What to do next, in plain words.","type":"string"}},"required":["account","activation","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Start delivery of a paused Meta boost","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/boosts/{boostId}/pause":{"post":{"description":"Pause delivery of one active Meta boost. No confirmation, the same as the dashboard.","operationId":"PublicAdsController_pauseMetaBoost_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"boostId","required":true,"in":"path","description":"Meta boost UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Pause a Meta boost","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"boost":{"type":"object","properties":{"provider":{"type":"string","enum":["meta"]},"accountId":{"nullable":true,"type":"string"},"boostId":{"type":"string"},"sourceContentId":{"description":"The boosted post, a content ID.","type":"string"},"state":{"description":"failed means the boost stopped with an error. deleted means it was cleaned up: Maeve deleted what it created on Meta, or it created nothing.","type":"string","enum":["creating","paused","active","paused_by_user","failed","deleted","ambiguous","manual_reconciliation_required"]},"checkpoint":{"type":"string","enum":["attempt_saved","campaign_saved","adset_saved","creative_saved","ad_saved","paused_ready"]},"localCampaignId":{"description":"Meta campaign ID once created.","nullable":true,"type":"string"},"localAdSetId":{"description":"Meta ad set ID once created.","nullable":true,"type":"string"},"localCreativeId":{"description":"Meta creative ID once created.","nullable":true,"type":"string"},"localAdId":{"description":"Meta ad ID once created.","nullable":true,"type":"string"},"allowedActions":{"type":"array","items":{"type":"string","enum":["activate_boost","pause_boost","resume_boost"]}},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"error":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"retryable":{"type":"boolean"}},"required":["code","message","retryable"],"additionalProperties":false}},"required":["provider","accountId","boostId","sourceContentId","state","checkpoint","localCampaignId","localAdSetId","localCreativeId","localAdId","allowedActions","createdAt","updatedAt","error"],"additionalProperties":false},"nextStep":{"description":"What to do next, in plain words.","type":"string"}},"required":["account","boost","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Pause a Meta boost","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/boosts/{boostId}/resume":{"post":{"description":"Resume delivery of one Meta boost that someone paused. Delivery spends the remaining budget, so it needs the exact confirmation text.","operationId":"PublicAdsController_resumeMetaBoost_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"boostId","required":true,"in":"path","description":"Meta boost UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Resume a Meta boost","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"boost":{"type":"object","properties":{"provider":{"type":"string","enum":["meta"]},"accountId":{"nullable":true,"type":"string"},"boostId":{"type":"string"},"sourceContentId":{"description":"The boosted post, a content ID.","type":"string"},"state":{"description":"failed means the boost stopped with an error. deleted means it was cleaned up: Maeve deleted what it created on Meta, or it created nothing.","type":"string","enum":["creating","paused","active","paused_by_user","failed","deleted","ambiguous","manual_reconciliation_required"]},"checkpoint":{"type":"string","enum":["attempt_saved","campaign_saved","adset_saved","creative_saved","ad_saved","paused_ready"]},"localCampaignId":{"description":"Meta campaign ID once created.","nullable":true,"type":"string"},"localAdSetId":{"description":"Meta ad set ID once created.","nullable":true,"type":"string"},"localCreativeId":{"description":"Meta creative ID once created.","nullable":true,"type":"string"},"localAdId":{"description":"Meta ad ID once created.","nullable":true,"type":"string"},"allowedActions":{"type":"array","items":{"type":"string","enum":["activate_boost","pause_boost","resume_boost"]}},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"error":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"retryable":{"type":"boolean"}},"required":["code","message","retryable"],"additionalProperties":false}},"required":["provider","accountId","boostId","sourceContentId","state","checkpoint","localCampaignId","localAdSetId","localCreativeId","localAdId","allowedActions","createdAt","updatedAt","error"],"additionalProperties":false},"nextStep":{"description":"What to do next, in plain words.","type":"string"}},"required":["account","boost","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Resume a Meta boost","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/drafts":{"get":{"description":"List the Meta campaign drafts saved in Maeve for one ad account, most recently changed first, one page at a time: name, status, revision, objective and how many ad sets and ads each has. Read one with ads.meta.drafts.get for its specification. Drafts are local to Maeve. Read-only.","operationId":"PublicAdsController_listMetaDrafts_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List Meta campaign drafts","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"drafts":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"status":{"type":"string","enum":["draft","publishing","published"]},"currentStep":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"schemaVersion":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"revision":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"objective":{"nullable":true,"type":"string"},"adSetCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"adCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"publishedAt":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","name","status","currentStep","schemaVersion","revision","objective","adSetCount","adCount","publishedAt","createdAt","updatedAt"],"additionalProperties":false}},"page":{"type":"object","properties":{"limit":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"offset":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"total":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"hasMore":{"type":"boolean"}},"required":["limit","offset","total","hasMore"],"additionalProperties":false}},"required":["account","drafts","page"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List Meta campaign drafts","tags":["Ads"]},"post":{"description":"Create an empty Meta campaign draft in Maeve for one ad account, with one empty ad set. It creates nothing on Meta and spends nothing. Fill it in with ads.meta.drafts.save, or in the Maeve composer where a client has no save tool. The composer lists the 50 most recent drafts. Each call creates another draft, so read ads.meta.drafts.list before repeating one whose result you did not see.","operationId":"PublicAdsController_createMetaDraft_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"description":"Campaign name. It can be set later.","type":"string","minLength":1,"maxLength":255}},"additionalProperties":false}}}},"responses":{"200":{"description":"Create an empty Meta campaign draft","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"draft":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"status":{"description":"Only a draft can be saved or published.","type":"string","enum":["draft","publishing","published"]},"currentStep":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"schemaVersion":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"revision":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"specification":{"description":"The whole specification, upgraded to the current schema version. It has the shape ads.meta.drafts.save takes; edit it and save it back whole.","type":"object","additionalProperties":{}},"publishedAt":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","name","status","currentStep","schemaVersion","revision","specification","publishedAt","createdAt","updatedAt"],"additionalProperties":false}},"required":["account","money","draft"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Create an empty Meta campaign draft","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/drafts/{draftId}":{"get":{"description":"Read one Meta campaign draft: its revision, status and whole specification, upgraded to the current schema version, and the ID of its latest publication. Save changes with ads.meta.drafts.save, sending this revision and the whole specification. After a lost publish response, latestPublicationId leads to the publication. Read-only.","operationId":"PublicAdsController_getMetaDraft_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"draftId","required":true,"in":"path","description":"Meta campaign draft UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read a Meta campaign draft","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"draft":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"status":{"description":"Only a draft can be saved or published.","type":"string","enum":["draft","publishing","published"]},"currentStep":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"schemaVersion":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"revision":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"specification":{"description":"The whole specification, upgraded to the current schema version. It has the shape ads.meta.drafts.save takes; edit it and save it back whole.","type":"object","additionalProperties":{}},"publishedAt":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","name","status","currentStep","schemaVersion","revision","specification","publishedAt","createdAt","updatedAt"],"additionalProperties":false},"latestPublicationId":{"description":"The newest publication of this draft, if any.","nullable":true,"type":"string"}},"required":["account","money","draft","latestPublicationId"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read a Meta campaign draft","tags":["Ads"]},"delete":{"description":"Delete a Meta campaign draft from Maeve. A draft that is publishing or published is refused; once ads.meta.publications.cleanup removes its campaign, the draft is editable again and can be deleted. It deletes nothing on Meta.","operationId":"PublicAdsController_deleteMetaDraft_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"draftId","required":true,"in":"path","description":"Meta campaign draft UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Delete a Meta campaign draft","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"draftId":{"type":"string"},"deleted":{"type":"boolean","enum":[true]}},"required":["account","draftId","deleted"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Delete a Meta campaign draft","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/drafts/{draftId}/save":{"post":{"description":"Save a Meta campaign draft in Maeve: its name, the step reached, and its whole specification, which replaces the saved one. A specification with a campaign needs the name in the same save. Send the revision from your latest read; a stale revision is refused with the current one, so read again and reapply your change. An incomplete draft saves as it is; a save that sends a specification and moves to a later step checks Pages, forms, targeting and budgets with Meta, while a save without a specification checks nothing. It creates nothing on Meta.","operationId":"PublicAdsController_saveMetaDraft_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"draftId","required":true,"in":"path","description":"Meta campaign draft UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"expectedRevision":{"description":"The revision from the latest read or save. A stale revision is refused with the current one.","type":"integer","minimum":1,"maximum":9007199254740991},"name":{"description":"Campaign name. Send it with every save whose specification has a campaign.","type":"string","minLength":1,"maxLength":255},"currentStep":{"description":"The composer step reached, 1 to 4: goal, audience and budget, ads, review. Moving to a later step checks the selections with Meta; step 4 needs complete ads.","type":"integer","minimum":1,"maximum":4},"specification":{"description":"The whole specification. It replaces the saved one; there is no partial update. Start from ads.meta.drafts.get.","type":"object","properties":{"schemaVersion":{"anyOf":[{"type":"number","enum":[11]},{"type":"number","enum":[12]},{"type":"number","enum":[13]}]},"createPaused":{"description":"Keep the campaign, ad sets and ads paused after creation. Saved and included in approval. Omitted or false retains automatic activation.","type":"boolean"},"campaign":{"description":"Null until the goal is chosen.","nullable":true,"type":"object","properties":{"pageId":{"description":"Facebook Page ID from pages in ads.meta.creation_config.get.","type":"string","minLength":1},"instagramIdentityId":{"description":"Instagram account ID from instagramIdentities in the creation configuration, or null.","nullable":true,"type":"string","minLength":1},"catalog":{"description":"Catalog, product set and connected event source from ads.meta.catalogs.list. Catalog Sales optimizes website purchases.","type":"object","properties":{"catalogId":{"type":"string","pattern":"^\\d+$"},"productSetId":{"type":"string","pattern":"^\\d+$"},"pixelId":{"type":"string","pattern":"^\\d+$"}},"required":["catalogId","productSetId","pixelId"],"additionalProperties":false},"app":{"type":"object","properties":{"appId":{"description":"App ID from ads.meta.apps.list for this ad account.","type":"string","pattern":"^\\d+$"},"storeUrl":{"description":"Exact mobile store URL returned by app discovery.","type":"string","format":"uri"},"platform":{"type":"string","enum":["ios","android"]},"attribution":{"description":"iOS uses skadnetwork; Android uses default. Measurement and platform eligibility are checked separately.","type":"string","enum":["skadnetwork","default"]}},"required":["appId","storeUrl","platform","attribution"],"additionalProperties":false},"objective":{"type":"string","enum":["awareness","traffic","engagement","leads","sales","app_promotion","catalog_sales"]},"destination":{"type":"string","enum":["app","website","on_ad","instant_form","messenger","instagram_profile","facebook_page","facebook_event"]},"optimization":{"type":"string","enum":["app_installs","landing_page_views","link_clicks","daily_unique_reach","ad_recall_lift","post_engagement","offsite_conversions","lead_generation","conversations","thruplay","two_second_video_views","profile_visits","page_likes","event_responses"]},"billingEvent":{"type":"string","enum":["impressions"]},"specialAdCategory":{"type":"string","enum":["none","credit","employment","financial_products_services","housing","issues_elections_politics","online_gambling_and_gaming"]},"conversion":{"description":"Website conversions only: sales use purchase, engagement uses content_view and leads use lead, or a custom conversion.","anyOf":[{"type":"object","properties":{"source":{"type":"string","enum":["standard_event"]},"pixelId":{"type":"string","minLength":1},"event":{"type":"string","enum":["purchase","content_view","lead"]}},"required":["source","pixelId","event"],"additionalProperties":false},{"type":"object","properties":{"source":{"type":"string","enum":["custom_conversion"]},"pixelId":{"type":"string","minLength":1},"customConversionId":{"type":"string","minLength":1}},"required":["source","pixelId","customConversionId"],"additionalProperties":false}]},"leadFormId":{"description":"Leads to an instant form only: a form from ads.meta.lead_forms.list.","type":"string","minLength":1},"instagramUsername":{"description":"Instagram profile visits only: the profile the ad opens.","type":"string","minLength":1},"eventId":{"description":"Event responses only: an event from ads.meta.events.list.","type":"string","minLength":1}},"required":["pageId","instagramIdentityId","objective","destination","optimization","billingEvent","specialAdCategory"],"additionalProperties":false},"budgetOwner":{"description":"campaign uses campaignBudget and no ad set budgets; ad_set gives every ad set its own budget.","type":"string","enum":["campaign","ad_set"]},"campaignBudget":{"nullable":true,"type":"object","properties":{"kind":{"type":"string","enum":["daily","lifetime"]},"amountMicros":{"description":"Whole micros of the account currency as a decimal string: 1000000 is one currency unit.","type":"string","pattern":"^\\d{1,18}$"}},"required":["kind","amountMicros"],"additionalProperties":false},"adSets":{"minItems":1,"maxItems":50,"type":"array","items":{"type":"object","properties":{"adSetKey":{"description":"Stable key you choose for this ad set. Ads name it in adSetKey.","type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"},"name":{"type":"string","maxLength":255},"audience":{"nullable":true,"anyOf":[{"type":"object","properties":{"source":{"type":"string","enum":["built"]},"includedLocations":{"type":"array","items":{"type":"object","properties":{"id":{"description":"ID from ads.meta.targeting.search.","type":"string","minLength":1},"name":{"type":"string","minLength":1},"targetingType":{"description":"Required for demographics: the result's targetingType from ads.meta.targeting.search. Meta accepts one ID under several demographic fields.","type":"string","enum":["college_years","education_majors","education_schools","education_statuses","family_statuses","household_composition","income","industries","interested_in","life_events","moms","office_type","political_views","politics","relationship_statuses","work_employers","work_positions"]},"locationType":{"type":"string","enum":["country","region","city","postal_code"]},"countryCode":{"nullable":true,"type":"string"},"countryName":{"nullable":true,"type":"string"},"regionName":{"nullable":true,"type":"string"},"primaryCity":{"nullable":true,"type":"string"},"geoHierarchyName":{"nullable":true,"type":"string"}},"required":["id","name"],"additionalProperties":false}},"excludedLocations":{"type":"array","items":{"type":"object","properties":{"id":{"description":"ID from ads.meta.targeting.search.","type":"string","minLength":1},"name":{"type":"string","minLength":1},"targetingType":{"description":"Required for demographics: the result's targetingType from ads.meta.targeting.search. Meta accepts one ID under several demographic fields.","type":"string","enum":["college_years","education_majors","education_schools","education_statuses","family_statuses","household_composition","income","industries","interested_in","life_events","moms","office_type","political_views","politics","relationship_statuses","work_employers","work_positions"]},"locationType":{"type":"string","enum":["country","region","city","postal_code"]},"countryCode":{"nullable":true,"type":"string"},"countryName":{"nullable":true,"type":"string"},"regionName":{"nullable":true,"type":"string"},"primaryCity":{"nullable":true,"type":"string"},"geoHierarchyName":{"nullable":true,"type":"string"}},"required":["id","name"],"additionalProperties":false}},"ageMin":{"description":"Hard minimum age. 18 to 25 with Advantage+ audience; otherwise 18 to 65.","nullable":true,"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"ageMax":{"description":"18 to 65. 65 means 65 and over.","nullable":true,"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"ageRangeMin":{"description":"Advantage+ suggested range start, independent of ageMin. Must be between ageMin and ageMax. Older drafts default to ageMin.","type":"integer","minimum":18,"maximum":65},"gender":{"type":"string","enum":["all","female","male"]},"demographics":{"type":"array","items":{"type":"object","properties":{"id":{"description":"ID from ads.meta.targeting.search.","type":"string","minLength":1},"name":{"type":"string","minLength":1},"targetingType":{"description":"Required for demographics: the result's targetingType from ads.meta.targeting.search. Meta accepts one ID under several demographic fields.","type":"string","enum":["college_years","education_majors","education_schools","education_statuses","family_statuses","household_composition","income","industries","interested_in","life_events","moms","office_type","political_views","politics","relationship_statuses","work_employers","work_positions"]},"locationType":{"type":"string","enum":["country","region","city","postal_code"]},"countryCode":{"nullable":true,"type":"string"},"countryName":{"nullable":true,"type":"string"},"regionName":{"nullable":true,"type":"string"},"primaryCity":{"nullable":true,"type":"string"},"geoHierarchyName":{"nullable":true,"type":"string"}},"required":["id","name"],"additionalProperties":false}},"interests":{"type":"array","items":{"type":"object","properties":{"id":{"description":"ID from ads.meta.targeting.search.","type":"string","minLength":1},"name":{"type":"string","minLength":1},"targetingType":{"description":"Required for demographics: the result's targetingType from ads.meta.targeting.search. Meta accepts one ID under several demographic fields.","type":"string","enum":["college_years","education_majors","education_schools","education_statuses","family_statuses","household_composition","income","industries","interested_in","life_events","moms","office_type","political_views","politics","relationship_statuses","work_employers","work_positions"]},"locationType":{"type":"string","enum":["country","region","city","postal_code"]},"countryCode":{"nullable":true,"type":"string"},"countryName":{"nullable":true,"type":"string"},"regionName":{"nullable":true,"type":"string"},"primaryCity":{"nullable":true,"type":"string"},"geoHierarchyName":{"nullable":true,"type":"string"}},"required":["id","name"],"additionalProperties":false}},"behaviors":{"type":"array","items":{"type":"object","properties":{"id":{"description":"ID from ads.meta.targeting.search.","type":"string","minLength":1},"name":{"type":"string","minLength":1},"targetingType":{"description":"Required for demographics: the result's targetingType from ads.meta.targeting.search. Meta accepts one ID under several demographic fields.","type":"string","enum":["college_years","education_majors","education_schools","education_statuses","family_statuses","household_composition","income","industries","interested_in","life_events","moms","office_type","political_views","politics","relationship_statuses","work_employers","work_positions"]},"locationType":{"type":"string","enum":["country","region","city","postal_code"]},"countryCode":{"nullable":true,"type":"string"},"countryName":{"nullable":true,"type":"string"},"regionName":{"nullable":true,"type":"string"},"primaryCity":{"nullable":true,"type":"string"},"geoHierarchyName":{"nullable":true,"type":"string"}},"required":["id","name"],"additionalProperties":false}},"includedCustomAudienceIds":{"description":"IDs from ads.meta.audiences.list.","type":"array","items":{"type":"string","minLength":1}},"excludedCustomAudienceIds":{"type":"array","items":{"type":"string","minLength":1}},"advantageAudience":{"type":"string","enum":["disabled","enabled"]}},"required":["source","includedLocations","excludedLocations","ageMin","ageMax","gender","demographics","interests","behaviors","includedCustomAudienceIds","excludedCustomAudienceIds","advantageAudience"],"additionalProperties":false},{"type":"object","properties":{"source":{"type":"string","enum":["existing"]},"audienceType":{"type":"string","enum":["saved","custom"]},"audienceId":{"description":"ID from ads.meta.audiences.list.","type":"string","minLength":1}},"required":["source","audienceType","audienceId"],"additionalProperties":false}]},"placements":{"anyOf":[{"type":"object","properties":{"mode":{"type":"string","enum":["automatic"]}},"required":["mode"],"additionalProperties":false},{"type":"object","properties":{"mode":{"type":"string","enum":["manual"]},"devices":{"minItems":1,"type":"array","items":{"type":"string","enum":["mobile","desktop"]}},"values":{"type":"array","items":{"type":"string","enum":["facebook_feed","instagram_feed","facebook_marketplace","facebook_video_feeds","facebook_right_column","instagram_explore","messenger_inbox","instagram_stories","facebook_stories","messenger_stories","facebook_in_stream_video","facebook_search_results","audience_network_classic","audience_network_rewarded_video","audience_network_in_stream_video","facebook_reels","instagram_reels","threads_feed"]}}},"required":["mode","devices","values"],"additionalProperties":false}]},"budget":{"description":"Set only when budgetOwner is ad_set.","nullable":true,"type":"object","properties":{"kind":{"type":"string","enum":["daily","lifetime"]},"amountMicros":{"description":"Whole micros of the account currency as a decimal string: 1000000 is one currency unit.","type":"string","pattern":"^\\d{1,18}$"}},"required":["kind","amountMicros"],"additionalProperties":false},"schedule":{"description":"Required before publishing: startAt. A lifetime budget also needs endAt.","type":"object","properties":{"startAt":{"nullable":true,"type":"string"},"endAt":{"nullable":true,"type":"string"}},"required":["startAt","endAt"],"additionalProperties":false},"dsa":{"description":"Required when the audience includes the European Union.","type":"object","properties":{"beneficiary":{"nullable":true,"type":"string"},"payor":{"nullable":true,"type":"string"}},"required":["beneficiary","payor"],"additionalProperties":false},"delivery":{"type":"object","properties":{"bidStrategy":{"type":"string","enum":["lowest_cost","cost_cap","bid_cap","minimum_roas"]},"bidAmountMicros":{"nullable":true,"description":"Whole micros of the account currency as a decimal string: 1000000 is one currency unit.","type":"string","pattern":"^\\d{1,18}$"},"minimumRoasMicros":{"nullable":true,"description":"Whole micros of the account currency as a decimal string: 1000000 is one currency unit.","type":"string","pattern":"^\\d{1,18}$"},"attribution":{"type":"string","enum":["account_default","1d_click","1d_click_1d_view","7d_click","7d_click_1d_view"]},"frequencyControl":{"nullable":true,"type":"object","properties":{"event":{"type":"string","enum":["impressions"]},"intervalDays":{"type":"integer","minimum":1,"maximum":90},"maxFrequency":{"type":"integer","minimum":1,"maximum":90}},"required":["event","intervalDays","maxFrequency"],"additionalProperties":false}},"required":["bidStrategy","bidAmountMicros","minimumRoasMicros","attribution","frequencyControl"],"additionalProperties":false}},"required":["adSetKey","name","audience","placements","budget","schedule","dsa","delivery"],"additionalProperties":false}},"ads":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"adKey":{"description":"Stable key you choose for this ad.","type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"},"adSetKey":{"description":"The adSetKey of the ad set this ad belongs to.","type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"},"name":{"type":"string","maxLength":255},"primaryText":{"type":"string","maxLength":2200},"headline":{"description":"Empty for Messenger and Page likes ads.","type":"string","maxLength":255},"destinationUrl":{"description":"An https URL for website ads. Empty for Messenger, Page likes, profile visits and event responses.","type":"string","maxLength":2048},"cta":{"type":"string","enum":["install_mobile_app","none","learn_more","apply_now","book_now","contact_us","download","get_offer","get_quote","get_showtimes","listen_now","request_time","see_menu","shop_now","sign_up","subscribe","watch_more","like_page","view_instagram_profile","event_rsvp"]},"creative":{"description":"The format must be one the goal allows: video views need single_video, Page likes and profile visits a single image or video, event responses a single image.","anyOf":[{"type":"object","properties":{"format":{"type":"string","enum":["catalog_template"]},"description":{"type":"string","maxLength":255}},"required":["format","description"],"additionalProperties":false},{"type":"object","properties":{"format":{"type":"string","enum":["single_image"]},"media":{"nullable":true,"description":"A Media Room asset. Upload it with ads.meta.media.upload and wait for ready before publishing.","type":"object","properties":{"mediaId":{"description":"Media Room asset ID, from media.list, media.get or media.complete_upload.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false},"placementAssets":{"maxItems":2,"type":"array","items":{"type":"object","properties":{"assetKey":{"description":"Stable key for this placement image.","type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"},"placementGroup":{"type":"string","enum":["feed","stories_reels"]},"media":{"nullable":true,"description":"A Media Room asset. Upload it with ads.meta.media.upload and wait for ready before publishing.","type":"object","properties":{"mediaId":{"description":"Media Room asset ID, from media.list, media.get or media.complete_upload.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["assetKey","placementGroup","media"],"additionalProperties":false}}},"required":["format","media","placementAssets"],"additionalProperties":false},{"type":"object","properties":{"format":{"type":"string","enum":["single_video"]},"media":{"nullable":true,"description":"A Media Room asset. Upload it with ads.meta.media.upload and wait for ready before publishing.","type":"object","properties":{"mediaId":{"description":"Media Room asset ID, from media.list, media.get or media.complete_upload.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["format","media"],"additionalProperties":false},{"type":"object","properties":{"format":{"type":"string","enum":["carousel"]},"cards":{"description":"2 to 10 cards before publishing.","maxItems":10,"type":"array","items":{"type":"object","properties":{"cardKey":{"description":"Stable key for this card.","type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"},"media":{"nullable":true,"description":"A Media Room asset. Upload it with ads.meta.media.upload and wait for ready before publishing.","type":"object","properties":{"mediaId":{"description":"Media Room asset ID, from media.list, media.get or media.complete_upload.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false},"destinationUrl":{"type":"string","maxLength":2048},"headline":{"type":"string","maxLength":255}},"required":["cardKey","media","destinationUrl","headline"],"additionalProperties":false}}},"required":["format","cards"],"additionalProperties":false},{"type":"object","properties":{"format":{"type":"string","enum":["flexible_asset_feed"]},"assets":{"maxItems":10,"type":"array","items":{"description":"A Media Room asset. Upload it with ads.meta.media.upload and wait for ready before publishing.","type":"object","properties":{"mediaId":{"description":"Media Room asset ID, from media.list, media.get or media.complete_upload.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"additionalPrimaryTexts":{"maxItems":4,"type":"array","items":{"type":"string"}},"additionalHeadlines":{"maxItems":4,"type":"array","items":{"type":"string"}},"descriptions":{"maxItems":5,"type":"array","items":{"type":"string"}},"additionalDestinationUrls":{"description":"Keep empty when publishing. Flexible ads currently support one destination URL.","maxItems":4,"type":"array","items":{"type":"string"}},"adFormats":{"type":"array","items":{"anyOf":[{"type":"string","enum":["single_image"]}]},"minItems":1,"maxItems":1}},"required":["format","assets","additionalPrimaryTexts","additionalHeadlines","descriptions","additionalDestinationUrls","adFormats"],"additionalProperties":false}]},"welcomeMessage":{"description":"Messenger ads only; null otherwise.","nullable":true,"type":"string","maxLength":300},"urlTags":{"description":"URL parameters such as utm_source=meta, without ? or #. Empty when unused.","type":"string","maxLength":2048,"pattern":"^[^\\s?#]*$"},"multiAdvertiserAds":{"type":"string","enum":["disabled","enabled"]},"adaptToPlacement":{"type":"string","enum":["disabled","enabled"]}},"required":["adKey","adSetKey","name","primaryText","headline","destinationUrl","cta","creative","welcomeMessage","urlTags","multiAdvertiserAds","adaptToPlacement"],"additionalProperties":false}}},"required":["schemaVersion","campaign","budgetOwner","campaignBudget","adSets","ads"],"additionalProperties":false}},"required":["expectedRevision"],"additionalProperties":false}}}},"responses":{"200":{"description":"Save a Meta campaign draft","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"draft":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"status":{"description":"Only a draft can be saved or published.","type":"string","enum":["draft","publishing","published"]},"currentStep":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"schemaVersion":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"revision":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"specification":{"description":"The whole specification, upgraded to the current schema version. It has the shape ads.meta.drafts.save takes; edit it and save it back whole.","type":"object","additionalProperties":{}},"publishedAt":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","name","status","currentStep","schemaVersion","revision","specification","publishedAt","createdAt","updatedAt"],"additionalProperties":false}},"required":["account","money","draft"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Save a Meta campaign draft","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/drafts/{draftId}/duplicate":{"post":{"description":"Copy a Meta campaign draft into a new local draft named with \" copy\", with new ad set and ad keys. It copies nothing on Meta. Each call creates another draft, so list the drafts before repeating one whose result you did not see.","operationId":"PublicAdsController_duplicateMetaDraft_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"draftId","required":true,"in":"path","description":"Meta campaign draft UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Copy a Meta campaign draft","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"draft":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"status":{"description":"Only a draft can be saved or published.","type":"string","enum":["draft","publishing","published"]},"currentStep":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"schemaVersion":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"revision":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"specification":{"description":"The whole specification, upgraded to the current schema version. It has the shape ads.meta.drafts.save takes; edit it and save it back whole.","type":"object","additionalProperties":{}},"publishedAt":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","name","status","currentStep","schemaVersion","revision","specification","publishedAt","createdAt","updatedAt"],"additionalProperties":false}},"required":["account","money","draft"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Copy a Meta campaign draft","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/drafts/{draftId}/publish":{"post":{"description":"Create the campaign, ad sets and ads a saved Meta draft describes. The first request creates nothing: it returns approvalRequired with an approval and its reviewUrl. Give the reviewUrl to the person; only their approval there, signed in to Maeve, lets the same request continue. Opening the page approves nothing. Then send the same request again, with the same idempotencyKey, plus approvalId. A repeat of a key that already created returns what it created without asking again. Before asking, Maeve checks the draft, the account, the Page, forms, targeting and that every media item has been uploaded and is ready. A changed draft revision, setting or media needs a new approval. Every ad set must start in the future and end after it starts; a lifetime budget needs an end, and a daily budget with an end needs more than 24 hours. Maeve checks again when the approved request returns, so the start must still be in the future then. Once created, Meta starts delivery when the ads are eligible, so the budget can be spent, unless the specification sets createPaused, which leaves everything paused. Follow progress with ads.meta.publications.get.","operationId":"PublicAdsController_publishMetaDraft_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"draftId","required":true,"in":"path","description":"Meta campaign draft UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"expectedRevision":{"description":"The revision from the latest read or save. A stale revision is refused with the current one.","type":"integer","minimum":1,"maximum":9007199254740991},"idempotencyKey":{"description":"A key you choose once for this creation and send unchanged on every repeat, including after the approval. The same key never creates twice.","type":"string","minLength":1,"maxLength":128},"approvalId":{"description":"The approval from the first response, sent after the person has approved it in Maeve.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"chatConfirmation":{"description":"Only when the workspace lets people approve paid ad creation in chat: the chatConfirmation text from the approval response, sent with its approvalId after the person agreed in this chat. Never send it before they agree.","type":"string","maxLength":100}},"required":["expectedRevision","idempotencyKey"],"additionalProperties":false}}}},"responses":{"200":{"description":"Publish a Meta campaign draft after approval","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"anyOf":[{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"publication":{"type":"object","properties":{"id":{"type":"string"},"draftId":{"type":"string"},"accountId":{"type":"string"},"frozenRevision":{"description":"The draft revision this publication froze.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"state":{"type":"string","enum":["pending","queued","processing","retryable","reconciliation_required","failed","completed","cancelled"]},"checkpoint":{"description":"The last step Maeve confirmed.","type":"string"},"retryClassification":{"type":"string","enum":["none","transient","ambiguous","permanent"]},"retryCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"safeError":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false},"progress":{"type":"object","properties":{"completedAdSets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"totalAdSets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"completedAds":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"totalAds":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["completedAdSets","totalAdSets","completedAds","totalAds"],"additionalProperties":false},"adSets":{"type":"array","items":{"type":"object","properties":{"adSetKey":{"type":"string"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"state":{"type":"string"},"checkpoint":{"type":"string"},"progress":{"type":"object","properties":{"completedAds":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"totalAds":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["completedAds","totalAds"],"additionalProperties":false},"safeError":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false}},"required":["adSetKey","position","state","checkpoint","progress","safeError"],"additionalProperties":false}},"ads":{"type":"array","items":{"type":"object","properties":{"adKey":{"type":"string"},"adSetKey":{"type":"string"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"state":{"type":"string"},"checkpoint":{"type":"string"},"safeError":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false}},"required":["adKey","adSetKey","position","state","checkpoint","safeError"],"additionalProperties":false}},"campaignId":{"description":"The Meta campaign ID, set once the publication has completed.","nullable":true,"type":"string"},"canRetry":{"type":"boolean"},"canReconcile":{"type":"boolean"},"canCleanup":{"type":"boolean"},"activatedAt":{"nullable":true,"type":"string"},"completedAt":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","draftId","accountId","frozenRevision","state","checkpoint","retryClassification","retryCount","safeError","progress","adSets","ads","campaignId","canRetry","canReconcile","canCleanup","activatedAt","completedAt","createdAt","updatedAt"],"additionalProperties":false},"nextStep":{"description":"What to do next, in plain words.","type":"string"},"approvalRequired":{"type":"boolean","enum":[false]}},"required":["account","publication","nextStep","approvalRequired"],"additionalProperties":false},{"type":"object","properties":{"approvalRequired":{"type":"boolean","enum":[true]},"approval":{"type":"object","properties":{"id":{"type":"string"},"status":{"description":"pending waits for the person. approved can be used once. consumed has been used. declined and expired cannot be used.","type":"string","enum":["pending","approved","declined","expired","consumed"]},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"accountId":{"type":"string"},"reviewUrl":{"description":"The Maeve page where the person who asked reviews and decides. Opening it does not approve.","type":"string"},"requestedAt":{"type":"string"},"expiresAt":{"type":"string"},"decidedAt":{"nullable":true,"type":"string"},"declineNote":{"description":"What the person said should change when they declined. Change the request to match before asking again.","nullable":true,"type":"string"},"summary":{"nullable":true,"type":"object","properties":{"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"title":{"description":"What will be created, in plain words.","type":"string"},"account":{"type":"object","properties":{"id":{"type":"string"},"name":{"nullable":true,"type":"string"},"providerAccountId":{"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"nullable":true,"type":"string"}},"required":["id","name","providerAccountId","currency","timezone"],"additionalProperties":false},"objective":{"description":"The objective as the platform names it.","type":"string"},"hierarchy":{"description":"Every entity the request creates or adds to, from the campaign down.","type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"},"name":{"type":"string"},"existing":{"description":"True when this entity already exists and is only added to.","type":"boolean"}},"required":["level","nativeType","name","existing"],"additionalProperties":false}},"creative":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"audience":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"budgets":{"type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set"]},"kind":{"type":"string","enum":["daily","lifetime"]},"amountMicros":{"type":"string"},"currency":{"type":"string"},"name":{"description":"The campaign or ad set this budget belongs to, when there are several.","type":"string"}},"required":["level","kind","amountMicros","currency"],"additionalProperties":false}},"schedule":{"type":"object","properties":{"startAt":{"type":"string"},"endAt":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone of the ad account.","nullable":true,"type":"string"}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"initialState":{"description":"The state the platform creates it in.","type":"string","enum":["paused","disabled","draft","enabled"]},"activatesDelivery":{"description":"True when this request also starts delivery, so the budget can be spent without another step.","type":"boolean"}},"required":["initialState","activatesDelivery"],"additionalProperties":false}},"required":["platform","operation","title","account","objective","hierarchy","creative","audience","budgets","schedule","delivery"],"additionalProperties":false}},"required":["id","status","platform","operation","accountId","reviewUrl","requestedAt","expiresAt","decidedAt","summary"],"additionalProperties":false},"chatConfirmation":{"description":"Present when the workspace lets the person approve in chat. Show them approval.summary and ask. Only after they agree, send the same request again with approvalId and this text as chatConfirmation. A value returned here is not permission.","type":"string"},"nextStep":{"description":"What to do with this approval before sending the request again.","type":"string"}},"required":["approvalRequired","approval","nextStep"],"additionalProperties":false}]},"meta":{"type":"null","nullable":true,"example":null}}}}}},"202":{"description":"Nothing was created. The request is waiting for the person to approve it in Maeve.","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"approvalRequired":{"type":"boolean","enum":[true]},"approval":{"type":"object","properties":{"id":{"type":"string"},"status":{"description":"pending waits for the person. approved can be used once. consumed has been used. declined and expired cannot be used.","type":"string","enum":["pending","approved","declined","expired","consumed"]},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"accountId":{"type":"string"},"reviewUrl":{"description":"The Maeve page where the person who asked reviews and decides. Opening it does not approve.","type":"string"},"requestedAt":{"type":"string"},"expiresAt":{"type":"string"},"decidedAt":{"nullable":true,"type":"string"},"declineNote":{"description":"What the person said should change when they declined. Change the request to match before asking again.","nullable":true,"type":"string"},"summary":{"nullable":true,"type":"object","properties":{"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"title":{"description":"What will be created, in plain words.","type":"string"},"account":{"type":"object","properties":{"id":{"type":"string"},"name":{"nullable":true,"type":"string"},"providerAccountId":{"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"nullable":true,"type":"string"}},"required":["id","name","providerAccountId","currency","timezone"],"additionalProperties":false},"objective":{"description":"The objective as the platform names it.","type":"string"},"hierarchy":{"description":"Every entity the request creates or adds to, from the campaign down.","type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"},"name":{"type":"string"},"existing":{"description":"True when this entity already exists and is only added to.","type":"boolean"}},"required":["level","nativeType","name","existing"],"additionalProperties":false}},"creative":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"audience":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"budgets":{"type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set"]},"kind":{"type":"string","enum":["daily","lifetime"]},"amountMicros":{"type":"string"},"currency":{"type":"string"},"name":{"description":"The campaign or ad set this budget belongs to, when there are several.","type":"string"}},"required":["level","kind","amountMicros","currency"],"additionalProperties":false}},"schedule":{"type":"object","properties":{"startAt":{"type":"string"},"endAt":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone of the ad account.","nullable":true,"type":"string"}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"initialState":{"description":"The state the platform creates it in.","type":"string","enum":["paused","disabled","draft","enabled"]},"activatesDelivery":{"description":"True when this request also starts delivery, so the budget can be spent without another step.","type":"boolean"}},"required":["initialState","activatesDelivery"],"additionalProperties":false}},"required":["platform","operation","title","account","objective","hierarchy","creative","audience","budgets","schedule","delivery"],"additionalProperties":false}},"required":["id","status","platform","operation","accountId","reviewUrl","requestedAt","expiresAt","decidedAt","summary"],"additionalProperties":false},"chatConfirmation":{"description":"Present when the workspace lets the person approve in chat. Show them approval.summary and ask. Only after they agree, send the same request again with approvalId and this text as chatConfirmation. A value returned here is not permission.","type":"string"},"nextStep":{"description":"What to do with this approval before sending the request again.","type":"string"}},"required":["approvalRequired","approval","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Publish a Meta campaign draft after approval","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/publications/{publicationId}":{"get":{"description":"Read the progress of one Meta campaign publication: its state, the last confirmed step, progress per ad set and ad, a safe error, and whether it can be retried, reconciled or cleaned up. Read-only.","operationId":"PublicAdsController_getMetaPublication_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"publicationId","required":true,"in":"path","description":"Meta campaign publication UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read Meta campaign publication progress","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"publication":{"type":"object","properties":{"id":{"type":"string"},"draftId":{"type":"string"},"accountId":{"type":"string"},"frozenRevision":{"description":"The draft revision this publication froze.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"state":{"type":"string","enum":["pending","queued","processing","retryable","reconciliation_required","failed","completed","cancelled"]},"checkpoint":{"description":"The last step Maeve confirmed.","type":"string"},"retryClassification":{"type":"string","enum":["none","transient","ambiguous","permanent"]},"retryCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"safeError":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false},"progress":{"type":"object","properties":{"completedAdSets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"totalAdSets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"completedAds":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"totalAds":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["completedAdSets","totalAdSets","completedAds","totalAds"],"additionalProperties":false},"adSets":{"type":"array","items":{"type":"object","properties":{"adSetKey":{"type":"string"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"state":{"type":"string"},"checkpoint":{"type":"string"},"progress":{"type":"object","properties":{"completedAds":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"totalAds":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["completedAds","totalAds"],"additionalProperties":false},"safeError":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false}},"required":["adSetKey","position","state","checkpoint","progress","safeError"],"additionalProperties":false}},"ads":{"type":"array","items":{"type":"object","properties":{"adKey":{"type":"string"},"adSetKey":{"type":"string"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"state":{"type":"string"},"checkpoint":{"type":"string"},"safeError":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false}},"required":["adKey","adSetKey","position","state","checkpoint","safeError"],"additionalProperties":false}},"campaignId":{"description":"The Meta campaign ID, set once the publication has completed.","nullable":true,"type":"string"},"canRetry":{"type":"boolean"},"canReconcile":{"type":"boolean"},"canCleanup":{"type":"boolean"},"activatedAt":{"nullable":true,"type":"string"},"completedAt":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","draftId","accountId","frozenRevision","state","checkpoint","retryClassification","retryCount","safeError","progress","adSets","ads","campaignId","canRetry","canReconcile","canCleanup","activatedAt","completedAt","createdAt","updatedAt"],"additionalProperties":false},"nextStep":{"description":"What to do next, in plain words.","type":"string"}},"required":["account","publication","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read Meta campaign publication progress","tags":["Ads"]},"delete":{"description":"Delete from Meta the campaign, ad sets and ads this one publication created, plus any ads or ad sets Maeve later added or copied into that campaign, then cancel the publication. Nothing else on the account is touched, and creatives Meta may share stay. A finished campaign must be paused first and needs the delete baseline from ads.meta.campaigns.get_edit_context for its campaign. The draft becomes editable again; publish it once more with a new idempotencyKey, which asks for a new approval. Requires the exact confirmation text and is never auto-confirmed.","operationId":"PublicAdsController_cleanUpMetaPublication_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"publicationId","required":true,"in":"path","description":"Meta campaign publication UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"baseline":{"description":"For Meta, return the exact baseline you reviewed. ads.meta.campaigns.get_edit_context returns it for every change, and budget requirements return it under native.baseline. A missing or stale baseline returns META_ADS_EDIT_CONFLICT with details.currentBaseline and makes no changes. Show those current values to the user before resubmitting. Not used for other networks.","type":"object","additionalProperties":{}}},"additionalProperties":false}}}},"responses":{"200":{"description":"Delete exactly what one Meta publication created","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"publicationId":{"type":"string"},"cleanedUp":{"type":"boolean","enum":[true]},"confirmationMode":{"type":"string","enum":["explicit_confirmation","dangerous_auto_confirm"]}},"required":["account","publicationId","cleanedUp"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Delete exactly what one Meta publication created","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/publications/{publicationId}/retry":{"post":{"description":"Continue one Meta campaign publication from its last confirmed step, with the request it froze and the approval it already used. It creates nothing twice and needs no new approval. A publication that needs reconciliation must be reconciled first.","operationId":"PublicAdsController_retryMetaPublication_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"publicationId","required":true,"in":"path","description":"Meta campaign publication UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Retry a Meta campaign publication","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"publication":{"type":"object","properties":{"id":{"type":"string"},"draftId":{"type":"string"},"accountId":{"type":"string"},"frozenRevision":{"description":"The draft revision this publication froze.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"state":{"type":"string","enum":["pending","queued","processing","retryable","reconciliation_required","failed","completed","cancelled"]},"checkpoint":{"description":"The last step Maeve confirmed.","type":"string"},"retryClassification":{"type":"string","enum":["none","transient","ambiguous","permanent"]},"retryCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"safeError":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false},"progress":{"type":"object","properties":{"completedAdSets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"totalAdSets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"completedAds":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"totalAds":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["completedAdSets","totalAdSets","completedAds","totalAds"],"additionalProperties":false},"adSets":{"type":"array","items":{"type":"object","properties":{"adSetKey":{"type":"string"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"state":{"type":"string"},"checkpoint":{"type":"string"},"progress":{"type":"object","properties":{"completedAds":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"totalAds":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["completedAds","totalAds"],"additionalProperties":false},"safeError":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false}},"required":["adSetKey","position","state","checkpoint","progress","safeError"],"additionalProperties":false}},"ads":{"type":"array","items":{"type":"object","properties":{"adKey":{"type":"string"},"adSetKey":{"type":"string"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"state":{"type":"string"},"checkpoint":{"type":"string"},"safeError":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false}},"required":["adKey","adSetKey","position","state","checkpoint","safeError"],"additionalProperties":false}},"campaignId":{"description":"The Meta campaign ID, set once the publication has completed.","nullable":true,"type":"string"},"canRetry":{"type":"boolean"},"canReconcile":{"type":"boolean"},"canCleanup":{"type":"boolean"},"activatedAt":{"nullable":true,"type":"string"},"completedAt":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","draftId","accountId","frozenRevision","state","checkpoint","retryClassification","retryCount","safeError","progress","adSets","ads","campaignId","canRetry","canReconcile","canCleanup","activatedAt","completedAt","createdAt","updatedAt"],"additionalProperties":false},"nextStep":{"description":"What to do next, in plain words.","type":"string"}},"required":["account","publication","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Retry a Meta campaign publication","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/meta/{accountId}/publications/{publicationId}/reconcile":{"post":{"description":"Resolve an uncertain write in one Meta campaign publication: Maeve looks on Meta for the exact resource it may have created and adopts it, so a retry never creates it again. When the outcome is settled, it continues the publication. Use it when canReconcile is true.","operationId":"PublicAdsController_reconcileMetaPublication_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"publicationId","required":true,"in":"path","description":"Meta campaign publication UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Reconcile an uncertain Meta publication write","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"publication":{"type":"object","properties":{"id":{"type":"string"},"draftId":{"type":"string"},"accountId":{"type":"string"},"frozenRevision":{"description":"The draft revision this publication froze.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"state":{"type":"string","enum":["pending","queued","processing","retryable","reconciliation_required","failed","completed","cancelled"]},"checkpoint":{"description":"The last step Maeve confirmed.","type":"string"},"retryClassification":{"type":"string","enum":["none","transient","ambiguous","permanent"]},"retryCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"safeError":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false},"progress":{"type":"object","properties":{"completedAdSets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"totalAdSets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"completedAds":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"totalAds":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["completedAdSets","totalAdSets","completedAds","totalAds"],"additionalProperties":false},"adSets":{"type":"array","items":{"type":"object","properties":{"adSetKey":{"type":"string"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"state":{"type":"string"},"checkpoint":{"type":"string"},"progress":{"type":"object","properties":{"completedAds":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"totalAds":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["completedAds","totalAds"],"additionalProperties":false},"safeError":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false}},"required":["adSetKey","position","state","checkpoint","progress","safeError"],"additionalProperties":false}},"ads":{"type":"array","items":{"type":"object","properties":{"adKey":{"type":"string"},"adSetKey":{"type":"string"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"state":{"type":"string"},"checkpoint":{"type":"string"},"safeError":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false}},"required":["adKey","adSetKey","position","state","checkpoint","safeError"],"additionalProperties":false}},"campaignId":{"description":"The Meta campaign ID, set once the publication has completed.","nullable":true,"type":"string"},"canRetry":{"type":"boolean"},"canReconcile":{"type":"boolean"},"canCleanup":{"type":"boolean"},"activatedAt":{"nullable":true,"type":"string"},"completedAt":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","draftId","accountId","frozenRevision","state","checkpoint","retryClassification","retryCount","safeError","progress","adSets","ads","campaignId","canRetry","canReconcile","canCleanup","activatedAt","completedAt","createdAt","updatedAt"],"additionalProperties":false},"nextStep":{"description":"What to do next, in plain words.","type":"string"}},"required":["account","publication","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Reconcile an uncertain Meta publication write","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/creation-config":{"get":{"description":"Read what the TikTok composer offers for one TikTok ad account: eligibility and its reasons, objectives and whether each is accepted, currency rules, identities, locations and ad limits. The account must be a TikTok account. Read-only. It creates nothing.","operationId":"PublicAdsController_getTikTokCreationConfig_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read the TikTok campaign creation configuration","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"entityLevels":{"type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"}},"required":["level","nativeType"],"additionalProperties":false}},"config":{"description":"The creation configuration in the shape this platform defines.","type":"object","additionalProperties":{}}},"required":["account","money","entityLevels","config"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read the TikTok campaign creation configuration","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/campaigns/appeal":{"post":{"description":"Submit an appeal to TikTok for a rejected ad group, or one rejected ad in it, with an optional reason and attachments. Maeve first reads the current TikTok review and refuses anything that is not rejected. TikTok does not report appeal status, so Maeve records each appeal it sends and refuses a second appeal of the same review. No confirmation, the same as the dashboard. The account must be a TikTok account.","operationId":"PublicAdsController_appealTikTokRejection_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"adGroupId":{"description":"Platform ID of the rejected ad group.","type":"string","minLength":1,"maxLength":64},"adId":{"description":"Platform ID of one rejected ad in that ad group.","type":"string","minLength":1,"maxLength":64},"reason":{"type":"string","maxLength":2000},"attachments":{"description":"Attachment references TikTok accepts.","maxItems":10,"type":"array","items":{"type":"string","maxLength":2048}}},"required":["adGroupId"],"additionalProperties":false}}}},"responses":{"200":{"description":"Appeal a rejected TikTok ad group or ad","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"adGroupId":{"type":"string"},"adId":{"nullable":true,"type":"string"},"status":{"type":"string","enum":["submitted"]}},"required":["account","adGroupId","adId","status"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Appeal a rejected TikTok ad group or ad","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/instant-pages":{"get":{"description":"List the Instant Pages one TikTok advertiser can use as an ad destination. The dashboard shows them only to people who manage ads, so this needs ads.manage. The account must be a TikTok account. Read-only.","operationId":"PublicAdsController_listTikTokInstantPages_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List TikTok Instant Pages","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"pages":{"description":"Instant Pages with id and title.","type":"array","items":{"type":"object","additionalProperties":{}}}},"required":["account","money","pages"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List TikTok Instant Pages","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/media/{mediaId}":{"get":{"description":"Check one Media Room asset against TikTok ad rules for the given material type and read whether it has been uploaded to TikTok and finished processing. Use it to poll after ads.tiktok.media.upload. The account must be a TikTok account. Read-only.","operationId":"PublicAdsController_getTikTokMedia_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"mediaId","required":true,"in":"path","description":"Media Room asset UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Check a Media Room asset for TikTok ads and read its upload state","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"media":{"description":"The upload state at TikTok: missing, processing, ready, failed or unknown, with the provider asset ID and any error.","type":"object","additionalProperties":{}}},"required":["account","money","media"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Check a Media Room asset for TikTok ads and read its upload state","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/media/{mediaId}/upload":{"post":{"description":"Upload one Media Room asset to a TikTok advertiser so an ad can use it, then return its processing state. Poll ads.tiktok.media.get until it is ready. The asset must already be in the Media Room (see media.upload) and pass the TikTok rules for the material type. It creates no ad and no campaign. The account must be a TikTok account.","operationId":"PublicAdsController_uploadTikTokMedia_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"mediaId","required":true,"in":"path","description":"Media Room asset UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"materialType":{"description":"What the asset is used as.","type":"string","enum":["VIDEO","IMAGE"]}},"required":["materialType"],"additionalProperties":false}}}},"responses":{"200":{"description":"Upload a Media Room asset to TikTok","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"media":{"description":"The upload state at TikTok: missing, processing, ready, failed or unknown, with the provider asset ID and any error.","type":"object","additionalProperties":{}}},"required":["account","money","media"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Upload a Media Room asset to TikTok","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/media/{mediaId}/covers":{"get":{"description":"List the cover images TikTok suggests for a video that has been uploaded and processed, each with a TikTok-hosted image URL. The account must be a TikTok account. Read-only.","operationId":"PublicAdsController_listTikTokCovers_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"mediaId","required":true,"in":"path","description":"Media Room asset UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List suggested covers for an uploaded TikTok video","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"covers":{"description":"status, the TikTok video ID and the candidate covers with URL and size.","type":"object","additionalProperties":{}}},"required":["account","money","covers"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List suggested covers for an uploaded TikTok video","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/creative/{materialType}/{materialId}":{"get":{"description":"Read one TikTok video or image creative with its performance, watch curve and benchmark over the chosen days. Read freshness before interpreting the result. A cold detail returns ADS_DATA_IMPORTING while its background import is pending. Preview URLs expire independently of saved metrics. The account must be a TikTok account. Read-only.","operationId":"PublicAdsController_getTikTokCreative_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"materialType","required":true,"in":"path","description":"VIDEO or IMAGE.","schema":{"type":"string"}},{"name":"materialId","required":true,"in":"path","description":"Material ID from the creative list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read one TikTok creative","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"creative":{"description":"The library item with watchCurve and benchmark.","type":"object","additionalProperties":{}}},"required":["account","money","creative"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read one TikTok creative","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/comments":{"get":{"description":"List the top-level comments on the ads of one TikTok advertiser from the stored copy, with paging, filters for public or hidden and resolved, and the time of the last sync. Stale after thirty minutes; ads.tiktok.comments.refresh asks TikTok again. The account must be a TikTok account. Read-only.","operationId":"PublicAdsController_listTikTokComments_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List comments on TikTok ads","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"comments":{"description":"comments, pageInfo and freshness.","type":"object","additionalProperties":{}}},"required":["account","money","comments"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List comments on TikTok ads","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/comments/refresh":{"post":{"description":"Ask TikTok for new comments on the recent ad groups of one advertiser and store them. Returns how many were seen and saved. It changes nothing on TikTok. The account must be a TikTok account.","operationId":"PublicAdsController_refreshTikTokComments_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Fetch new TikTok ad comments","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"sync":{"description":"ad groups polled, comments seen and saved, and when it finished.","type":"object","additionalProperties":{}}},"required":["account","money","sync"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Fetch new TikTok ad comments","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/comments/members":{"get":{"description":"List the active workspace members a TikTok ad comment can be assigned to. The account must be a TikTok account. Read-only.","operationId":"PublicAdsController_listTikTokCommentMembers_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List members a TikTok ad comment can be assigned to","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"members":{"description":"members with id, name, email, avatar and role.","type":"array","items":{"type":"object","additionalProperties":{}}}},"required":["account","money","members"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List members a TikTok ad comment can be assigned to","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/comments/{commentId}":{"get":{"description":"Read one comment on a TikTok ad with its replies. Maeve refreshes the thread from TikTok first, the same as the dashboard. The account must be a TikTok account. Read-only.","operationId":"PublicAdsController_getTikTokComment_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"commentId","required":true,"in":"path","description":"Comment ID from the comment list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read one TikTok ad comment thread","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"comment":{"description":"The comment, its replies and the freshness of the stored thread.","type":"object","additionalProperties":{}}},"required":["account","money","comment"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read one TikTok ad comment thread","tags":["Ads"]},"delete":{"description":"Delete one comment on a TikTok ad. TikTok removes it for everyone and it cannot be restored. Only comments TikTok lets the advertiser delete are accepted. No confirmation, the same as the dashboard. The account must be a TikTok account.","operationId":"PublicAdsController_deleteTikTokComment_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"commentId","required":true,"in":"path","description":"Comment ID from the comment list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Delete a TikTok ad comment","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"commentId":{"type":"string"},"deleted":{"type":"boolean","enum":[true]},"providerDeletedAt":{"nullable":true,"type":"string"}},"required":["account","commentId","deleted","providerDeletedAt"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Delete a TikTok ad comment","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/comments/{commentId}/reply":{"post":{"description":"Post a public reply from the advertiser to one top-level comment on a TikTok ad. The reply is visible on TikTok at once. No confirmation, the same as the dashboard. The account must be a TikTok account.","operationId":"PublicAdsController_replyToTikTokComment_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"commentId","required":true,"in":"path","description":"Comment ID from the comment list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"text":{"description":"Reply text, up to 150 characters.","type":"string","minLength":1,"maxLength":150}},"required":["text"],"additionalProperties":false}}}},"responses":{"200":{"description":"Reply to a TikTok ad comment","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"comment":{"description":"The comment, its replies and the freshness of the stored thread.","type":"object","additionalProperties":{}}},"required":["account","money","comment"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Reply to a TikTok ad comment","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/comments/{commentId}/visibility":{"post":{"description":"Hide one comment on a TikTok ad from the public, or show it again. Deleted comments and comments matching blocked words cannot change. No confirmation, the same as the dashboard. The account must be a TikTok account.","operationId":"PublicAdsController_setTikTokCommentVisibility_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"commentId","required":true,"in":"path","description":"Comment ID from the comment list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"status":{"description":"HIDDEN hides the comment on TikTok; PUBLIC shows it.","type":"string","enum":["PUBLIC","HIDDEN"]}},"required":["status"],"additionalProperties":false}}}},"responses":{"200":{"description":"Hide or show a TikTok ad comment","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"comment":{"description":"The comment, its replies and the freshness of the stored thread.","type":"object","additionalProperties":{}}},"required":["account","money","comment"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Hide or show a TikTok ad comment","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/comments/{commentId}/workflow":{"post":{"description":"Assign one TikTok ad comment to a workspace member or mark it resolved. This is Maeve workflow state only; nothing changes on TikTok. Members come from ads.tiktok.comments.list_members. The account must be a TikTok account.","operationId":"PublicAdsController_updateTikTokCommentWorkflow_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"commentId","required":true,"in":"path","description":"Comment ID from the comment list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"assignedUserId":{"description":"Workspace member to assign, or null to unassign.","nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"resolved":{"type":"boolean"}},"additionalProperties":false}}}},"responses":{"200":{"description":"Assign or resolve a TikTok ad comment","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"comment":{"description":"The comment, its replies and the freshness of the stored thread.","type":"object","additionalProperties":{}}},"required":["account","money","comment"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Assign or resolve a TikTok ad comment","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/blocked-words":{"get":{"description":"List every word TikTok blocks in comments on one advertiser's ads, read live from TikTok. The account must be a TikTok account. Read-only.","operationId":"PublicAdsController_listTikTokBlockedWords_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List blocked comment words","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"blockedWords":{"description":"words and totalNumber.","type":"object","additionalProperties":{}}},"required":["account","money","blockedWords"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List blocked comment words","tags":["Ads"]},"post":{"description":"Add words TikTok blocks in comments on one advertiser's ads. No confirmation, the same as the dashboard. The account must be a TikTok account.","operationId":"PublicAdsController_addTikTokBlockedWords_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"words":{"description":"Up to 500 distinct words.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}}},"required":["words"],"additionalProperties":false}}}},"responses":{"200":{"description":"Block comment words","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"updated":{"type":"boolean","enum":[true]}},"required":["account","updated"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Block comment words","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/blocked-words/check":{"post":{"description":"Check a list of words against the advertiser's blocked words on TikTok and report which are blocked. Nothing changes. The account must be a TikTok account. Read-only.","operationId":"PublicAdsController_checkTikTokBlockedWords_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"words":{"description":"Up to 500 distinct words.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}}},"required":["words"],"additionalProperties":false}}}},"responses":{"200":{"description":"Check which words are blocked","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"results":{"description":"What TikTok reports for each word.","type":"object","additionalProperties":{}}},"required":["account","money","results"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Check which words are blocked","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/blocked-words/update":{"post":{"description":"Replace one word TikTok blocks in comments with another. No confirmation, the same as the dashboard. The account must be a TikTok account.","operationId":"PublicAdsController_updateTikTokBlockedWord_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"oldWord":{"type":"string","minLength":1,"maxLength":200},"newWord":{"type":"string","minLength":1,"maxLength":200}},"required":["oldWord","newWord"],"additionalProperties":false}}}},"responses":{"200":{"description":"Replace one blocked comment word","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"updated":{"type":"boolean","enum":[true]}},"required":["account","updated"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Replace one blocked comment word","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/blocked-words/delete":{"post":{"description":"Remove words from the list TikTok blocks in comments on one advertiser's ads. No confirmation, the same as the dashboard. The account must be a TikTok account.","operationId":"PublicAdsController_deleteTikTokBlockedWords_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"words":{"description":"Up to 500 distinct words.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}}},"required":["words"],"additionalProperties":false}}}},"responses":{"200":{"description":"Stop blocking comment words","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"updated":{"type":"boolean","enum":[true]}},"required":["account","updated"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Stop blocking comment words","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/audiences":{"get":{"description":"List saved custom audiences on one TikTok advertiser with background renewal, size, state and whether each can seed a lookalike. Check freshness: importing is not a successful empty list. Creation still validates current provider state. The account must be a TikTok account. Read-only.","operationId":"PublicAdsController_listTikTokAudiences_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List TikTok custom audiences","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"audiences":{"description":"accountId, fetchedAt and the audiences.","type":"object","additionalProperties":{}}},"required":["account","money","audiences"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List TikTok custom audiences","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/audiences/posts":{"get":{"description":"List the published TikTok posts in the workspace that an organic engagement audience can be built from, with whether each is eligible and why. The account must be a TikTok account. Read-only.","operationId":"PublicAdsController_listTikTokAudienceSourcePosts_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List TikTok posts eligible as audience sources","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"posts":{"description":"Post candidates with eligibility and explanation.","type":"object","additionalProperties":{}}},"required":["account","money","posts"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List TikTok posts eligible as audience sources","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/audiences/lookalike-config":{"get":{"description":"Read the locations one TikTok advertiser can use for a lookalike audience. The account must be a TikTok account. Read-only.","operationId":"PublicAdsController_getTikTokLookalikeConfig_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read the locations a TikTok lookalike audience can use","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"config":{"description":"accountId and the locations.","type":"object","additionalProperties":{}}},"required":["account","money","config"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read the locations a TikTok lookalike audience can use","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/audiences/organic":{"post":{"description":"Create a TikTok engagement audience from people who interacted with up to ten published TikTok posts over 7, 14 or 30 days. TikTok builds it in the background; read ads.tiktok.audiences.list for its state. It creates no campaign and spends nothing. No confirmation, the same as the dashboard. The account must be a TikTok account.","operationId":"PublicAdsController_createTikTokOrganicAudience_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":128},"contentIds":{"description":"Content IDs from ads.tiktok.audiences.list_source_posts.","minItems":1,"maxItems":10,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"lookbackDays":{"anyOf":[{"type":"number","enum":[7]},{"type":"number","enum":[14]},{"type":"number","enum":[30]}]}},"required":["name","contentIds","lookbackDays"],"additionalProperties":false}}}},"responses":{"200":{"description":"Create a TikTok engagement audience from published posts","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"audienceId":{"type":"string"},"state":{"type":"string"}},"required":["account","audienceId","state"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Create a TikTok engagement audience from published posts","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/audiences/lookalike":{"post":{"description":"Create a TikTok lookalike audience from an existing audience of at least 1,000 people in one location. TikTok builds it in the background; read ads.tiktok.audiences.list for its state. It creates no campaign and spends nothing. No confirmation, the same as the dashboard. The account must be a TikTok account.","operationId":"PublicAdsController_createTikTokLookalikeAudience_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":128},"sourceAudienceId":{"description":"An audience with canCreateLookalike from ads.tiktok.audiences.list.","type":"string","minLength":1,"maxLength":64},"locationId":{"description":"A location from ads.tiktok.audiences.get_lookalike_config.","type":"string","minLength":1,"maxLength":64},"audienceSize":{"type":"string","enum":["NARROW","BALANCED","BROAD"]},"includeSource":{"type":"boolean"}},"required":["name","sourceAudienceId","locationId","audienceSize","includeSource"],"additionalProperties":false}}}},"responses":{"200":{"description":"Create a TikTok lookalike audience","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"audienceId":{"type":"string"},"state":{"type":"string"}},"required":["account","audienceId","state"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Create a TikTok lookalike audience","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/spark/posts":{"get":{"description":"List the published TikTok posts in the workspace that one advertiser could boost as Spark Ads, with eligibility, the identity and Push permission requirements. Use ads.tiktok.spark.boosts.create to request the person's approval on the Maeve review page. Creation produces enabled resources. The account must be a TikTok account. Read-only.","operationId":"PublicAdsController_listTikTokSparkPosts_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List TikTok posts eligible for a Spark boost","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"posts":{"description":"Post candidates with eligibility and explanation.","type":"array","items":{"type":"object","additionalProperties":{}}},"page":{"type":"object","properties":{"limit":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"offset":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"total":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"hasMore":{"type":"boolean"}},"required":["limit","offset","total","hasMore"],"additionalProperties":false}},"required":["account","money","posts","page"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List TikTok posts eligible for a Spark boost","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/spark/config":{"get":{"description":"Read the options a Spark boost can use on one TikTok advertiser for an objective: optimization goals, budget modes, the minimum daily budget, age groups, genders, calls to action and locations. The account must be a TikTok account. Read-only.","operationId":"PublicAdsController_getTikTokSparkConfig_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read TikTok Spark boost options for an objective","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"config":{"description":"The Spark boost configuration as the dashboard reads it.","type":"object","additionalProperties":{}}},"required":["account","money","config"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read TikTok Spark boost options for an objective","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/creation-config":{"get":{"description":"Read what the LinkedIn composer offers for one LinkedIn ad account: eligibility and granted access, objectives, the ad formats each objective allows, bidding strategies and targeting facets. The account must be a LinkedIn account. Read-only. It creates nothing.","operationId":"PublicAdsController_getLinkedInCreationConfig_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read the LinkedIn campaign creation configuration","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"entityLevels":{"type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"}},"required":["level","nativeType"],"additionalProperties":false}},"config":{"description":"The creation configuration in the shape this platform defines.","type":"object","additionalProperties":{}}},"required":["account","money","entityLevels","config"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read the LinkedIn campaign creation configuration","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/entities/{level}/{entityId}":{"get":{"description":"Read one LinkedIn campaign group, campaign or creative as the management panel shows it: name, status, the statuses it may move to, delivery settings or group budget, bidding, restrictions and the revision that ads.linkedin.entities.update requires. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_getLinkedInEntity_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"level","required":true,"in":"path","description":"Maeve level: campaign (LinkedIn campaign group), ad_set (LinkedIn campaign) or ad (creative).","schema":{"type":"string"}},{"name":"entityId","required":true,"in":"path","description":"LinkedIn numeric ID of the entity.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read one LinkedIn entity for management","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"},"entityId":{"type":"string"},"entity":{"description":"name, status, revision, allowed statuses, delivery or group budget and the restrictions the dashboard shows.","type":"object","additionalProperties":{}}},"required":["account","money","level","nativeType","entityId","entity"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read one LinkedIn entity for management","tags":["Ads"]},"post":{"description":"Change one LinkedIn campaign group, campaign or creative: name, status (pause, activate, archive), delivery settings and bidding for a campaign, or the group budget for a campaign group. Send the revision from ads.linkedin.entities.get; a changed entity is refused until it is read again. Moving to ACTIVE needs confirmActivation: true and the exact confirmation text because it starts delivery. Activating a draft group or campaign also activates its draft children. It creates nothing. The account must be a LinkedIn account with campaign management access.","operationId":"PublicAdsController_updateLinkedInEntity_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"level","required":true,"in":"path","description":"Maeve level: campaign (LinkedIn campaign group), ad_set (LinkedIn campaign) or ad (creative).","schema":{"type":"string"}},{"name":"entityId","required":true,"in":"path","description":"LinkedIn numeric ID of the entity.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"revision":{"description":"The revision from ads.linkedin.entities.get.","type":"string","pattern":"^[a-f0-9]{64}$"},"name":{"type":"string","minLength":1,"maxLength":200},"status":{"type":"string","enum":["DRAFT","ACTIVE","PAUSED","ARCHIVED","COMPLETED"]},"confirmActivation":{"description":"Required when moving to ACTIVE from another status, because activation starts delivery.","type":"boolean","enum":[true]},"delivery":{"description":"ad_set only.","type":"object","properties":{"dailyBudget":{"nullable":true,"description":"A decimal amount in the account currency, more than zero.","type":"string","pattern":"^\\d{1,12}(\\.\\d{1,5})?$"},"totalBudget":{"description":"More than zero. It can change, or be removed, only on an ad set created with lifetime pacing; otherwise send the current value.","nullable":true,"type":"string","pattern":"^\\d{1,12}(\\.\\d{1,5})?$"},"bid":{"description":"A decimal amount in the account currency. Maximum delivery uses \"0\"; other strategies need the bid.","type":"string","pattern":"^\\d{1,12}(\\.\\d{1,5})?$"},"start":{"description":"Start time in epoch milliseconds. It cannot change.","type":"integer","exclusiveMinimum":true,"maximum":9007199254740991},"end":{"description":"End time in epoch milliseconds, or null for no end.","nullable":true,"type":"integer","exclusiveMinimum":true,"maximum":9007199254740991}},"required":["dailyBudget","totalBudget","bid","start","end"],"additionalProperties":false},"groupBudget":{"description":"campaign (campaign group) only, on business accounts.","type":"object","properties":{"dailyBudget":{"nullable":true,"description":"A decimal amount in the account currency, more than zero.","type":"string","pattern":"^\\d{1,12}(\\.\\d{1,5})?$"},"totalBudget":{"nullable":true,"description":"A decimal amount in the account currency, more than zero.","type":"string","pattern":"^\\d{1,12}(\\.\\d{1,5})?$"},"start":{"type":"integer","exclusiveMinimum":true,"maximum":9007199254740991},"end":{"nullable":true,"type":"integer","exclusiveMinimum":true,"maximum":9007199254740991}},"required":["dailyBudget","totalBudget","start","end"],"additionalProperties":false},"biddingStrategy":{"description":"ad_set only. A change of strategy also needs delivery with the bid; MAXIMUM_DELIVERY needs a bid of \"0\".","type":"string","enum":["MANUAL_CPC","MANUAL_CPM","MAXIMUM_DELIVERY","ENHANCED_CPC","MANUAL_CPV","TARGET_COST","COST_CAP"]}},"required":["revision","name","status"],"additionalProperties":false}}}},"responses":{"200":{"description":"Update one LinkedIn entity","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"},"entityId":{"type":"string"},"entity":{"description":"name, status, revision, allowed statuses, delivery or group budget and the restrictions the dashboard shows.","type":"object","additionalProperties":{}}},"required":["account","money","level","nativeType","entityId","entity"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Update one LinkedIn entity","tags":["Ads"]},"delete":{"description":"Delete one LinkedIn campaign group, campaign or creative together with everything under it. Drafts are removed at once; anything else is marked for deletion on LinkedIn and cannot be restored. Requires the exact confirmation text and is never auto-confirmed. The account must be a LinkedIn account with campaign management access.","operationId":"PublicAdsController_deleteLinkedInEntity_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"level","required":true,"in":"path","description":"Maeve level: campaign (LinkedIn campaign group), ad_set (LinkedIn campaign) or ad (creative).","schema":{"type":"string"}},{"name":"entityId","required":true,"in":"path","description":"LinkedIn numeric ID of the entity.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Delete one LinkedIn entity and its children","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"},"entityId":{"type":"string"},"deleted":{"type":"boolean","enum":[true]},"syncWarning":{"nullable":true,"type":"string"},"confirmationMode":{"type":"string","enum":["explicit_confirmation","dangerous_auto_confirm"]}},"required":["account","level","nativeType","entityId","deleted","syncWarning"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Delete one LinkedIn entity and its children","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/ad-sets/{entityId}/audience":{"get":{"description":"Read the audience of one LinkedIn campaign (a Maeve ad set): locations, targeting facets, exclusions, expansion, any restriction on editing it, and the revision that ads.linkedin.audience.update requires. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_getLinkedInAudience_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"entityId","required":true,"in":"path","description":"LinkedIn campaign ID (a Maeve ad set).","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read the audience of a LinkedIn campaign","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"audience":{"description":"audience, revision, restriction, dynamic and the location names.","type":"object","additionalProperties":{}}},"required":["account","money","audience"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read the audience of a LinkedIn campaign","tags":["Ads"]},"post":{"description":"Replace the audience of one LinkedIn campaign (a Maeve ad set) with the revision from ads.linkedin.audience.get. Refused when the campaign restricts audience edits or when expansion is requested for a dynamic campaign. No confirmation, the same as the dashboard. The account must be a LinkedIn account with campaign management access.","operationId":"PublicAdsController_updateLinkedInAudience_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"entityId","required":true,"in":"path","description":"LinkedIn campaign ID (a Maeve ad set).","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"audience":{"type":"object","properties":{"locationIds":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"locationType":{"type":"string","enum":["locations","profileLocations"]},"excludedLocationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"profileLocale":{"description":"Profile language, such as en_US. Leaving it out keeps the current language on an update and uses en_US on a new campaign.","type":"string","pattern":"^[a-z]{2}_[A-Z]{2}$"},"targeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"targetingGroups":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false}},"excludedTargeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"audienceExpansionEnabled":{"type":"boolean"}},"required":["locationIds","audienceExpansionEnabled"],"additionalProperties":false},"revision":{"description":"The revision from ads.linkedin.audience.get.","type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["audience","revision"],"additionalProperties":false}}}},"responses":{"200":{"description":"Replace the audience of a LinkedIn campaign","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"audience":{"description":"audience, revision, restriction, dynamic and the location names.","type":"object","additionalProperties":{}}},"required":["account","money","audience"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Replace the audience of a LinkedIn campaign","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/ad-sets/{entityId}/tracking":{"get":{"description":"Read the URL tracking parameters of one LinkedIn campaign (a Maeve ad set), each custom or dynamic, and the revision that ads.linkedin.tracking.update requires. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_getLinkedInTracking_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"entityId","required":true,"in":"path","description":"LinkedIn campaign ID (a Maeve ad set).","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read the tracking parameters of a LinkedIn campaign","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"tracking":{"description":"rows with key, kind and value, and the revision.","type":"object","additionalProperties":{}}},"required":["account","money","tracking"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read the tracking parameters of a LinkedIn campaign","tags":["Ads"]},"post":{"description":"Replace the URL tracking parameters of one LinkedIn campaign (a Maeve ad set): up to 20 rows, each custom text or one of LinkedIn's dynamic values, with the revision from ads.linkedin.tracking.get. Keys already present in a creative's landing URL are refused. No confirmation, the same as the dashboard. The account must be a LinkedIn account with campaign management access.","operationId":"PublicAdsController_updateLinkedInTracking_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"entityId","required":true,"in":"path","description":"LinkedIn campaign ID (a Maeve ad set).","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"rows":{"description":"Up to 20 rows, each name used once. A dynamic value is one of ACCOUNT_ID, ACCOUNT_NAME, CAMPAIGN_GROUP_ID, CAMPAIGN_GROUP_NAME, CAMPAIGN_ID, CAMPAIGN_NAME, CREATIVE_ID or CREATIVE_NAME.","maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1,"maxLength":100},"kind":{"type":"string","enum":["custom","dynamic"]},"value":{"type":"string","minLength":1,"maxLength":1000}},"required":["key","kind","value"],"additionalProperties":false}},"revision":{"description":"The revision from ads.linkedin.tracking.get.","type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["rows","revision"],"additionalProperties":false}}}},"responses":{"200":{"description":"Replace the tracking parameters of a LinkedIn campaign","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"tracking":{"description":"rows with key, kind and value, and the revision.","type":"object","additionalProperties":{}}},"required":["account","money","tracking"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Replace the tracking parameters of a LinkedIn campaign","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/ad-sets/{entityId}/context":{"get":{"description":"Read the context of one existing LinkedIn campaign (a Maeve ad set) and its group: objective, format, tracking and what a new creative added under it inherits. Add only creatives to an existing campaign with ads.linkedin.operations.create, existingGroupId and existingCampaignId; that needs no campaign approval. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_getLinkedInCampaignContext_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"entityId","required":true,"in":"path","description":"LinkedIn campaign ID (a Maeve ad set).","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read what an existing LinkedIn campaign imposes on new creatives","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"context":{"description":"The existing campaign context as the composer reads it.","type":"object","additionalProperties":{}}},"required":["account","money","context"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read what an existing LinkedIn campaign imposes on new creatives","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/groups/{entityId}/context":{"get":{"description":"Read the context of one existing LinkedIn campaign group (a Maeve campaign): its status, budget and schedule, and what a new campaign added under it inherits. Add that campaign with ads.linkedin.operations.create and existingGroupId; it needs the person's approval on the Maeve review page. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_getLinkedInGroupContext_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"entityId","required":true,"in":"path","description":"LinkedIn campaign group ID (a Maeve campaign).","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read what an existing LinkedIn campaign group imposes on new campaigns","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"context":{"description":"The existing group context as the composer reads it.","type":"object","additionalProperties":{}}},"required":["account","money","context"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read what an existing LinkedIn campaign group imposes on new campaigns","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/pages":{"get":{"description":"List the LinkedIn Pages one ad account can advertise for, with a short-lived logo URL. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_listLinkedInPages_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List LinkedIn Pages the account can advertise for","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"pages":{"description":"Pages with id, name and logo URL.","type":"array","items":{"type":"object","additionalProperties":{}}}},"required":["account","money","pages"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List LinkedIn Pages the account can advertise for","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/existing-posts":{"get":{"description":"List the published posts of one LinkedIn Page that a creative can reuse as an existing post, with format, commentary and landing URLs. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_listLinkedInExistingPosts_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List LinkedIn Page posts eligible for reuse as ads","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"posts":{"description":"Posts with id, format, name, commentary and landing URLs.","type":"array","items":{"type":"object","additionalProperties":{}}}},"required":["account","money","posts"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List LinkedIn Page posts eligible for reuse as ads","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/existing-posts/preview":{"get":{"description":"Preview one published LinkedIn Page post as the ad that reuses it: format, headline, text, landing URL, call to action and media, the same preview the composer shows before sponsoring it. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_getLinkedInExistingPostPreview_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Preview a LinkedIn Page post as an ad","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"preview":{"description":"format, source, headline, description, landingUrl, callToAction, assets and any notice.","type":"object","additionalProperties":{}}},"required":["account","money","preview"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Preview a LinkedIn Page post as an ad","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/content-categories":{"get":{"description":"List the IAB content categories, with their parents, that a new campaign can exclude from the Audience Network through excludedIabCategories in ads.linkedin.operations.create. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_listLinkedInContentCategories_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List the content categories a LinkedIn campaign can exclude","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"categories":{"description":"Categories with id, name and parentId.","type":"array","items":{"type":"object","additionalProperties":{}}}},"required":["account","money","categories"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List the content categories a LinkedIn campaign can exclude","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/insight-tag":{"get":{"description":"Read whether the ad account has a LinkedIn Insight Tag and on how many unblocked domains, which website conversions need. The composer shows the same before a new conversion. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_getLinkedInInsightTag_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read whether the LinkedIn Insight Tag is installed","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"insightTag":{"description":"installed and the number of domains.","type":"object","additionalProperties":{}}},"required":["account","money","insightTag"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read whether the LinkedIn Insight Tag is installed","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/account-tracking":{"get":{"description":"Read the URL tracking parameters set on the whole ad account, which every campaign's landing URLs carry alongside its own. The composer's review shows them. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_getLinkedInAccountTracking_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read the account-wide LinkedIn tracking parameters","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"tracking":{"description":"Rows with key, kind and value.","type":"array","items":{"type":"object","additionalProperties":{}}}},"required":["account","money","tracking"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read the account-wide LinkedIn tracking parameters","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/conversions":{"get":{"description":"List the conversions defined on one LinkedIn ad account, whether each is enabled, how it is tracked, and when it last recorded a visit (null if never). The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_listLinkedInConversions_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List LinkedIn conversions","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"conversions":{"description":"Conversions with id, name, enabled, method and lastRecordedAt.","type":"array","items":{"type":"object","additionalProperties":{}}}},"required":["account","money","conversions"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List LinkedIn conversions","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/lead-forms":{"get":{"description":"List the lead gen forms one LinkedIn ad account can attach to a lead campaign, with state and language. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_listLinkedInLeadForms_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List LinkedIn lead gen forms","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"leadForms":{"description":"Forms with id, name, state and language.","type":"array","items":{"type":"object","additionalProperties":{}}}},"required":["account","money","leadForms"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List LinkedIn lead gen forms","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/locations":{"get":{"description":"Search LinkedIn locations by name and return the IDs an audience uses. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_searchLinkedInLocations_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Search LinkedIn targeting locations","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"locations":{"description":"Locations with id and name.","type":"array","items":{"type":"object","additionalProperties":{}}}},"required":["account","money","locations"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Search LinkedIn targeting locations","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/targeting/{facet}":{"get":{"description":"List the options of one LinkedIn targeting facet such as jobFunctions or industries, search facets that support typeahead such as titles or skills, or resolve up to 20 URNs to names. Returns the URNs an audience uses. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_listLinkedInTargetingOptions_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"facet","required":true,"in":"path","description":"A LinkedIn targeting facet such as jobFunctions, or interfaceLocales.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List, search or resolve options for a LinkedIn targeting facet","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"options":{"description":"Options with id (URN) and name.","type":"array","items":{"type":"object","additionalProperties":{}}}},"required":["account","money","options"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List, search or resolve options for a LinkedIn targeting facet","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/audience-estimate":{"post":{"description":"Estimate how many LinkedIn members an audience of locations and targeting facets reaches. It saves nothing. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_estimateLinkedInAudience_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"locationIds":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"locationType":{"type":"string","enum":["locations","profileLocations"]},"excludedLocationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"profileLocale":{"description":"Profile language, such as en_US. Leaving it out keeps the current language on an update and uses en_US on a new campaign.","type":"string","pattern":"^[a-z]{2}_[A-Z]{2}$"},"targeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"targetingGroups":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false}},"excludedTargeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false}},"required":["locationIds"],"additionalProperties":false}}}},"responses":{"200":{"description":"Estimate the size of a LinkedIn audience","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"count":{"description":"LinkedIn's audience count estimate.","nullable":true,"type":"number"}},"required":["account","count"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Estimate the size of a LinkedIn audience","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/guidance/{kind}":{"post":{"description":"Read LinkedIn's pricing guidance (bid and budget limits) or delivery forecast for an audience, format, objective, bidding and budget. LinkedIn's response is passed through under elements. It saves nothing. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_getLinkedInGuidance_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"kind","required":true,"in":"path","description":"pricing or forecast.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"locationIds":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"locationType":{"type":"string","enum":["locations","profileLocations"]},"excludedLocationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"profileLocale":{"description":"Profile language, such as en_US. Leaving it out keeps the current language on an update and uses en_US on a new campaign.","type":"string","pattern":"^[a-z]{2}_[A-Z]{2}$"},"targeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"targetingGroups":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false}},"excludedTargeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"format":{"type":"string","enum":["text","image","video","carousel","document","follower","spotlight"]},"objectiveType":{"type":"string","enum":["BRAND_AWARENESS","WEBSITE_VISIT","ENGAGEMENT","LEAD_GENERATION","WEBSITE_CONVERSION","VIDEO_VIEW"]},"biddingStrategy":{"type":"string","enum":["MANUAL_CPC","MANUAL_CPM","MAXIMUM_DELIVERY","ENHANCED_CPC","MANUAL_CPV","TARGET_COST","COST_CAP"]},"optimizationGoal":{"description":"With maximum delivery: impressions instead of reach for brand awareness, or qualified leads for lead generation.","type":"string","enum":["IMPRESSIONS","QUALIFIED_LEADS"]},"budgetMode":{"type":"string","enum":["DAILY","LIFETIME","DAILY_AND_LIFETIME"]},"dailyBudget":{"type":"string","pattern":"^(?:\\d{1,7}(?:\\.\\d{1,2})?)?$"},"totalBudget":{"type":"string","pattern":"^(?:\\d{1,7}(?:\\.\\d{1,2})?)?$"},"bid":{"type":"string","pattern":"^(?:\\d{1,7}(?:\\.\\d{1,2})?)?$"},"startAt":{"type":"string","maxLength":40},"endAt":{"type":"string","maxLength":40},"noEndDate":{"type":"boolean"},"offsiteDeliveryEnabled":{"type":"boolean"},"audienceExpansionEnabled":{"type":"boolean"}},"required":["locationIds"],"additionalProperties":false}}}},"responses":{"200":{"description":"Read LinkedIn pricing limits or a delivery forecast","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"guidance":{"description":"currency, start, end and LinkedIn's elements.","type":"object","additionalProperties":{}}},"required":["account","money","guidance"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read LinkedIn pricing limits or a delivery forecast","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/media/{mediaId}":{"get":{"description":"Check one Media Room asset against LinkedIn's rules for its format (image, dynamic ad image, document or video) and return a short-lived preview URL. LinkedIn receives the file only when a creation operation continues, so there is no separate upload step. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_getLinkedInMedia_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"mediaId","required":true,"in":"path","description":"Media Room asset UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Check a Media Room asset for LinkedIn ads and get a preview link","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"media":{"description":"id, name and a short-lived preview URL.","type":"object","additionalProperties":{}}},"required":["account","money","media"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Check a Media Room asset for LinkedIn ads and get a preview link","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/creative/{creativeId}/preview":{"get":{"description":"Read one LinkedIn creative as the dashboard previews it: its copy, format and assets with short-lived download URLs. Check freshness before interpreting missing content: importing means background work is pending. The dashboard shows this to anyone who can read ads. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_getLinkedInCreativePreview_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"creativeId","required":true,"in":"path","description":"LinkedIn creative ID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read the copy and asset links of a LinkedIn creative","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"preview":{"description":"The creative preview with its assets and freshness state.","type":"object","additionalProperties":{}}},"required":["account","money","preview"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read the copy and asset links of a LinkedIn creative","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/reports/demographics":{"get":{"description":"Read LinkedIn ad results for one account over 7 or 30 days. Non-location results use cached data and background refresh; country and region are live reads. Check freshness before interpreting empty rows: importing is not a successful empty report. Results are broken down by one pivot: company size, industry, seniority, job title, job function, country, region or company. Metrics are impressions, clicks, landing page clicks, cost, website conversions and one-click leads. LinkedIn omits small segments, so rows do not add up to the totals. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_getLinkedInDemographics_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Read LinkedIn ad results by member demographic","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"demographics":{"description":"pivot, currency, the range, rows with metrics and freshness state.","type":"object","additionalProperties":{}}},"required":["account","money","demographics"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Read LinkedIn ad results by member demographic","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/operations":{"get":{"description":"List saved drafts and creation progress, newest first, with bounded pagination. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_linkedInOperationsList_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"LinkedIn OperationsList","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"operations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"requestKey":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"specification":{"anyOf":[{"type":"object","properties":{"parentRevision":{"description":"Server-bound inherited settings. Keep when saving a returned draft; recalculated on submission.","type":"string","pattern":"^[a-f0-9]{64}$"},"existingGroupId":{"type":"string","pattern":"^\\d{1,20}$"},"existingCampaignId":{"type":"string","pattern":"^\\d{1,20}$"},"useCampaignBudget":{"type":"boolean"},"groupBudgetOptimization":{"type":"string","enum":["DYNAMIC"]},"nonPolitical":{"description":"Confirms that no ad is political advertising under the law of the targeted countries, including EU law. The dashboard ticks it by default, and ads.linkedin.operations.create treats a missing value as true.","type":"boolean","enum":[true]},"format":{"type":"string","enum":["text","image","video","carousel","document","follower","spotlight"]},"objectiveType":{"type":"string","enum":["BRAND_AWARENESS","WEBSITE_VISIT","ENGAGEMENT","LEAD_GENERATION","WEBSITE_CONVERSION","VIDEO_VIEW"]},"leadFormId":{"type":"string","pattern":"^\\d{1,20}$"},"newLeadForm":{"type":"object","properties":{"name":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":60},"description":{"type":"string","maxLength":160},"privacyPolicyUrl":{"type":"string","maxLength":2000},"legalDisclaimer":{"type":"string","maxLength":2000},"confirmationMessage":{"type":"string","maxLength":300},"landingUrl":{"type":"string","maxLength":2000},"questions":{"maxItems":12,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":300},"predefinedField":{"type":"string","enum":["FIRST_NAME","LAST_NAME","EMAIL","WORK_EMAIL","PHONE_NUMBER","WORK_PHONE_NUMBER","CITY","STATE","COUNTRY","ZIP_CODE","JOB_TITLE","JOB_FUNCTION","SENIORITY","COMPANY_NAME","COMPANY_SIZE","INDUSTRY","DEGREE","FIELD_OF_STUDY","SCHOOL","START_DATE","GRADUATION_DATE","GENDER","LINKEDIN_PROFILE_LINK"]},"required":{"type":"boolean"},"options":{"maxItems":5,"type":"array","items":{"type":"string","maxLength":100}}},"required":["label","required"],"additionalProperties":false}},"consents":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","maxLength":2000},"required":{"type":"boolean"}},"required":["text","required"],"additionalProperties":false}},"hiddenFields":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","maxLength":100},"value":{"type":"string","maxLength":1000}},"required":["name","value"],"additionalProperties":false}}},"required":["name","headline","description","privacyPolicyUrl","confirmationMessage","landingUrl","questions"],"additionalProperties":false},"newConversion":{"type":"object","properties":{"name":{"type":"string","maxLength":150},"method":{"type":"string","enum":["WEBSITE","EVENT","CONVERSIONS_API"]},"type":{"type":"string","enum":["ADD_TO_CART","DOWNLOAD","INSTALL","KEY_PAGE_VIEW","LEAD","PURCHASE","SIGN_UP","OTHER","SAVE","START_CHECKOUT","SCHEDULE","VIEW_CONTENT","VIEW_VIDEO","ADD_BILLING_INFO","BOOK_APPOINTMENT","REQUEST_QUOTE","SEARCH","SUBSCRIBE","AD_CLICK","AD_VIEW","COMPLETE_SIGNUP","SUBMIT_APPLICATION","PHONE_CALL","INVITE","LOGIN","SHARE","DONATE","ADD_TO_LIST","START_TRIAL","OUTBOUND_CLICK","CONTACT","QUALIFIED_LEAD"]},"postClickAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"viewThroughAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"attributionType":{"type":"string","enum":["LAST_TOUCH_BY_CAMPAIGN","LAST_TOUCH_BY_CONVERSION"]},"urlMatchRuleExpression":{"maxItems":20,"type":"array","items":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"matchType":{"type":"string","enum":["EXACT","STARTS_WITH","CONTAINS"]},"matchValue":{"type":"string","maxLength":2000}},"required":["matchType","matchValue"],"additionalProperties":false}}},"valueType":{"type":"string","enum":["NO_VALUE","FIXED","DYNAMIC"]},"value":{"type":"string","maxLength":20}},"required":["name","method","type","postClickAttributionWindowSize","viewThroughAttributionWindowSize","attributionType","valueType"],"additionalProperties":false},"existingPost":{"anyOf":[{"type":"string","pattern":"^urn:li:(share|ugcPost):\\d{1,20}$"},{"type":"string","enum":[""]}]},"biddingStrategy":{"type":"string","enum":["MANUAL_CPC","MANUAL_CPM","MAXIMUM_DELIVERY","ENHANCED_CPC","MANUAL_CPV","TARGET_COST","COST_CAP"]},"optimizationGoal":{"type":"string","enum":["IMPRESSIONS","QUALIFIED_LEADS"]},"offsiteDeliveryEnabled":{"type":"boolean"},"excludedIabCategories":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^IAB\\d{1,2}(?:-\\d{1,3})?$"}},"audienceExpansionEnabled":{"type":"boolean"},"trackingParameters":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","maxLength":100},"kind":{"type":"string","enum":["custom","dynamic"]},"value":{"type":"string","maxLength":1000}},"required":["key","kind","value"],"additionalProperties":false}},"conversionIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,20}$"}},"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"string","enum":[""]}]},"headline":{"type":"string","maxLength":45},"landingUrl":{"type":"string","maxLength":2000},"altText":{"type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","maxLength":600},"landingUrl":{"type":"string","maxLength":2000},"ads":{"description":"The ads after the first, which the top-level ad fields describe, up to 5 ads in all. Each has its own name, text, media and destination; the format, Page and lead form are shared. Not available with existingPost.","maxItems":4,"type":"array","items":{"type":"object","properties":{"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"string","enum":[""]}]},"headline":{"type":"string","maxLength":45},"landingUrl":{"type":"string","maxLength":2000},"altText":{"type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","maxLength":600},"landingUrl":{"type":"string","maxLength":2000}},"required":["creativeName","headline","description","landingUrl"],"additionalProperties":false}},"selectedAd":{"description":"The ad open in the composer, by position. Ignored by creation.","type":"integer","minimum":0,"maximum":4},"pageId":{"type":"string","pattern":"^\\d{1,20}$"},"locationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"locationType":{"type":"string","enum":["locations","profileLocations"]},"excludedLocationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"profileLocale":{"type":"string","pattern":"^[a-z]{2}_[A-Z]{2}$"},"targeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"targetingGroups":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false}},"excludedTargeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"locationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"excludedLocationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"groupName":{"type":"string","maxLength":150},"campaignName":{"type":"string","maxLength":150},"budgetMode":{"type":"string","enum":["DAILY","LIFETIME","DAILY_AND_LIFETIME"]},"dailyBudget":{"type":"string","maxLength":20},"totalBudget":{"type":"string","maxLength":20},"bid":{"type":"string","maxLength":20},"startAt":{"type":"string","maxLength":40},"endAt":{"type":"string","maxLength":40},"noEndDate":{"type":"boolean"}},"required":["creativeName","headline","description","landingUrl","locationIds","groupName","campaignName","dailyBudget","totalBudget","bid","startAt","endAt"],"additionalProperties":false},{"type":"object","properties":{"parentRevision":{"description":"Server-bound inherited settings. Keep when saving a returned draft; recalculated on submission.","type":"string","pattern":"^[a-f0-9]{64}$"},"existingGroupId":{"type":"string","pattern":"^\\d{1,20}$"},"existingCampaignId":{"type":"string","pattern":"^\\d{1,20}$"},"useCampaignBudget":{"type":"boolean"},"groupBudgetOptimization":{"type":"string","enum":["DYNAMIC"]},"nonPolitical":{"description":"Confirms that no ad is political advertising under the law of the targeted countries, including EU law. The dashboard ticks it by default, and ads.linkedin.operations.create treats a missing value as true.","type":"boolean","enum":[true]},"format":{"type":"string","enum":["text","image","video","carousel","document","follower","spotlight"]},"objectiveType":{"type":"string","enum":["BRAND_AWARENESS","WEBSITE_VISIT","ENGAGEMENT","LEAD_GENERATION","WEBSITE_CONVERSION","VIDEO_VIEW"]},"leadFormId":{"type":"string","pattern":"^\\d{1,20}$"},"newLeadForm":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","minLength":1,"maxLength":60},"description":{"type":"string","maxLength":160},"privacyPolicyUrl":{"type":"string","maxLength":2000,"format":"uri"},"legalDisclaimer":{"type":"string","maxLength":2000},"confirmationMessage":{"type":"string","minLength":1,"maxLength":300},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"questions":{"minItems":1,"maxItems":12,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","minLength":1,"maxLength":300},"predefinedField":{"type":"string","enum":["FIRST_NAME","LAST_NAME","EMAIL","WORK_EMAIL","PHONE_NUMBER","WORK_PHONE_NUMBER","CITY","STATE","COUNTRY","ZIP_CODE","JOB_TITLE","JOB_FUNCTION","SENIORITY","COMPANY_NAME","COMPANY_SIZE","INDUSTRY","DEGREE","FIELD_OF_STUDY","SCHOOL","START_DATE","GRADUATION_DATE","GENDER","LINKEDIN_PROFILE_LINK"]},"required":{"type":"boolean"},"options":{"minItems":2,"maxItems":5,"type":"array","items":{"type":"string","minLength":1,"maxLength":100}}},"required":["label","required"],"additionalProperties":false}},"consents":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":2000},"required":{"type":"boolean"}},"required":["text","required"],"additionalProperties":false}},"hiddenFields":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":100},"value":{"type":"string","minLength":1,"maxLength":1000}},"required":["name","value"],"additionalProperties":false}}},"required":["name","headline","description","privacyPolicyUrl","confirmationMessage","landingUrl","questions"],"additionalProperties":false},"newConversion":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":150},"method":{"type":"string","enum":["WEBSITE","EVENT","CONVERSIONS_API"]},"type":{"type":"string","enum":["ADD_TO_CART","DOWNLOAD","INSTALL","KEY_PAGE_VIEW","LEAD","PURCHASE","SIGN_UP","OTHER","SAVE","START_CHECKOUT","SCHEDULE","VIEW_CONTENT","VIEW_VIDEO","ADD_BILLING_INFO","BOOK_APPOINTMENT","REQUEST_QUOTE","SEARCH","SUBSCRIBE","AD_CLICK","AD_VIEW","COMPLETE_SIGNUP","SUBMIT_APPLICATION","PHONE_CALL","INVITE","LOGIN","SHARE","DONATE","ADD_TO_LIST","START_TRIAL","OUTBOUND_CLICK","CONTACT","QUALIFIED_LEAD"]},"postClickAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"viewThroughAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"attributionType":{"type":"string","enum":["LAST_TOUCH_BY_CAMPAIGN","LAST_TOUCH_BY_CONVERSION"]},"urlMatchRuleExpression":{"minItems":1,"maxItems":20,"type":"array","items":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"matchType":{"type":"string","enum":["EXACT","STARTS_WITH","CONTAINS"]},"matchValue":{"type":"string","minLength":1,"maxLength":2000}},"required":["matchType","matchValue"],"additionalProperties":false}}},"valueType":{"type":"string","enum":["NO_VALUE","FIXED","DYNAMIC"]},"value":{"type":"string","pattern":"^\\d{1,12}(\\.\\d{1,2})?$"}},"required":["name","method","type","postClickAttributionWindowSize","viewThroughAttributionWindowSize","attributionType","valueType"],"additionalProperties":false},"existingPost":{"type":"string","pattern":"^urn:li:(share|ugcPost):\\d{1,20}$"},"biddingStrategy":{"type":"string","enum":["MANUAL_CPC","MANUAL_CPM","MAXIMUM_DELIVERY","ENHANCED_CPC","MANUAL_CPV","TARGET_COST","COST_CAP"]},"optimizationGoal":{"type":"string","enum":["IMPRESSIONS","QUALIFIED_LEADS"]},"offsiteDeliveryEnabled":{"type":"boolean"},"excludedIabCategories":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^IAB\\d{1,2}(?:-\\d{1,3})?$"}},"audienceExpansionEnabled":{"type":"boolean"},"trackingParameters":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1,"maxLength":100},"kind":{"type":"string","enum":["custom","dynamic"]},"value":{"type":"string","minLength":1,"maxLength":1000}},"required":["key","kind","value"],"additionalProperties":false}},"conversionIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,20}$"}},"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"headline":{"type":"string","minLength":1,"maxLength":45},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"altText":{"description":"Accessible image description, up to 300 characters.","type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","minLength":1,"maxLength":600},"landingUrl":{"type":"string","maxLength":2000},"ads":{"description":"The ads after the first, which the top-level ad fields describe, up to 5 ads in all. Each has its own name, text, media and destination; the format, Page and lead form are shared. Not available with existingPost.","maxItems":4,"type":"array","items":{"type":"object","properties":{"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"headline":{"type":"string","minLength":1,"maxLength":45},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"altText":{"description":"Accessible image description, up to 300 characters.","type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","minLength":1,"maxLength":600},"landingUrl":{"type":"string","maxLength":2000}},"required":["creativeName","headline","description","landingUrl"],"additionalProperties":false}},"selectedAd":{"description":"The ad open in the composer, by position. Ignored by creation.","type":"integer","minimum":0,"maximum":4},"pageId":{"type":"string","pattern":"^\\d{1,20}$"},"locationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"locationType":{"type":"string","enum":["locations","profileLocations"]},"excludedLocationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"profileLocale":{"type":"string","pattern":"^[a-z]{2}_[A-Z]{2}$"},"targeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"targetingGroups":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false}},"excludedTargeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"locationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"excludedLocationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"groupName":{"type":"string","minLength":1,"maxLength":150},"campaignName":{"type":"string","minLength":1,"maxLength":150},"budgetMode":{"type":"string","enum":["DAILY","LIFETIME","DAILY_AND_LIFETIME"]},"dailyBudget":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"totalBudget":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"bid":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"startAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"string","enum":[""]}]},"endAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"string","enum":[""]}]},"noEndDate":{"type":"boolean"}},"required":["creativeName","headline","description","landingUrl","locationIds","groupName","campaignName","dailyBudget","totalBudget","bid","startAt","endAt"],"additionalProperties":false}]},"state":{"type":"string","enum":["draft","ready","submitting","unknown","failed","complete"]},"step":{"type":"string","enum":["conversion","lead_form","assets","group","campaign","creative","sync"]},"groupId":{"nullable":true,"type":"string"},"campaignId":{"nullable":true,"type":"string"},"creativeId":{"description":"The first ad's creative ID, kept for older callers. ads lists every ad.","nullable":true,"type":"string"},"ads":{"description":"One entry per ad in the specification, in order, with the creative ID LinkedIn returned once it was created. Ads are created in order; a stopped creation continues from the first without an ID.","nullable":true,"type":"array","items":{"type":"object","properties":{"creativeId":{"nullable":true,"type":"string"}},"required":["creativeId"],"additionalProperties":false}},"leadFormId":{"nullable":true,"type":"string"},"conversionId":{"nullable":true,"type":"string"},"uploads":{"nullable":true,"type":"array","items":{"type":"object","properties":{"slot":{"type":"string","enum":["logo","background"]},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string","enum":["image","document","video"]},"urn":{"type":"string"},"status":{"type":"string","enum":["initializing","WAITING_UPLOAD","PROCESSING","AVAILABLE"]}},"required":["mediaId","kind","status"],"additionalProperties":false}},"error":{"nullable":true,"type":"string"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","requestKey","specification","state","step","groupId","campaignId","creativeId","ads","leadFormId","conversionId","uploads","error","createdAt","updatedAt"],"additionalProperties":false}},"page":{"type":"object","properties":{"limit":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"offset":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"total":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"hasMore":{"type":"boolean"}},"required":["limit","offset","total","hasMore"],"additionalProperties":false}},"required":["account","operations","page"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"LinkedIn OperationsList","tags":["Ads"]},"post":{"description":"Prepare a new hierarchy or child campaign for approval. Without approvalId returns approvalRequired and reviewUrl and creates nothing. Only the person signed in to Maeve can approve. Repeat the unchanged requestKey and specification with approvalId. Creates provider drafts through subsequent continue calls, never activates. One specification can hold up to 5 ads for the ad set, and one approval covers them all. Ad-only addition to an existing native campaign requires no new campaign approval. Submitted key replay returns the same operation. The account must be a LinkedIn account with campaign management access.","operationId":"PublicAdsController_linkedInOperationsCreate_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"requestKey":{"description":"Stable client UUID for this draft and submission. Reuse after an unknown response; a new key can create another campaign.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"specification":{"description":"Complete native specification. Omit empty existingPost when submitting. Eligibility is checked against the connected account. Optional imageAltText and imageDescription are for new single image ads only, and optional altText for each carousel card, up to 300 characters each. imageDescription shows only on Audience Network, so a new ad set needs offsiteDeliveryEnabled. New video ads accept videoThumbnailMediaId (JPG or PNG, up to 2 MB, matching the video dimensions) and videoCaptions (English plain-text SRT filename and UTF-8 content, up to 1 MB). To create several ads in the ad set, describe the first with the top-level ad fields and list the others in ads, up to 5 in all; each has its own name, text, media and destination, the format, Page and lead form are shared, and ads that use the same media share one upload. existingPost is a single-ad choice. One approval covers every ad.","type":"object","properties":{"parentRevision":{"description":"Server-bound inherited settings. Keep when saving a returned draft; recalculated on submission.","type":"string","pattern":"^[a-f0-9]{64}$"},"existingGroupId":{"type":"string","pattern":"^\\d{1,20}$"},"existingCampaignId":{"type":"string","pattern":"^\\d{1,20}$"},"useCampaignBudget":{"type":"boolean"},"groupBudgetOptimization":{"type":"string","enum":["DYNAMIC"]},"nonPolitical":{"description":"Confirms that no ad is political advertising under the law of the targeted countries, including EU law. The dashboard ticks it by default, and ads.linkedin.operations.create treats a missing value as true.","type":"boolean","enum":[true]},"format":{"type":"string","enum":["text","image","video","carousel","document","follower","spotlight"]},"objectiveType":{"type":"string","enum":["BRAND_AWARENESS","WEBSITE_VISIT","ENGAGEMENT","LEAD_GENERATION","WEBSITE_CONVERSION","VIDEO_VIEW"]},"leadFormId":{"type":"string","pattern":"^\\d{1,20}$"},"newLeadForm":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","minLength":1,"maxLength":60},"description":{"type":"string","maxLength":160},"privacyPolicyUrl":{"type":"string","maxLength":2000,"format":"uri"},"legalDisclaimer":{"type":"string","maxLength":2000},"confirmationMessage":{"type":"string","minLength":1,"maxLength":300},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"questions":{"minItems":1,"maxItems":12,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","minLength":1,"maxLength":300},"predefinedField":{"type":"string","enum":["FIRST_NAME","LAST_NAME","EMAIL","WORK_EMAIL","PHONE_NUMBER","WORK_PHONE_NUMBER","CITY","STATE","COUNTRY","ZIP_CODE","JOB_TITLE","JOB_FUNCTION","SENIORITY","COMPANY_NAME","COMPANY_SIZE","INDUSTRY","DEGREE","FIELD_OF_STUDY","SCHOOL","START_DATE","GRADUATION_DATE","GENDER","LINKEDIN_PROFILE_LINK"]},"required":{"type":"boolean"},"options":{"minItems":2,"maxItems":5,"type":"array","items":{"type":"string","minLength":1,"maxLength":100}}},"required":["label","required"],"additionalProperties":false}},"consents":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":2000},"required":{"type":"boolean"}},"required":["text","required"],"additionalProperties":false}},"hiddenFields":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":100},"value":{"type":"string","minLength":1,"maxLength":1000}},"required":["name","value"],"additionalProperties":false}}},"required":["name","headline","description","privacyPolicyUrl","confirmationMessage","landingUrl","questions"],"additionalProperties":false},"newConversion":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":150},"method":{"type":"string","enum":["WEBSITE","EVENT","CONVERSIONS_API"]},"type":{"type":"string","enum":["ADD_TO_CART","DOWNLOAD","INSTALL","KEY_PAGE_VIEW","LEAD","PURCHASE","SIGN_UP","OTHER","SAVE","START_CHECKOUT","SCHEDULE","VIEW_CONTENT","VIEW_VIDEO","ADD_BILLING_INFO","BOOK_APPOINTMENT","REQUEST_QUOTE","SEARCH","SUBSCRIBE","AD_CLICK","AD_VIEW","COMPLETE_SIGNUP","SUBMIT_APPLICATION","PHONE_CALL","INVITE","LOGIN","SHARE","DONATE","ADD_TO_LIST","START_TRIAL","OUTBOUND_CLICK","CONTACT","QUALIFIED_LEAD"]},"postClickAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"viewThroughAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"attributionType":{"type":"string","enum":["LAST_TOUCH_BY_CAMPAIGN","LAST_TOUCH_BY_CONVERSION"]},"urlMatchRuleExpression":{"minItems":1,"maxItems":20,"type":"array","items":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"matchType":{"type":"string","enum":["EXACT","STARTS_WITH","CONTAINS"]},"matchValue":{"type":"string","minLength":1,"maxLength":2000}},"required":["matchType","matchValue"],"additionalProperties":false}}},"valueType":{"type":"string","enum":["NO_VALUE","FIXED","DYNAMIC"]},"value":{"type":"string","pattern":"^\\d{1,12}(\\.\\d{1,2})?$"}},"required":["name","method","type","postClickAttributionWindowSize","viewThroughAttributionWindowSize","attributionType","valueType"],"additionalProperties":false},"existingPost":{"type":"string","pattern":"^urn:li:(share|ugcPost):\\d{1,20}$"},"biddingStrategy":{"type":"string","enum":["MANUAL_CPC","MANUAL_CPM","MAXIMUM_DELIVERY","ENHANCED_CPC","MANUAL_CPV","TARGET_COST","COST_CAP"]},"optimizationGoal":{"type":"string","enum":["IMPRESSIONS","QUALIFIED_LEADS"]},"offsiteDeliveryEnabled":{"type":"boolean"},"excludedIabCategories":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^IAB\\d{1,2}(?:-\\d{1,3})?$"}},"audienceExpansionEnabled":{"type":"boolean"},"trackingParameters":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1,"maxLength":100},"kind":{"type":"string","enum":["custom","dynamic"]},"value":{"type":"string","minLength":1,"maxLength":1000}},"required":["key","kind","value"],"additionalProperties":false}},"conversionIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,20}$"}},"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"headline":{"type":"string","minLength":1,"maxLength":45},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"altText":{"description":"Accessible image description, up to 300 characters.","type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","minLength":1,"maxLength":600},"landingUrl":{"type":"string","maxLength":2000},"ads":{"description":"The ads after the first, which the top-level ad fields describe, up to 5 ads in all. Each has its own name, text, media and destination; the format, Page and lead form are shared. Not available with existingPost.","maxItems":4,"type":"array","items":{"type":"object","properties":{"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"headline":{"type":"string","minLength":1,"maxLength":45},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"altText":{"description":"Accessible image description, up to 300 characters.","type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","minLength":1,"maxLength":600},"landingUrl":{"type":"string","maxLength":2000}},"required":["creativeName","headline","description","landingUrl"],"additionalProperties":false}},"selectedAd":{"description":"The ad open in the composer, by position. Ignored by creation.","type":"integer","minimum":0,"maximum":4},"pageId":{"type":"string","pattern":"^\\d{1,20}$"},"locationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"locationType":{"type":"string","enum":["locations","profileLocations"]},"excludedLocationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"profileLocale":{"type":"string","pattern":"^[a-z]{2}_[A-Z]{2}$"},"targeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"targetingGroups":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false}},"excludedTargeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"locationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"excludedLocationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"groupName":{"type":"string","minLength":1,"maxLength":150},"campaignName":{"type":"string","minLength":1,"maxLength":150},"budgetMode":{"type":"string","enum":["DAILY","LIFETIME","DAILY_AND_LIFETIME"]},"dailyBudget":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"totalBudget":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"bid":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"startAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"string","enum":[""]}]},"endAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"string","enum":[""]}]},"noEndDate":{"type":"boolean"}},"required":["creativeName","headline","description","landingUrl","locationIds","groupName","campaignName","dailyBudget","totalBudget","bid","startAt","endAt"],"additionalProperties":false},"approvalId":{"description":"Approval from the signed-in Maeve review page. Repeat the unchanged request with this ID.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"chatConfirmation":{"description":"Only when the workspace lets people approve paid ad creation in chat: the chatConfirmation text from the approval response, sent with its approvalId after the person agreed in this chat. Never send it before they agree.","type":"string","maxLength":100}},"required":["requestKey","specification"],"additionalProperties":false}}}},"responses":{"200":{"description":"LinkedIn OperationsCreate","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"anyOf":[{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"operation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"requestKey":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"specification":{"anyOf":[{"type":"object","properties":{"parentRevision":{"description":"Server-bound inherited settings. Keep when saving a returned draft; recalculated on submission.","type":"string","pattern":"^[a-f0-9]{64}$"},"existingGroupId":{"type":"string","pattern":"^\\d{1,20}$"},"existingCampaignId":{"type":"string","pattern":"^\\d{1,20}$"},"useCampaignBudget":{"type":"boolean"},"groupBudgetOptimization":{"type":"string","enum":["DYNAMIC"]},"nonPolitical":{"description":"Confirms that no ad is political advertising under the law of the targeted countries, including EU law. The dashboard ticks it by default, and ads.linkedin.operations.create treats a missing value as true.","type":"boolean","enum":[true]},"format":{"type":"string","enum":["text","image","video","carousel","document","follower","spotlight"]},"objectiveType":{"type":"string","enum":["BRAND_AWARENESS","WEBSITE_VISIT","ENGAGEMENT","LEAD_GENERATION","WEBSITE_CONVERSION","VIDEO_VIEW"]},"leadFormId":{"type":"string","pattern":"^\\d{1,20}$"},"newLeadForm":{"type":"object","properties":{"name":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":60},"description":{"type":"string","maxLength":160},"privacyPolicyUrl":{"type":"string","maxLength":2000},"legalDisclaimer":{"type":"string","maxLength":2000},"confirmationMessage":{"type":"string","maxLength":300},"landingUrl":{"type":"string","maxLength":2000},"questions":{"maxItems":12,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":300},"predefinedField":{"type":"string","enum":["FIRST_NAME","LAST_NAME","EMAIL","WORK_EMAIL","PHONE_NUMBER","WORK_PHONE_NUMBER","CITY","STATE","COUNTRY","ZIP_CODE","JOB_TITLE","JOB_FUNCTION","SENIORITY","COMPANY_NAME","COMPANY_SIZE","INDUSTRY","DEGREE","FIELD_OF_STUDY","SCHOOL","START_DATE","GRADUATION_DATE","GENDER","LINKEDIN_PROFILE_LINK"]},"required":{"type":"boolean"},"options":{"maxItems":5,"type":"array","items":{"type":"string","maxLength":100}}},"required":["label","required"],"additionalProperties":false}},"consents":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","maxLength":2000},"required":{"type":"boolean"}},"required":["text","required"],"additionalProperties":false}},"hiddenFields":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","maxLength":100},"value":{"type":"string","maxLength":1000}},"required":["name","value"],"additionalProperties":false}}},"required":["name","headline","description","privacyPolicyUrl","confirmationMessage","landingUrl","questions"],"additionalProperties":false},"newConversion":{"type":"object","properties":{"name":{"type":"string","maxLength":150},"method":{"type":"string","enum":["WEBSITE","EVENT","CONVERSIONS_API"]},"type":{"type":"string","enum":["ADD_TO_CART","DOWNLOAD","INSTALL","KEY_PAGE_VIEW","LEAD","PURCHASE","SIGN_UP","OTHER","SAVE","START_CHECKOUT","SCHEDULE","VIEW_CONTENT","VIEW_VIDEO","ADD_BILLING_INFO","BOOK_APPOINTMENT","REQUEST_QUOTE","SEARCH","SUBSCRIBE","AD_CLICK","AD_VIEW","COMPLETE_SIGNUP","SUBMIT_APPLICATION","PHONE_CALL","INVITE","LOGIN","SHARE","DONATE","ADD_TO_LIST","START_TRIAL","OUTBOUND_CLICK","CONTACT","QUALIFIED_LEAD"]},"postClickAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"viewThroughAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"attributionType":{"type":"string","enum":["LAST_TOUCH_BY_CAMPAIGN","LAST_TOUCH_BY_CONVERSION"]},"urlMatchRuleExpression":{"maxItems":20,"type":"array","items":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"matchType":{"type":"string","enum":["EXACT","STARTS_WITH","CONTAINS"]},"matchValue":{"type":"string","maxLength":2000}},"required":["matchType","matchValue"],"additionalProperties":false}}},"valueType":{"type":"string","enum":["NO_VALUE","FIXED","DYNAMIC"]},"value":{"type":"string","maxLength":20}},"required":["name","method","type","postClickAttributionWindowSize","viewThroughAttributionWindowSize","attributionType","valueType"],"additionalProperties":false},"existingPost":{"anyOf":[{"type":"string","pattern":"^urn:li:(share|ugcPost):\\d{1,20}$"},{"type":"string","enum":[""]}]},"biddingStrategy":{"type":"string","enum":["MANUAL_CPC","MANUAL_CPM","MAXIMUM_DELIVERY","ENHANCED_CPC","MANUAL_CPV","TARGET_COST","COST_CAP"]},"optimizationGoal":{"type":"string","enum":["IMPRESSIONS","QUALIFIED_LEADS"]},"offsiteDeliveryEnabled":{"type":"boolean"},"excludedIabCategories":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^IAB\\d{1,2}(?:-\\d{1,3})?$"}},"audienceExpansionEnabled":{"type":"boolean"},"trackingParameters":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","maxLength":100},"kind":{"type":"string","enum":["custom","dynamic"]},"value":{"type":"string","maxLength":1000}},"required":["key","kind","value"],"additionalProperties":false}},"conversionIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,20}$"}},"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"string","enum":[""]}]},"headline":{"type":"string","maxLength":45},"landingUrl":{"type":"string","maxLength":2000},"altText":{"type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","maxLength":600},"landingUrl":{"type":"string","maxLength":2000},"ads":{"description":"The ads after the first, which the top-level ad fields describe, up to 5 ads in all. Each has its own name, text, media and destination; the format, Page and lead form are shared. Not available with existingPost.","maxItems":4,"type":"array","items":{"type":"object","properties":{"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"string","enum":[""]}]},"headline":{"type":"string","maxLength":45},"landingUrl":{"type":"string","maxLength":2000},"altText":{"type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","maxLength":600},"landingUrl":{"type":"string","maxLength":2000}},"required":["creativeName","headline","description","landingUrl"],"additionalProperties":false}},"selectedAd":{"description":"The ad open in the composer, by position. Ignored by creation.","type":"integer","minimum":0,"maximum":4},"pageId":{"type":"string","pattern":"^\\d{1,20}$"},"locationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"locationType":{"type":"string","enum":["locations","profileLocations"]},"excludedLocationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"profileLocale":{"type":"string","pattern":"^[a-z]{2}_[A-Z]{2}$"},"targeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"targetingGroups":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false}},"excludedTargeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"locationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"excludedLocationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"groupName":{"type":"string","maxLength":150},"campaignName":{"type":"string","maxLength":150},"budgetMode":{"type":"string","enum":["DAILY","LIFETIME","DAILY_AND_LIFETIME"]},"dailyBudget":{"type":"string","maxLength":20},"totalBudget":{"type":"string","maxLength":20},"bid":{"type":"string","maxLength":20},"startAt":{"type":"string","maxLength":40},"endAt":{"type":"string","maxLength":40},"noEndDate":{"type":"boolean"}},"required":["creativeName","headline","description","landingUrl","locationIds","groupName","campaignName","dailyBudget","totalBudget","bid","startAt","endAt"],"additionalProperties":false},{"type":"object","properties":{"parentRevision":{"description":"Server-bound inherited settings. Keep when saving a returned draft; recalculated on submission.","type":"string","pattern":"^[a-f0-9]{64}$"},"existingGroupId":{"type":"string","pattern":"^\\d{1,20}$"},"existingCampaignId":{"type":"string","pattern":"^\\d{1,20}$"},"useCampaignBudget":{"type":"boolean"},"groupBudgetOptimization":{"type":"string","enum":["DYNAMIC"]},"nonPolitical":{"description":"Confirms that no ad is political advertising under the law of the targeted countries, including EU law. The dashboard ticks it by default, and ads.linkedin.operations.create treats a missing value as true.","type":"boolean","enum":[true]},"format":{"type":"string","enum":["text","image","video","carousel","document","follower","spotlight"]},"objectiveType":{"type":"string","enum":["BRAND_AWARENESS","WEBSITE_VISIT","ENGAGEMENT","LEAD_GENERATION","WEBSITE_CONVERSION","VIDEO_VIEW"]},"leadFormId":{"type":"string","pattern":"^\\d{1,20}$"},"newLeadForm":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","minLength":1,"maxLength":60},"description":{"type":"string","maxLength":160},"privacyPolicyUrl":{"type":"string","maxLength":2000,"format":"uri"},"legalDisclaimer":{"type":"string","maxLength":2000},"confirmationMessage":{"type":"string","minLength":1,"maxLength":300},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"questions":{"minItems":1,"maxItems":12,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","minLength":1,"maxLength":300},"predefinedField":{"type":"string","enum":["FIRST_NAME","LAST_NAME","EMAIL","WORK_EMAIL","PHONE_NUMBER","WORK_PHONE_NUMBER","CITY","STATE","COUNTRY","ZIP_CODE","JOB_TITLE","JOB_FUNCTION","SENIORITY","COMPANY_NAME","COMPANY_SIZE","INDUSTRY","DEGREE","FIELD_OF_STUDY","SCHOOL","START_DATE","GRADUATION_DATE","GENDER","LINKEDIN_PROFILE_LINK"]},"required":{"type":"boolean"},"options":{"minItems":2,"maxItems":5,"type":"array","items":{"type":"string","minLength":1,"maxLength":100}}},"required":["label","required"],"additionalProperties":false}},"consents":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":2000},"required":{"type":"boolean"}},"required":["text","required"],"additionalProperties":false}},"hiddenFields":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":100},"value":{"type":"string","minLength":1,"maxLength":1000}},"required":["name","value"],"additionalProperties":false}}},"required":["name","headline","description","privacyPolicyUrl","confirmationMessage","landingUrl","questions"],"additionalProperties":false},"newConversion":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":150},"method":{"type":"string","enum":["WEBSITE","EVENT","CONVERSIONS_API"]},"type":{"type":"string","enum":["ADD_TO_CART","DOWNLOAD","INSTALL","KEY_PAGE_VIEW","LEAD","PURCHASE","SIGN_UP","OTHER","SAVE","START_CHECKOUT","SCHEDULE","VIEW_CONTENT","VIEW_VIDEO","ADD_BILLING_INFO","BOOK_APPOINTMENT","REQUEST_QUOTE","SEARCH","SUBSCRIBE","AD_CLICK","AD_VIEW","COMPLETE_SIGNUP","SUBMIT_APPLICATION","PHONE_CALL","INVITE","LOGIN","SHARE","DONATE","ADD_TO_LIST","START_TRIAL","OUTBOUND_CLICK","CONTACT","QUALIFIED_LEAD"]},"postClickAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"viewThroughAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"attributionType":{"type":"string","enum":["LAST_TOUCH_BY_CAMPAIGN","LAST_TOUCH_BY_CONVERSION"]},"urlMatchRuleExpression":{"minItems":1,"maxItems":20,"type":"array","items":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"matchType":{"type":"string","enum":["EXACT","STARTS_WITH","CONTAINS"]},"matchValue":{"type":"string","minLength":1,"maxLength":2000}},"required":["matchType","matchValue"],"additionalProperties":false}}},"valueType":{"type":"string","enum":["NO_VALUE","FIXED","DYNAMIC"]},"value":{"type":"string","pattern":"^\\d{1,12}(\\.\\d{1,2})?$"}},"required":["name","method","type","postClickAttributionWindowSize","viewThroughAttributionWindowSize","attributionType","valueType"],"additionalProperties":false},"existingPost":{"type":"string","pattern":"^urn:li:(share|ugcPost):\\d{1,20}$"},"biddingStrategy":{"type":"string","enum":["MANUAL_CPC","MANUAL_CPM","MAXIMUM_DELIVERY","ENHANCED_CPC","MANUAL_CPV","TARGET_COST","COST_CAP"]},"optimizationGoal":{"type":"string","enum":["IMPRESSIONS","QUALIFIED_LEADS"]},"offsiteDeliveryEnabled":{"type":"boolean"},"excludedIabCategories":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^IAB\\d{1,2}(?:-\\d{1,3})?$"}},"audienceExpansionEnabled":{"type":"boolean"},"trackingParameters":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1,"maxLength":100},"kind":{"type":"string","enum":["custom","dynamic"]},"value":{"type":"string","minLength":1,"maxLength":1000}},"required":["key","kind","value"],"additionalProperties":false}},"conversionIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,20}$"}},"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"headline":{"type":"string","minLength":1,"maxLength":45},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"altText":{"description":"Accessible image description, up to 300 characters.","type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","minLength":1,"maxLength":600},"landingUrl":{"type":"string","maxLength":2000},"ads":{"description":"The ads after the first, which the top-level ad fields describe, up to 5 ads in all. Each has its own name, text, media and destination; the format, Page and lead form are shared. Not available with existingPost.","maxItems":4,"type":"array","items":{"type":"object","properties":{"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"headline":{"type":"string","minLength":1,"maxLength":45},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"altText":{"description":"Accessible image description, up to 300 characters.","type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","minLength":1,"maxLength":600},"landingUrl":{"type":"string","maxLength":2000}},"required":["creativeName","headline","description","landingUrl"],"additionalProperties":false}},"selectedAd":{"description":"The ad open in the composer, by position. Ignored by creation.","type":"integer","minimum":0,"maximum":4},"pageId":{"type":"string","pattern":"^\\d{1,20}$"},"locationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"locationType":{"type":"string","enum":["locations","profileLocations"]},"excludedLocationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"profileLocale":{"type":"string","pattern":"^[a-z]{2}_[A-Z]{2}$"},"targeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"targetingGroups":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false}},"excludedTargeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"locationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"excludedLocationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"groupName":{"type":"string","minLength":1,"maxLength":150},"campaignName":{"type":"string","minLength":1,"maxLength":150},"budgetMode":{"type":"string","enum":["DAILY","LIFETIME","DAILY_AND_LIFETIME"]},"dailyBudget":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"totalBudget":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"bid":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"startAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"string","enum":[""]}]},"endAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"string","enum":[""]}]},"noEndDate":{"type":"boolean"}},"required":["creativeName","headline","description","landingUrl","locationIds","groupName","campaignName","dailyBudget","totalBudget","bid","startAt","endAt"],"additionalProperties":false}]},"state":{"type":"string","enum":["draft","ready","submitting","unknown","failed","complete"]},"step":{"type":"string","enum":["conversion","lead_form","assets","group","campaign","creative","sync"]},"groupId":{"nullable":true,"type":"string"},"campaignId":{"nullable":true,"type":"string"},"creativeId":{"description":"The first ad's creative ID, kept for older callers. ads lists every ad.","nullable":true,"type":"string"},"ads":{"description":"One entry per ad in the specification, in order, with the creative ID LinkedIn returned once it was created. Ads are created in order; a stopped creation continues from the first without an ID.","nullable":true,"type":"array","items":{"type":"object","properties":{"creativeId":{"nullable":true,"type":"string"}},"required":["creativeId"],"additionalProperties":false}},"leadFormId":{"nullable":true,"type":"string"},"conversionId":{"nullable":true,"type":"string"},"uploads":{"nullable":true,"type":"array","items":{"type":"object","properties":{"slot":{"type":"string","enum":["logo","background"]},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string","enum":["image","document","video"]},"urn":{"type":"string"},"status":{"type":"string","enum":["initializing","WAITING_UPLOAD","PROCESSING","AVAILABLE"]}},"required":["mediaId","kind","status"],"additionalProperties":false}},"error":{"nullable":true,"type":"string"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","requestKey","specification","state","step","groupId","campaignId","creativeId","ads","leadFormId","conversionId","uploads","error","createdAt","updatedAt"],"additionalProperties":false},"nextStep":{"type":"string"},"approvalRequired":{"type":"boolean","enum":[false]}},"required":["account","money","operation","nextStep","approvalRequired"],"additionalProperties":false},{"type":"object","properties":{"approvalRequired":{"type":"boolean","enum":[true]},"approval":{"type":"object","properties":{"id":{"type":"string"},"status":{"description":"pending waits for the person. approved can be used once. consumed has been used. declined and expired cannot be used.","type":"string","enum":["pending","approved","declined","expired","consumed"]},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"accountId":{"type":"string"},"reviewUrl":{"description":"The Maeve page where the person who asked reviews and decides. Opening it does not approve.","type":"string"},"requestedAt":{"type":"string"},"expiresAt":{"type":"string"},"decidedAt":{"nullable":true,"type":"string"},"declineNote":{"description":"What the person said should change when they declined. Change the request to match before asking again.","nullable":true,"type":"string"},"summary":{"nullable":true,"type":"object","properties":{"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"title":{"description":"What will be created, in plain words.","type":"string"},"account":{"type":"object","properties":{"id":{"type":"string"},"name":{"nullable":true,"type":"string"},"providerAccountId":{"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"nullable":true,"type":"string"}},"required":["id","name","providerAccountId","currency","timezone"],"additionalProperties":false},"objective":{"description":"The objective as the platform names it.","type":"string"},"hierarchy":{"description":"Every entity the request creates or adds to, from the campaign down.","type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"},"name":{"type":"string"},"existing":{"description":"True when this entity already exists and is only added to.","type":"boolean"}},"required":["level","nativeType","name","existing"],"additionalProperties":false}},"creative":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"audience":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"budgets":{"type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set"]},"kind":{"type":"string","enum":["daily","lifetime"]},"amountMicros":{"type":"string"},"currency":{"type":"string"},"name":{"description":"The campaign or ad set this budget belongs to, when there are several.","type":"string"}},"required":["level","kind","amountMicros","currency"],"additionalProperties":false}},"schedule":{"type":"object","properties":{"startAt":{"type":"string"},"endAt":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone of the ad account.","nullable":true,"type":"string"}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"initialState":{"description":"The state the platform creates it in.","type":"string","enum":["paused","disabled","draft","enabled"]},"activatesDelivery":{"description":"True when this request also starts delivery, so the budget can be spent without another step.","type":"boolean"}},"required":["initialState","activatesDelivery"],"additionalProperties":false}},"required":["platform","operation","title","account","objective","hierarchy","creative","audience","budgets","schedule","delivery"],"additionalProperties":false}},"required":["id","status","platform","operation","accountId","reviewUrl","requestedAt","expiresAt","decidedAt","summary"],"additionalProperties":false},"chatConfirmation":{"description":"Present when the workspace lets the person approve in chat. Show them approval.summary and ask. Only after they agree, send the same request again with approvalId and this text as chatConfirmation. A value returned here is not permission.","type":"string"},"nextStep":{"description":"What to do with this approval before sending the request again.","type":"string"}},"required":["approvalRequired","approval","nextStep"],"additionalProperties":false}]},"meta":{"type":"null","nullable":true,"example":null}}}}}},"202":{"description":"Nothing was created. The request is waiting for the person to approve it in Maeve.","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"approvalRequired":{"type":"boolean","enum":[true]},"approval":{"type":"object","properties":{"id":{"type":"string"},"status":{"description":"pending waits for the person. approved can be used once. consumed has been used. declined and expired cannot be used.","type":"string","enum":["pending","approved","declined","expired","consumed"]},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"accountId":{"type":"string"},"reviewUrl":{"description":"The Maeve page where the person who asked reviews and decides. Opening it does not approve.","type":"string"},"requestedAt":{"type":"string"},"expiresAt":{"type":"string"},"decidedAt":{"nullable":true,"type":"string"},"declineNote":{"description":"What the person said should change when they declined. Change the request to match before asking again.","nullable":true,"type":"string"},"summary":{"nullable":true,"type":"object","properties":{"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"title":{"description":"What will be created, in plain words.","type":"string"},"account":{"type":"object","properties":{"id":{"type":"string"},"name":{"nullable":true,"type":"string"},"providerAccountId":{"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"nullable":true,"type":"string"}},"required":["id","name","providerAccountId","currency","timezone"],"additionalProperties":false},"objective":{"description":"The objective as the platform names it.","type":"string"},"hierarchy":{"description":"Every entity the request creates or adds to, from the campaign down.","type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"},"name":{"type":"string"},"existing":{"description":"True when this entity already exists and is only added to.","type":"boolean"}},"required":["level","nativeType","name","existing"],"additionalProperties":false}},"creative":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"audience":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"budgets":{"type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set"]},"kind":{"type":"string","enum":["daily","lifetime"]},"amountMicros":{"type":"string"},"currency":{"type":"string"},"name":{"description":"The campaign or ad set this budget belongs to, when there are several.","type":"string"}},"required":["level","kind","amountMicros","currency"],"additionalProperties":false}},"schedule":{"type":"object","properties":{"startAt":{"type":"string"},"endAt":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone of the ad account.","nullable":true,"type":"string"}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"initialState":{"description":"The state the platform creates it in.","type":"string","enum":["paused","disabled","draft","enabled"]},"activatesDelivery":{"description":"True when this request also starts delivery, so the budget can be spent without another step.","type":"boolean"}},"required":["initialState","activatesDelivery"],"additionalProperties":false}},"required":["platform","operation","title","account","objective","hierarchy","creative","audience","budgets","schedule","delivery"],"additionalProperties":false}},"required":["id","status","platform","operation","accountId","reviewUrl","requestedAt","expiresAt","decidedAt","summary"],"additionalProperties":false},"chatConfirmation":{"description":"Present when the workspace lets the person approve in chat. Show them approval.summary and ask. Only after they agree, send the same request again with approvalId and this text as chatConfirmation. A value returned here is not permission.","type":"string"},"nextStep":{"description":"What to do with this approval before sending the request again.","type":"string"}},"required":["approvalRequired","approval","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"LinkedIn OperationsCreate","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/operations/{operationId}":{"get":{"description":"Read the saved specification, state and provider IDs of one operation. Use this after a lost response and before recovery. The account must be a LinkedIn account with campaign management access. Read-only.","operationId":"PublicAdsController_linkedInOperationsGet_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"operationId","required":true,"in":"path","description":"Local LinkedIn creation operation UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"LinkedIn OperationsGet","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"operation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"requestKey":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"specification":{"anyOf":[{"type":"object","properties":{"parentRevision":{"description":"Server-bound inherited settings. Keep when saving a returned draft; recalculated on submission.","type":"string","pattern":"^[a-f0-9]{64}$"},"existingGroupId":{"type":"string","pattern":"^\\d{1,20}$"},"existingCampaignId":{"type":"string","pattern":"^\\d{1,20}$"},"useCampaignBudget":{"type":"boolean"},"groupBudgetOptimization":{"type":"string","enum":["DYNAMIC"]},"nonPolitical":{"description":"Confirms that no ad is political advertising under the law of the targeted countries, including EU law. The dashboard ticks it by default, and ads.linkedin.operations.create treats a missing value as true.","type":"boolean","enum":[true]},"format":{"type":"string","enum":["text","image","video","carousel","document","follower","spotlight"]},"objectiveType":{"type":"string","enum":["BRAND_AWARENESS","WEBSITE_VISIT","ENGAGEMENT","LEAD_GENERATION","WEBSITE_CONVERSION","VIDEO_VIEW"]},"leadFormId":{"type":"string","pattern":"^\\d{1,20}$"},"newLeadForm":{"type":"object","properties":{"name":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":60},"description":{"type":"string","maxLength":160},"privacyPolicyUrl":{"type":"string","maxLength":2000},"legalDisclaimer":{"type":"string","maxLength":2000},"confirmationMessage":{"type":"string","maxLength":300},"landingUrl":{"type":"string","maxLength":2000},"questions":{"maxItems":12,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":300},"predefinedField":{"type":"string","enum":["FIRST_NAME","LAST_NAME","EMAIL","WORK_EMAIL","PHONE_NUMBER","WORK_PHONE_NUMBER","CITY","STATE","COUNTRY","ZIP_CODE","JOB_TITLE","JOB_FUNCTION","SENIORITY","COMPANY_NAME","COMPANY_SIZE","INDUSTRY","DEGREE","FIELD_OF_STUDY","SCHOOL","START_DATE","GRADUATION_DATE","GENDER","LINKEDIN_PROFILE_LINK"]},"required":{"type":"boolean"},"options":{"maxItems":5,"type":"array","items":{"type":"string","maxLength":100}}},"required":["label","required"],"additionalProperties":false}},"consents":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","maxLength":2000},"required":{"type":"boolean"}},"required":["text","required"],"additionalProperties":false}},"hiddenFields":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","maxLength":100},"value":{"type":"string","maxLength":1000}},"required":["name","value"],"additionalProperties":false}}},"required":["name","headline","description","privacyPolicyUrl","confirmationMessage","landingUrl","questions"],"additionalProperties":false},"newConversion":{"type":"object","properties":{"name":{"type":"string","maxLength":150},"method":{"type":"string","enum":["WEBSITE","EVENT","CONVERSIONS_API"]},"type":{"type":"string","enum":["ADD_TO_CART","DOWNLOAD","INSTALL","KEY_PAGE_VIEW","LEAD","PURCHASE","SIGN_UP","OTHER","SAVE","START_CHECKOUT","SCHEDULE","VIEW_CONTENT","VIEW_VIDEO","ADD_BILLING_INFO","BOOK_APPOINTMENT","REQUEST_QUOTE","SEARCH","SUBSCRIBE","AD_CLICK","AD_VIEW","COMPLETE_SIGNUP","SUBMIT_APPLICATION","PHONE_CALL","INVITE","LOGIN","SHARE","DONATE","ADD_TO_LIST","START_TRIAL","OUTBOUND_CLICK","CONTACT","QUALIFIED_LEAD"]},"postClickAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"viewThroughAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"attributionType":{"type":"string","enum":["LAST_TOUCH_BY_CAMPAIGN","LAST_TOUCH_BY_CONVERSION"]},"urlMatchRuleExpression":{"maxItems":20,"type":"array","items":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"matchType":{"type":"string","enum":["EXACT","STARTS_WITH","CONTAINS"]},"matchValue":{"type":"string","maxLength":2000}},"required":["matchType","matchValue"],"additionalProperties":false}}},"valueType":{"type":"string","enum":["NO_VALUE","FIXED","DYNAMIC"]},"value":{"type":"string","maxLength":20}},"required":["name","method","type","postClickAttributionWindowSize","viewThroughAttributionWindowSize","attributionType","valueType"],"additionalProperties":false},"existingPost":{"anyOf":[{"type":"string","pattern":"^urn:li:(share|ugcPost):\\d{1,20}$"},{"type":"string","enum":[""]}]},"biddingStrategy":{"type":"string","enum":["MANUAL_CPC","MANUAL_CPM","MAXIMUM_DELIVERY","ENHANCED_CPC","MANUAL_CPV","TARGET_COST","COST_CAP"]},"optimizationGoal":{"type":"string","enum":["IMPRESSIONS","QUALIFIED_LEADS"]},"offsiteDeliveryEnabled":{"type":"boolean"},"excludedIabCategories":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^IAB\\d{1,2}(?:-\\d{1,3})?$"}},"audienceExpansionEnabled":{"type":"boolean"},"trackingParameters":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","maxLength":100},"kind":{"type":"string","enum":["custom","dynamic"]},"value":{"type":"string","maxLength":1000}},"required":["key","kind","value"],"additionalProperties":false}},"conversionIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,20}$"}},"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"string","enum":[""]}]},"headline":{"type":"string","maxLength":45},"landingUrl":{"type":"string","maxLength":2000},"altText":{"type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","maxLength":600},"landingUrl":{"type":"string","maxLength":2000},"ads":{"description":"The ads after the first, which the top-level ad fields describe, up to 5 ads in all. Each has its own name, text, media and destination; the format, Page and lead form are shared. Not available with existingPost.","maxItems":4,"type":"array","items":{"type":"object","properties":{"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"string","enum":[""]}]},"headline":{"type":"string","maxLength":45},"landingUrl":{"type":"string","maxLength":2000},"altText":{"type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","maxLength":600},"landingUrl":{"type":"string","maxLength":2000}},"required":["creativeName","headline","description","landingUrl"],"additionalProperties":false}},"selectedAd":{"description":"The ad open in the composer, by position. Ignored by creation.","type":"integer","minimum":0,"maximum":4},"pageId":{"type":"string","pattern":"^\\d{1,20}$"},"locationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"locationType":{"type":"string","enum":["locations","profileLocations"]},"excludedLocationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"profileLocale":{"type":"string","pattern":"^[a-z]{2}_[A-Z]{2}$"},"targeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"targetingGroups":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false}},"excludedTargeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"locationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"excludedLocationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"groupName":{"type":"string","maxLength":150},"campaignName":{"type":"string","maxLength":150},"budgetMode":{"type":"string","enum":["DAILY","LIFETIME","DAILY_AND_LIFETIME"]},"dailyBudget":{"type":"string","maxLength":20},"totalBudget":{"type":"string","maxLength":20},"bid":{"type":"string","maxLength":20},"startAt":{"type":"string","maxLength":40},"endAt":{"type":"string","maxLength":40},"noEndDate":{"type":"boolean"}},"required":["creativeName","headline","description","landingUrl","locationIds","groupName","campaignName","dailyBudget","totalBudget","bid","startAt","endAt"],"additionalProperties":false},{"type":"object","properties":{"parentRevision":{"description":"Server-bound inherited settings. Keep when saving a returned draft; recalculated on submission.","type":"string","pattern":"^[a-f0-9]{64}$"},"existingGroupId":{"type":"string","pattern":"^\\d{1,20}$"},"existingCampaignId":{"type":"string","pattern":"^\\d{1,20}$"},"useCampaignBudget":{"type":"boolean"},"groupBudgetOptimization":{"type":"string","enum":["DYNAMIC"]},"nonPolitical":{"description":"Confirms that no ad is political advertising under the law of the targeted countries, including EU law. The dashboard ticks it by default, and ads.linkedin.operations.create treats a missing value as true.","type":"boolean","enum":[true]},"format":{"type":"string","enum":["text","image","video","carousel","document","follower","spotlight"]},"objectiveType":{"type":"string","enum":["BRAND_AWARENESS","WEBSITE_VISIT","ENGAGEMENT","LEAD_GENERATION","WEBSITE_CONVERSION","VIDEO_VIEW"]},"leadFormId":{"type":"string","pattern":"^\\d{1,20}$"},"newLeadForm":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","minLength":1,"maxLength":60},"description":{"type":"string","maxLength":160},"privacyPolicyUrl":{"type":"string","maxLength":2000,"format":"uri"},"legalDisclaimer":{"type":"string","maxLength":2000},"confirmationMessage":{"type":"string","minLength":1,"maxLength":300},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"questions":{"minItems":1,"maxItems":12,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","minLength":1,"maxLength":300},"predefinedField":{"type":"string","enum":["FIRST_NAME","LAST_NAME","EMAIL","WORK_EMAIL","PHONE_NUMBER","WORK_PHONE_NUMBER","CITY","STATE","COUNTRY","ZIP_CODE","JOB_TITLE","JOB_FUNCTION","SENIORITY","COMPANY_NAME","COMPANY_SIZE","INDUSTRY","DEGREE","FIELD_OF_STUDY","SCHOOL","START_DATE","GRADUATION_DATE","GENDER","LINKEDIN_PROFILE_LINK"]},"required":{"type":"boolean"},"options":{"minItems":2,"maxItems":5,"type":"array","items":{"type":"string","minLength":1,"maxLength":100}}},"required":["label","required"],"additionalProperties":false}},"consents":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":2000},"required":{"type":"boolean"}},"required":["text","required"],"additionalProperties":false}},"hiddenFields":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":100},"value":{"type":"string","minLength":1,"maxLength":1000}},"required":["name","value"],"additionalProperties":false}}},"required":["name","headline","description","privacyPolicyUrl","confirmationMessage","landingUrl","questions"],"additionalProperties":false},"newConversion":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":150},"method":{"type":"string","enum":["WEBSITE","EVENT","CONVERSIONS_API"]},"type":{"type":"string","enum":["ADD_TO_CART","DOWNLOAD","INSTALL","KEY_PAGE_VIEW","LEAD","PURCHASE","SIGN_UP","OTHER","SAVE","START_CHECKOUT","SCHEDULE","VIEW_CONTENT","VIEW_VIDEO","ADD_BILLING_INFO","BOOK_APPOINTMENT","REQUEST_QUOTE","SEARCH","SUBSCRIBE","AD_CLICK","AD_VIEW","COMPLETE_SIGNUP","SUBMIT_APPLICATION","PHONE_CALL","INVITE","LOGIN","SHARE","DONATE","ADD_TO_LIST","START_TRIAL","OUTBOUND_CLICK","CONTACT","QUALIFIED_LEAD"]},"postClickAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"viewThroughAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"attributionType":{"type":"string","enum":["LAST_TOUCH_BY_CAMPAIGN","LAST_TOUCH_BY_CONVERSION"]},"urlMatchRuleExpression":{"minItems":1,"maxItems":20,"type":"array","items":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"matchType":{"type":"string","enum":["EXACT","STARTS_WITH","CONTAINS"]},"matchValue":{"type":"string","minLength":1,"maxLength":2000}},"required":["matchType","matchValue"],"additionalProperties":false}}},"valueType":{"type":"string","enum":["NO_VALUE","FIXED","DYNAMIC"]},"value":{"type":"string","pattern":"^\\d{1,12}(\\.\\d{1,2})?$"}},"required":["name","method","type","postClickAttributionWindowSize","viewThroughAttributionWindowSize","attributionType","valueType"],"additionalProperties":false},"existingPost":{"type":"string","pattern":"^urn:li:(share|ugcPost):\\d{1,20}$"},"biddingStrategy":{"type":"string","enum":["MANUAL_CPC","MANUAL_CPM","MAXIMUM_DELIVERY","ENHANCED_CPC","MANUAL_CPV","TARGET_COST","COST_CAP"]},"optimizationGoal":{"type":"string","enum":["IMPRESSIONS","QUALIFIED_LEADS"]},"offsiteDeliveryEnabled":{"type":"boolean"},"excludedIabCategories":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^IAB\\d{1,2}(?:-\\d{1,3})?$"}},"audienceExpansionEnabled":{"type":"boolean"},"trackingParameters":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1,"maxLength":100},"kind":{"type":"string","enum":["custom","dynamic"]},"value":{"type":"string","minLength":1,"maxLength":1000}},"required":["key","kind","value"],"additionalProperties":false}},"conversionIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,20}$"}},"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"headline":{"type":"string","minLength":1,"maxLength":45},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"altText":{"description":"Accessible image description, up to 300 characters.","type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","minLength":1,"maxLength":600},"landingUrl":{"type":"string","maxLength":2000},"ads":{"description":"The ads after the first, which the top-level ad fields describe, up to 5 ads in all. Each has its own name, text, media and destination; the format, Page and lead form are shared. Not available with existingPost.","maxItems":4,"type":"array","items":{"type":"object","properties":{"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"headline":{"type":"string","minLength":1,"maxLength":45},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"altText":{"description":"Accessible image description, up to 300 characters.","type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","minLength":1,"maxLength":600},"landingUrl":{"type":"string","maxLength":2000}},"required":["creativeName","headline","description","landingUrl"],"additionalProperties":false}},"selectedAd":{"description":"The ad open in the composer, by position. Ignored by creation.","type":"integer","minimum":0,"maximum":4},"pageId":{"type":"string","pattern":"^\\d{1,20}$"},"locationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"locationType":{"type":"string","enum":["locations","profileLocations"]},"excludedLocationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"profileLocale":{"type":"string","pattern":"^[a-z]{2}_[A-Z]{2}$"},"targeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"targetingGroups":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false}},"excludedTargeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"locationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"excludedLocationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"groupName":{"type":"string","minLength":1,"maxLength":150},"campaignName":{"type":"string","minLength":1,"maxLength":150},"budgetMode":{"type":"string","enum":["DAILY","LIFETIME","DAILY_AND_LIFETIME"]},"dailyBudget":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"totalBudget":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"bid":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"startAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"string","enum":[""]}]},"endAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"string","enum":[""]}]},"noEndDate":{"type":"boolean"}},"required":["creativeName","headline","description","landingUrl","locationIds","groupName","campaignName","dailyBudget","totalBudget","bid","startAt","endAt"],"additionalProperties":false}]},"state":{"type":"string","enum":["draft","ready","submitting","unknown","failed","complete"]},"step":{"type":"string","enum":["conversion","lead_form","assets","group","campaign","creative","sync"]},"groupId":{"nullable":true,"type":"string"},"campaignId":{"nullable":true,"type":"string"},"creativeId":{"description":"The first ad's creative ID, kept for older callers. ads lists every ad.","nullable":true,"type":"string"},"ads":{"description":"One entry per ad in the specification, in order, with the creative ID LinkedIn returned once it was created. Ads are created in order; a stopped creation continues from the first without an ID.","nullable":true,"type":"array","items":{"type":"object","properties":{"creativeId":{"nullable":true,"type":"string"}},"required":["creativeId"],"additionalProperties":false}},"leadFormId":{"nullable":true,"type":"string"},"conversionId":{"nullable":true,"type":"string"},"uploads":{"nullable":true,"type":"array","items":{"type":"object","properties":{"slot":{"type":"string","enum":["logo","background"]},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string","enum":["image","document","video"]},"urn":{"type":"string"},"status":{"type":"string","enum":["initializing","WAITING_UPLOAD","PROCESSING","AVAILABLE"]}},"required":["mediaId","kind","status"],"additionalProperties":false}},"error":{"nullable":true,"type":"string"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","requestKey","specification","state","step","groupId","campaignId","creativeId","ads","leadFormId","conversionId","uploads","error","createdAt","updatedAt"],"additionalProperties":false},"nextStep":{"type":"string"}},"required":["account","money","operation","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"LinkedIn OperationsGet","tags":["Ads"]},"delete":{"description":"Delete only a local draft, failed or unknown record. LinkedIn resources remain. Reconcile unknown results and record provider IDs before deletion. Provider cleanup separately uses ads.linkedin.entities.delete with dangerous confirmation. The account must be a LinkedIn account with campaign management access.","operationId":"PublicAdsController_linkedInOperationsDelete_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"operationId","required":true,"in":"path","description":"Local LinkedIn creation operation UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"LinkedIn OperationsDelete","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"operationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deleted":{"type":"boolean","enum":[true]},"providerResourcesRetained":{"type":"boolean","enum":[true]}},"required":["account","operationId","deleted","providerResourcesRetained"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"LinkedIn OperationsDelete","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/drafts":{"post":{"description":"Save a local draft only. Supply updatedAt for subsequent replacement saves. Creates nothing on LinkedIn. The account must be a LinkedIn account with campaign management access.","operationId":"PublicAdsController_linkedInDraftsSave_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"requestKey":{"description":"Stable client UUID for this draft and submission. Reuse after an unknown response; a new key can create another campaign.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"specification":{"description":"Whole composer specification; replaces the saved draft. Decimal money is in account currency major units. Dates are ISO instants. Media IDs are local UUIDs; parent and Page IDs are provider numeric IDs. New single image ads can include optional imageAltText and imageDescription, and carousel cards optional altText, up to 300 characters each. imageDescription needs offsiteDeliveryEnabled. New video ads accept videoThumbnailMediaId (JPG or PNG, up to 2 MB, matching the video dimensions) and videoCaptions (English plain-text SRT filename and UTF-8 content, up to 1 MB). The top-level ad fields describe the first ad; ads lists further ads for the same ad set, up to 5 in all, each with its own name, text, media and destination. The format, Page and lead form are shared. existingPost is a single-ad choice.","type":"object","properties":{"parentRevision":{"description":"Server-bound inherited settings. Keep when saving a returned draft; recalculated on submission.","type":"string","pattern":"^[a-f0-9]{64}$"},"existingGroupId":{"type":"string","pattern":"^\\d{1,20}$"},"existingCampaignId":{"type":"string","pattern":"^\\d{1,20}$"},"useCampaignBudget":{"type":"boolean"},"groupBudgetOptimization":{"type":"string","enum":["DYNAMIC"]},"nonPolitical":{"description":"Confirms that no ad is political advertising under the law of the targeted countries, including EU law. The dashboard ticks it by default, and ads.linkedin.operations.create treats a missing value as true.","type":"boolean","enum":[true]},"format":{"type":"string","enum":["text","image","video","carousel","document","follower","spotlight"]},"objectiveType":{"type":"string","enum":["BRAND_AWARENESS","WEBSITE_VISIT","ENGAGEMENT","LEAD_GENERATION","WEBSITE_CONVERSION","VIDEO_VIEW"]},"leadFormId":{"type":"string","pattern":"^\\d{1,20}$"},"newLeadForm":{"type":"object","properties":{"name":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":60},"description":{"type":"string","maxLength":160},"privacyPolicyUrl":{"type":"string","maxLength":2000},"legalDisclaimer":{"type":"string","maxLength":2000},"confirmationMessage":{"type":"string","maxLength":300},"landingUrl":{"type":"string","maxLength":2000},"questions":{"maxItems":12,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":300},"predefinedField":{"type":"string","enum":["FIRST_NAME","LAST_NAME","EMAIL","WORK_EMAIL","PHONE_NUMBER","WORK_PHONE_NUMBER","CITY","STATE","COUNTRY","ZIP_CODE","JOB_TITLE","JOB_FUNCTION","SENIORITY","COMPANY_NAME","COMPANY_SIZE","INDUSTRY","DEGREE","FIELD_OF_STUDY","SCHOOL","START_DATE","GRADUATION_DATE","GENDER","LINKEDIN_PROFILE_LINK"]},"required":{"type":"boolean"},"options":{"maxItems":5,"type":"array","items":{"type":"string","maxLength":100}}},"required":["label","required"],"additionalProperties":false}},"consents":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","maxLength":2000},"required":{"type":"boolean"}},"required":["text","required"],"additionalProperties":false}},"hiddenFields":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","maxLength":100},"value":{"type":"string","maxLength":1000}},"required":["name","value"],"additionalProperties":false}}},"required":["name","headline","description","privacyPolicyUrl","confirmationMessage","landingUrl","questions"],"additionalProperties":false},"newConversion":{"type":"object","properties":{"name":{"type":"string","maxLength":150},"method":{"type":"string","enum":["WEBSITE","EVENT","CONVERSIONS_API"]},"type":{"type":"string","enum":["ADD_TO_CART","DOWNLOAD","INSTALL","KEY_PAGE_VIEW","LEAD","PURCHASE","SIGN_UP","OTHER","SAVE","START_CHECKOUT","SCHEDULE","VIEW_CONTENT","VIEW_VIDEO","ADD_BILLING_INFO","BOOK_APPOINTMENT","REQUEST_QUOTE","SEARCH","SUBSCRIBE","AD_CLICK","AD_VIEW","COMPLETE_SIGNUP","SUBMIT_APPLICATION","PHONE_CALL","INVITE","LOGIN","SHARE","DONATE","ADD_TO_LIST","START_TRIAL","OUTBOUND_CLICK","CONTACT","QUALIFIED_LEAD"]},"postClickAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"viewThroughAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"attributionType":{"type":"string","enum":["LAST_TOUCH_BY_CAMPAIGN","LAST_TOUCH_BY_CONVERSION"]},"urlMatchRuleExpression":{"maxItems":20,"type":"array","items":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"matchType":{"type":"string","enum":["EXACT","STARTS_WITH","CONTAINS"]},"matchValue":{"type":"string","maxLength":2000}},"required":["matchType","matchValue"],"additionalProperties":false}}},"valueType":{"type":"string","enum":["NO_VALUE","FIXED","DYNAMIC"]},"value":{"type":"string","maxLength":20}},"required":["name","method","type","postClickAttributionWindowSize","viewThroughAttributionWindowSize","attributionType","valueType"],"additionalProperties":false},"existingPost":{"anyOf":[{"type":"string","pattern":"^urn:li:(share|ugcPost):\\d{1,20}$"},{"type":"string","enum":[""]}]},"biddingStrategy":{"type":"string","enum":["MANUAL_CPC","MANUAL_CPM","MAXIMUM_DELIVERY","ENHANCED_CPC","MANUAL_CPV","TARGET_COST","COST_CAP"]},"optimizationGoal":{"type":"string","enum":["IMPRESSIONS","QUALIFIED_LEADS"]},"offsiteDeliveryEnabled":{"type":"boolean"},"excludedIabCategories":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^IAB\\d{1,2}(?:-\\d{1,3})?$"}},"audienceExpansionEnabled":{"type":"boolean"},"trackingParameters":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","maxLength":100},"kind":{"type":"string","enum":["custom","dynamic"]},"value":{"type":"string","maxLength":1000}},"required":["key","kind","value"],"additionalProperties":false}},"conversionIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,20}$"}},"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"string","enum":[""]}]},"headline":{"type":"string","maxLength":45},"landingUrl":{"type":"string","maxLength":2000},"altText":{"type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","maxLength":600},"landingUrl":{"type":"string","maxLength":2000},"ads":{"description":"The ads after the first, which the top-level ad fields describe, up to 5 ads in all. Each has its own name, text, media and destination; the format, Page and lead form are shared. Not available with existingPost.","maxItems":4,"type":"array","items":{"type":"object","properties":{"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"string","enum":[""]}]},"headline":{"type":"string","maxLength":45},"landingUrl":{"type":"string","maxLength":2000},"altText":{"type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","maxLength":600},"landingUrl":{"type":"string","maxLength":2000}},"required":["creativeName","headline","description","landingUrl"],"additionalProperties":false}},"selectedAd":{"description":"The ad open in the composer, by position. Ignored by creation.","type":"integer","minimum":0,"maximum":4},"pageId":{"type":"string","pattern":"^\\d{1,20}$"},"locationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"locationType":{"type":"string","enum":["locations","profileLocations"]},"excludedLocationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"profileLocale":{"type":"string","pattern":"^[a-z]{2}_[A-Z]{2}$"},"targeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"targetingGroups":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false}},"excludedTargeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"locationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"excludedLocationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"groupName":{"type":"string","maxLength":150},"campaignName":{"type":"string","maxLength":150},"budgetMode":{"type":"string","enum":["DAILY","LIFETIME","DAILY_AND_LIFETIME"]},"dailyBudget":{"type":"string","maxLength":20},"totalBudget":{"type":"string","maxLength":20},"bid":{"type":"string","maxLength":20},"startAt":{"type":"string","maxLength":40},"endAt":{"type":"string","maxLength":40},"noEndDate":{"type":"boolean"}},"required":["creativeName","headline","description","landingUrl","locationIds","groupName","campaignName","dailyBudget","totalBudget","bid","startAt","endAt"],"additionalProperties":false},"updatedAt":{"description":"Exact timestamp from the last read, required when updating an existing draft.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["requestKey","specification"],"additionalProperties":false}}}},"responses":{"200":{"description":"LinkedIn DraftsSave","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"operation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"requestKey":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"specification":{"anyOf":[{"type":"object","properties":{"parentRevision":{"description":"Server-bound inherited settings. Keep when saving a returned draft; recalculated on submission.","type":"string","pattern":"^[a-f0-9]{64}$"},"existingGroupId":{"type":"string","pattern":"^\\d{1,20}$"},"existingCampaignId":{"type":"string","pattern":"^\\d{1,20}$"},"useCampaignBudget":{"type":"boolean"},"groupBudgetOptimization":{"type":"string","enum":["DYNAMIC"]},"nonPolitical":{"description":"Confirms that no ad is political advertising under the law of the targeted countries, including EU law. The dashboard ticks it by default, and ads.linkedin.operations.create treats a missing value as true.","type":"boolean","enum":[true]},"format":{"type":"string","enum":["text","image","video","carousel","document","follower","spotlight"]},"objectiveType":{"type":"string","enum":["BRAND_AWARENESS","WEBSITE_VISIT","ENGAGEMENT","LEAD_GENERATION","WEBSITE_CONVERSION","VIDEO_VIEW"]},"leadFormId":{"type":"string","pattern":"^\\d{1,20}$"},"newLeadForm":{"type":"object","properties":{"name":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":60},"description":{"type":"string","maxLength":160},"privacyPolicyUrl":{"type":"string","maxLength":2000},"legalDisclaimer":{"type":"string","maxLength":2000},"confirmationMessage":{"type":"string","maxLength":300},"landingUrl":{"type":"string","maxLength":2000},"questions":{"maxItems":12,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":300},"predefinedField":{"type":"string","enum":["FIRST_NAME","LAST_NAME","EMAIL","WORK_EMAIL","PHONE_NUMBER","WORK_PHONE_NUMBER","CITY","STATE","COUNTRY","ZIP_CODE","JOB_TITLE","JOB_FUNCTION","SENIORITY","COMPANY_NAME","COMPANY_SIZE","INDUSTRY","DEGREE","FIELD_OF_STUDY","SCHOOL","START_DATE","GRADUATION_DATE","GENDER","LINKEDIN_PROFILE_LINK"]},"required":{"type":"boolean"},"options":{"maxItems":5,"type":"array","items":{"type":"string","maxLength":100}}},"required":["label","required"],"additionalProperties":false}},"consents":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","maxLength":2000},"required":{"type":"boolean"}},"required":["text","required"],"additionalProperties":false}},"hiddenFields":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","maxLength":100},"value":{"type":"string","maxLength":1000}},"required":["name","value"],"additionalProperties":false}}},"required":["name","headline","description","privacyPolicyUrl","confirmationMessage","landingUrl","questions"],"additionalProperties":false},"newConversion":{"type":"object","properties":{"name":{"type":"string","maxLength":150},"method":{"type":"string","enum":["WEBSITE","EVENT","CONVERSIONS_API"]},"type":{"type":"string","enum":["ADD_TO_CART","DOWNLOAD","INSTALL","KEY_PAGE_VIEW","LEAD","PURCHASE","SIGN_UP","OTHER","SAVE","START_CHECKOUT","SCHEDULE","VIEW_CONTENT","VIEW_VIDEO","ADD_BILLING_INFO","BOOK_APPOINTMENT","REQUEST_QUOTE","SEARCH","SUBSCRIBE","AD_CLICK","AD_VIEW","COMPLETE_SIGNUP","SUBMIT_APPLICATION","PHONE_CALL","INVITE","LOGIN","SHARE","DONATE","ADD_TO_LIST","START_TRIAL","OUTBOUND_CLICK","CONTACT","QUALIFIED_LEAD"]},"postClickAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"viewThroughAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"attributionType":{"type":"string","enum":["LAST_TOUCH_BY_CAMPAIGN","LAST_TOUCH_BY_CONVERSION"]},"urlMatchRuleExpression":{"maxItems":20,"type":"array","items":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"matchType":{"type":"string","enum":["EXACT","STARTS_WITH","CONTAINS"]},"matchValue":{"type":"string","maxLength":2000}},"required":["matchType","matchValue"],"additionalProperties":false}}},"valueType":{"type":"string","enum":["NO_VALUE","FIXED","DYNAMIC"]},"value":{"type":"string","maxLength":20}},"required":["name","method","type","postClickAttributionWindowSize","viewThroughAttributionWindowSize","attributionType","valueType"],"additionalProperties":false},"existingPost":{"anyOf":[{"type":"string","pattern":"^urn:li:(share|ugcPost):\\d{1,20}$"},{"type":"string","enum":[""]}]},"biddingStrategy":{"type":"string","enum":["MANUAL_CPC","MANUAL_CPM","MAXIMUM_DELIVERY","ENHANCED_CPC","MANUAL_CPV","TARGET_COST","COST_CAP"]},"optimizationGoal":{"type":"string","enum":["IMPRESSIONS","QUALIFIED_LEADS"]},"offsiteDeliveryEnabled":{"type":"boolean"},"excludedIabCategories":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^IAB\\d{1,2}(?:-\\d{1,3})?$"}},"audienceExpansionEnabled":{"type":"boolean"},"trackingParameters":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","maxLength":100},"kind":{"type":"string","enum":["custom","dynamic"]},"value":{"type":"string","maxLength":1000}},"required":["key","kind","value"],"additionalProperties":false}},"conversionIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,20}$"}},"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"string","enum":[""]}]},"headline":{"type":"string","maxLength":45},"landingUrl":{"type":"string","maxLength":2000},"altText":{"type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","maxLength":600},"landingUrl":{"type":"string","maxLength":2000},"ads":{"description":"The ads after the first, which the top-level ad fields describe, up to 5 ads in all. Each has its own name, text, media and destination; the format, Page and lead form are shared. Not available with existingPost.","maxItems":4,"type":"array","items":{"type":"object","properties":{"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"string","enum":[""]}]},"headline":{"type":"string","maxLength":45},"landingUrl":{"type":"string","maxLength":2000},"altText":{"type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","maxLength":600},"landingUrl":{"type":"string","maxLength":2000}},"required":["creativeName","headline","description","landingUrl"],"additionalProperties":false}},"selectedAd":{"description":"The ad open in the composer, by position. Ignored by creation.","type":"integer","minimum":0,"maximum":4},"pageId":{"type":"string","pattern":"^\\d{1,20}$"},"locationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"locationType":{"type":"string","enum":["locations","profileLocations"]},"excludedLocationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"profileLocale":{"type":"string","pattern":"^[a-z]{2}_[A-Z]{2}$"},"targeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"targetingGroups":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false}},"excludedTargeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"locationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"excludedLocationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"groupName":{"type":"string","maxLength":150},"campaignName":{"type":"string","maxLength":150},"budgetMode":{"type":"string","enum":["DAILY","LIFETIME","DAILY_AND_LIFETIME"]},"dailyBudget":{"type":"string","maxLength":20},"totalBudget":{"type":"string","maxLength":20},"bid":{"type":"string","maxLength":20},"startAt":{"type":"string","maxLength":40},"endAt":{"type":"string","maxLength":40},"noEndDate":{"type":"boolean"}},"required":["creativeName","headline","description","landingUrl","locationIds","groupName","campaignName","dailyBudget","totalBudget","bid","startAt","endAt"],"additionalProperties":false},{"type":"object","properties":{"parentRevision":{"description":"Server-bound inherited settings. Keep when saving a returned draft; recalculated on submission.","type":"string","pattern":"^[a-f0-9]{64}$"},"existingGroupId":{"type":"string","pattern":"^\\d{1,20}$"},"existingCampaignId":{"type":"string","pattern":"^\\d{1,20}$"},"useCampaignBudget":{"type":"boolean"},"groupBudgetOptimization":{"type":"string","enum":["DYNAMIC"]},"nonPolitical":{"description":"Confirms that no ad is political advertising under the law of the targeted countries, including EU law. The dashboard ticks it by default, and ads.linkedin.operations.create treats a missing value as true.","type":"boolean","enum":[true]},"format":{"type":"string","enum":["text","image","video","carousel","document","follower","spotlight"]},"objectiveType":{"type":"string","enum":["BRAND_AWARENESS","WEBSITE_VISIT","ENGAGEMENT","LEAD_GENERATION","WEBSITE_CONVERSION","VIDEO_VIEW"]},"leadFormId":{"type":"string","pattern":"^\\d{1,20}$"},"newLeadForm":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","minLength":1,"maxLength":60},"description":{"type":"string","maxLength":160},"privacyPolicyUrl":{"type":"string","maxLength":2000,"format":"uri"},"legalDisclaimer":{"type":"string","maxLength":2000},"confirmationMessage":{"type":"string","minLength":1,"maxLength":300},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"questions":{"minItems":1,"maxItems":12,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","minLength":1,"maxLength":300},"predefinedField":{"type":"string","enum":["FIRST_NAME","LAST_NAME","EMAIL","WORK_EMAIL","PHONE_NUMBER","WORK_PHONE_NUMBER","CITY","STATE","COUNTRY","ZIP_CODE","JOB_TITLE","JOB_FUNCTION","SENIORITY","COMPANY_NAME","COMPANY_SIZE","INDUSTRY","DEGREE","FIELD_OF_STUDY","SCHOOL","START_DATE","GRADUATION_DATE","GENDER","LINKEDIN_PROFILE_LINK"]},"required":{"type":"boolean"},"options":{"minItems":2,"maxItems":5,"type":"array","items":{"type":"string","minLength":1,"maxLength":100}}},"required":["label","required"],"additionalProperties":false}},"consents":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":2000},"required":{"type":"boolean"}},"required":["text","required"],"additionalProperties":false}},"hiddenFields":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":100},"value":{"type":"string","minLength":1,"maxLength":1000}},"required":["name","value"],"additionalProperties":false}}},"required":["name","headline","description","privacyPolicyUrl","confirmationMessage","landingUrl","questions"],"additionalProperties":false},"newConversion":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":150},"method":{"type":"string","enum":["WEBSITE","EVENT","CONVERSIONS_API"]},"type":{"type":"string","enum":["ADD_TO_CART","DOWNLOAD","INSTALL","KEY_PAGE_VIEW","LEAD","PURCHASE","SIGN_UP","OTHER","SAVE","START_CHECKOUT","SCHEDULE","VIEW_CONTENT","VIEW_VIDEO","ADD_BILLING_INFO","BOOK_APPOINTMENT","REQUEST_QUOTE","SEARCH","SUBSCRIBE","AD_CLICK","AD_VIEW","COMPLETE_SIGNUP","SUBMIT_APPLICATION","PHONE_CALL","INVITE","LOGIN","SHARE","DONATE","ADD_TO_LIST","START_TRIAL","OUTBOUND_CLICK","CONTACT","QUALIFIED_LEAD"]},"postClickAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"viewThroughAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"attributionType":{"type":"string","enum":["LAST_TOUCH_BY_CAMPAIGN","LAST_TOUCH_BY_CONVERSION"]},"urlMatchRuleExpression":{"minItems":1,"maxItems":20,"type":"array","items":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"matchType":{"type":"string","enum":["EXACT","STARTS_WITH","CONTAINS"]},"matchValue":{"type":"string","minLength":1,"maxLength":2000}},"required":["matchType","matchValue"],"additionalProperties":false}}},"valueType":{"type":"string","enum":["NO_VALUE","FIXED","DYNAMIC"]},"value":{"type":"string","pattern":"^\\d{1,12}(\\.\\d{1,2})?$"}},"required":["name","method","type","postClickAttributionWindowSize","viewThroughAttributionWindowSize","attributionType","valueType"],"additionalProperties":false},"existingPost":{"type":"string","pattern":"^urn:li:(share|ugcPost):\\d{1,20}$"},"biddingStrategy":{"type":"string","enum":["MANUAL_CPC","MANUAL_CPM","MAXIMUM_DELIVERY","ENHANCED_CPC","MANUAL_CPV","TARGET_COST","COST_CAP"]},"optimizationGoal":{"type":"string","enum":["IMPRESSIONS","QUALIFIED_LEADS"]},"offsiteDeliveryEnabled":{"type":"boolean"},"excludedIabCategories":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^IAB\\d{1,2}(?:-\\d{1,3})?$"}},"audienceExpansionEnabled":{"type":"boolean"},"trackingParameters":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1,"maxLength":100},"kind":{"type":"string","enum":["custom","dynamic"]},"value":{"type":"string","minLength":1,"maxLength":1000}},"required":["key","kind","value"],"additionalProperties":false}},"conversionIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,20}$"}},"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"headline":{"type":"string","minLength":1,"maxLength":45},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"altText":{"description":"Accessible image description, up to 300 characters.","type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","minLength":1,"maxLength":600},"landingUrl":{"type":"string","maxLength":2000},"ads":{"description":"The ads after the first, which the top-level ad fields describe, up to 5 ads in all. Each has its own name, text, media and destination; the format, Page and lead form are shared. Not available with existingPost.","maxItems":4,"type":"array","items":{"type":"object","properties":{"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"headline":{"type":"string","minLength":1,"maxLength":45},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"altText":{"description":"Accessible image description, up to 300 characters.","type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","minLength":1,"maxLength":600},"landingUrl":{"type":"string","maxLength":2000}},"required":["creativeName","headline","description","landingUrl"],"additionalProperties":false}},"selectedAd":{"description":"The ad open in the composer, by position. Ignored by creation.","type":"integer","minimum":0,"maximum":4},"pageId":{"type":"string","pattern":"^\\d{1,20}$"},"locationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"locationType":{"type":"string","enum":["locations","profileLocations"]},"excludedLocationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"profileLocale":{"type":"string","pattern":"^[a-z]{2}_[A-Z]{2}$"},"targeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"targetingGroups":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false}},"excludedTargeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"locationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"excludedLocationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"groupName":{"type":"string","minLength":1,"maxLength":150},"campaignName":{"type":"string","minLength":1,"maxLength":150},"budgetMode":{"type":"string","enum":["DAILY","LIFETIME","DAILY_AND_LIFETIME"]},"dailyBudget":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"totalBudget":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"bid":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"startAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"string","enum":[""]}]},"endAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"string","enum":[""]}]},"noEndDate":{"type":"boolean"}},"required":["creativeName","headline","description","landingUrl","locationIds","groupName","campaignName","dailyBudget","totalBudget","bid","startAt","endAt"],"additionalProperties":false}]},"state":{"type":"string","enum":["draft","ready","submitting","unknown","failed","complete"]},"step":{"type":"string","enum":["conversion","lead_form","assets","group","campaign","creative","sync"]},"groupId":{"nullable":true,"type":"string"},"campaignId":{"nullable":true,"type":"string"},"creativeId":{"description":"The first ad's creative ID, kept for older callers. ads lists every ad.","nullable":true,"type":"string"},"ads":{"description":"One entry per ad in the specification, in order, with the creative ID LinkedIn returned once it was created. Ads are created in order; a stopped creation continues from the first without an ID.","nullable":true,"type":"array","items":{"type":"object","properties":{"creativeId":{"nullable":true,"type":"string"}},"required":["creativeId"],"additionalProperties":false}},"leadFormId":{"nullable":true,"type":"string"},"conversionId":{"nullable":true,"type":"string"},"uploads":{"nullable":true,"type":"array","items":{"type":"object","properties":{"slot":{"type":"string","enum":["logo","background"]},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string","enum":["image","document","video"]},"urn":{"type":"string"},"status":{"type":"string","enum":["initializing","WAITING_UPLOAD","PROCESSING","AVAILABLE"]}},"required":["mediaId","kind","status"],"additionalProperties":false}},"error":{"nullable":true,"type":"string"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","requestKey","specification","state","step","groupId","campaignId","creativeId","ads","leadFormId","conversionId","uploads","error","createdAt","updatedAt"],"additionalProperties":false},"nextStep":{"type":"string"}},"required":["account","money","operation","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"LinkedIn DraftsSave","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/operations/{operationId}/continue":{"post":{"description":"Run one native creation step, upload/process media or reconcile an uncertain write. Reuse this operation, never create with a new key to retry. Respect submitting cooldown; completion creates drafts, not delivery. The account must be a LinkedIn account with campaign management access.","operationId":"PublicAdsController_linkedInOperationsContinue_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"operationId","required":true,"in":"path","description":"Local LinkedIn creation operation UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"LinkedIn OperationsContinue","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"operation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"requestKey":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"specification":{"anyOf":[{"type":"object","properties":{"parentRevision":{"description":"Server-bound inherited settings. Keep when saving a returned draft; recalculated on submission.","type":"string","pattern":"^[a-f0-9]{64}$"},"existingGroupId":{"type":"string","pattern":"^\\d{1,20}$"},"existingCampaignId":{"type":"string","pattern":"^\\d{1,20}$"},"useCampaignBudget":{"type":"boolean"},"groupBudgetOptimization":{"type":"string","enum":["DYNAMIC"]},"nonPolitical":{"description":"Confirms that no ad is political advertising under the law of the targeted countries, including EU law. The dashboard ticks it by default, and ads.linkedin.operations.create treats a missing value as true.","type":"boolean","enum":[true]},"format":{"type":"string","enum":["text","image","video","carousel","document","follower","spotlight"]},"objectiveType":{"type":"string","enum":["BRAND_AWARENESS","WEBSITE_VISIT","ENGAGEMENT","LEAD_GENERATION","WEBSITE_CONVERSION","VIDEO_VIEW"]},"leadFormId":{"type":"string","pattern":"^\\d{1,20}$"},"newLeadForm":{"type":"object","properties":{"name":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":60},"description":{"type":"string","maxLength":160},"privacyPolicyUrl":{"type":"string","maxLength":2000},"legalDisclaimer":{"type":"string","maxLength":2000},"confirmationMessage":{"type":"string","maxLength":300},"landingUrl":{"type":"string","maxLength":2000},"questions":{"maxItems":12,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":300},"predefinedField":{"type":"string","enum":["FIRST_NAME","LAST_NAME","EMAIL","WORK_EMAIL","PHONE_NUMBER","WORK_PHONE_NUMBER","CITY","STATE","COUNTRY","ZIP_CODE","JOB_TITLE","JOB_FUNCTION","SENIORITY","COMPANY_NAME","COMPANY_SIZE","INDUSTRY","DEGREE","FIELD_OF_STUDY","SCHOOL","START_DATE","GRADUATION_DATE","GENDER","LINKEDIN_PROFILE_LINK"]},"required":{"type":"boolean"},"options":{"maxItems":5,"type":"array","items":{"type":"string","maxLength":100}}},"required":["label","required"],"additionalProperties":false}},"consents":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","maxLength":2000},"required":{"type":"boolean"}},"required":["text","required"],"additionalProperties":false}},"hiddenFields":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","maxLength":100},"value":{"type":"string","maxLength":1000}},"required":["name","value"],"additionalProperties":false}}},"required":["name","headline","description","privacyPolicyUrl","confirmationMessage","landingUrl","questions"],"additionalProperties":false},"newConversion":{"type":"object","properties":{"name":{"type":"string","maxLength":150},"method":{"type":"string","enum":["WEBSITE","EVENT","CONVERSIONS_API"]},"type":{"type":"string","enum":["ADD_TO_CART","DOWNLOAD","INSTALL","KEY_PAGE_VIEW","LEAD","PURCHASE","SIGN_UP","OTHER","SAVE","START_CHECKOUT","SCHEDULE","VIEW_CONTENT","VIEW_VIDEO","ADD_BILLING_INFO","BOOK_APPOINTMENT","REQUEST_QUOTE","SEARCH","SUBSCRIBE","AD_CLICK","AD_VIEW","COMPLETE_SIGNUP","SUBMIT_APPLICATION","PHONE_CALL","INVITE","LOGIN","SHARE","DONATE","ADD_TO_LIST","START_TRIAL","OUTBOUND_CLICK","CONTACT","QUALIFIED_LEAD"]},"postClickAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"viewThroughAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"attributionType":{"type":"string","enum":["LAST_TOUCH_BY_CAMPAIGN","LAST_TOUCH_BY_CONVERSION"]},"urlMatchRuleExpression":{"maxItems":20,"type":"array","items":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"matchType":{"type":"string","enum":["EXACT","STARTS_WITH","CONTAINS"]},"matchValue":{"type":"string","maxLength":2000}},"required":["matchType","matchValue"],"additionalProperties":false}}},"valueType":{"type":"string","enum":["NO_VALUE","FIXED","DYNAMIC"]},"value":{"type":"string","maxLength":20}},"required":["name","method","type","postClickAttributionWindowSize","viewThroughAttributionWindowSize","attributionType","valueType"],"additionalProperties":false},"existingPost":{"anyOf":[{"type":"string","pattern":"^urn:li:(share|ugcPost):\\d{1,20}$"},{"type":"string","enum":[""]}]},"biddingStrategy":{"type":"string","enum":["MANUAL_CPC","MANUAL_CPM","MAXIMUM_DELIVERY","ENHANCED_CPC","MANUAL_CPV","TARGET_COST","COST_CAP"]},"optimizationGoal":{"type":"string","enum":["IMPRESSIONS","QUALIFIED_LEADS"]},"offsiteDeliveryEnabled":{"type":"boolean"},"excludedIabCategories":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^IAB\\d{1,2}(?:-\\d{1,3})?$"}},"audienceExpansionEnabled":{"type":"boolean"},"trackingParameters":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","maxLength":100},"kind":{"type":"string","enum":["custom","dynamic"]},"value":{"type":"string","maxLength":1000}},"required":["key","kind","value"],"additionalProperties":false}},"conversionIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,20}$"}},"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"string","enum":[""]}]},"headline":{"type":"string","maxLength":45},"landingUrl":{"type":"string","maxLength":2000},"altText":{"type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","maxLength":600},"landingUrl":{"type":"string","maxLength":2000},"ads":{"description":"The ads after the first, which the top-level ad fields describe, up to 5 ads in all. Each has its own name, text, media and destination; the format, Page and lead form are shared. Not available with existingPost.","maxItems":4,"type":"array","items":{"type":"object","properties":{"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"string","enum":[""]}]},"headline":{"type":"string","maxLength":45},"landingUrl":{"type":"string","maxLength":2000},"altText":{"type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","maxLength":600},"landingUrl":{"type":"string","maxLength":2000}},"required":["creativeName","headline","description","landingUrl"],"additionalProperties":false}},"selectedAd":{"description":"The ad open in the composer, by position. Ignored by creation.","type":"integer","minimum":0,"maximum":4},"pageId":{"type":"string","pattern":"^\\d{1,20}$"},"locationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"locationType":{"type":"string","enum":["locations","profileLocations"]},"excludedLocationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"profileLocale":{"type":"string","pattern":"^[a-z]{2}_[A-Z]{2}$"},"targeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"targetingGroups":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false}},"excludedTargeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"locationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"excludedLocationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"groupName":{"type":"string","maxLength":150},"campaignName":{"type":"string","maxLength":150},"budgetMode":{"type":"string","enum":["DAILY","LIFETIME","DAILY_AND_LIFETIME"]},"dailyBudget":{"type":"string","maxLength":20},"totalBudget":{"type":"string","maxLength":20},"bid":{"type":"string","maxLength":20},"startAt":{"type":"string","maxLength":40},"endAt":{"type":"string","maxLength":40},"noEndDate":{"type":"boolean"}},"required":["creativeName","headline","description","landingUrl","locationIds","groupName","campaignName","dailyBudget","totalBudget","bid","startAt","endAt"],"additionalProperties":false},{"type":"object","properties":{"parentRevision":{"description":"Server-bound inherited settings. Keep when saving a returned draft; recalculated on submission.","type":"string","pattern":"^[a-f0-9]{64}$"},"existingGroupId":{"type":"string","pattern":"^\\d{1,20}$"},"existingCampaignId":{"type":"string","pattern":"^\\d{1,20}$"},"useCampaignBudget":{"type":"boolean"},"groupBudgetOptimization":{"type":"string","enum":["DYNAMIC"]},"nonPolitical":{"description":"Confirms that no ad is political advertising under the law of the targeted countries, including EU law. The dashboard ticks it by default, and ads.linkedin.operations.create treats a missing value as true.","type":"boolean","enum":[true]},"format":{"type":"string","enum":["text","image","video","carousel","document","follower","spotlight"]},"objectiveType":{"type":"string","enum":["BRAND_AWARENESS","WEBSITE_VISIT","ENGAGEMENT","LEAD_GENERATION","WEBSITE_CONVERSION","VIDEO_VIEW"]},"leadFormId":{"type":"string","pattern":"^\\d{1,20}$"},"newLeadForm":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","minLength":1,"maxLength":60},"description":{"type":"string","maxLength":160},"privacyPolicyUrl":{"type":"string","maxLength":2000,"format":"uri"},"legalDisclaimer":{"type":"string","maxLength":2000},"confirmationMessage":{"type":"string","minLength":1,"maxLength":300},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"questions":{"minItems":1,"maxItems":12,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","minLength":1,"maxLength":300},"predefinedField":{"type":"string","enum":["FIRST_NAME","LAST_NAME","EMAIL","WORK_EMAIL","PHONE_NUMBER","WORK_PHONE_NUMBER","CITY","STATE","COUNTRY","ZIP_CODE","JOB_TITLE","JOB_FUNCTION","SENIORITY","COMPANY_NAME","COMPANY_SIZE","INDUSTRY","DEGREE","FIELD_OF_STUDY","SCHOOL","START_DATE","GRADUATION_DATE","GENDER","LINKEDIN_PROFILE_LINK"]},"required":{"type":"boolean"},"options":{"minItems":2,"maxItems":5,"type":"array","items":{"type":"string","minLength":1,"maxLength":100}}},"required":["label","required"],"additionalProperties":false}},"consents":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":2000},"required":{"type":"boolean"}},"required":["text","required"],"additionalProperties":false}},"hiddenFields":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":100},"value":{"type":"string","minLength":1,"maxLength":1000}},"required":["name","value"],"additionalProperties":false}}},"required":["name","headline","description","privacyPolicyUrl","confirmationMessage","landingUrl","questions"],"additionalProperties":false},"newConversion":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":150},"method":{"type":"string","enum":["WEBSITE","EVENT","CONVERSIONS_API"]},"type":{"type":"string","enum":["ADD_TO_CART","DOWNLOAD","INSTALL","KEY_PAGE_VIEW","LEAD","PURCHASE","SIGN_UP","OTHER","SAVE","START_CHECKOUT","SCHEDULE","VIEW_CONTENT","VIEW_VIDEO","ADD_BILLING_INFO","BOOK_APPOINTMENT","REQUEST_QUOTE","SEARCH","SUBSCRIBE","AD_CLICK","AD_VIEW","COMPLETE_SIGNUP","SUBMIT_APPLICATION","PHONE_CALL","INVITE","LOGIN","SHARE","DONATE","ADD_TO_LIST","START_TRIAL","OUTBOUND_CLICK","CONTACT","QUALIFIED_LEAD"]},"postClickAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"viewThroughAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"attributionType":{"type":"string","enum":["LAST_TOUCH_BY_CAMPAIGN","LAST_TOUCH_BY_CONVERSION"]},"urlMatchRuleExpression":{"minItems":1,"maxItems":20,"type":"array","items":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"matchType":{"type":"string","enum":["EXACT","STARTS_WITH","CONTAINS"]},"matchValue":{"type":"string","minLength":1,"maxLength":2000}},"required":["matchType","matchValue"],"additionalProperties":false}}},"valueType":{"type":"string","enum":["NO_VALUE","FIXED","DYNAMIC"]},"value":{"type":"string","pattern":"^\\d{1,12}(\\.\\d{1,2})?$"}},"required":["name","method","type","postClickAttributionWindowSize","viewThroughAttributionWindowSize","attributionType","valueType"],"additionalProperties":false},"existingPost":{"type":"string","pattern":"^urn:li:(share|ugcPost):\\d{1,20}$"},"biddingStrategy":{"type":"string","enum":["MANUAL_CPC","MANUAL_CPM","MAXIMUM_DELIVERY","ENHANCED_CPC","MANUAL_CPV","TARGET_COST","COST_CAP"]},"optimizationGoal":{"type":"string","enum":["IMPRESSIONS","QUALIFIED_LEADS"]},"offsiteDeliveryEnabled":{"type":"boolean"},"excludedIabCategories":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^IAB\\d{1,2}(?:-\\d{1,3})?$"}},"audienceExpansionEnabled":{"type":"boolean"},"trackingParameters":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1,"maxLength":100},"kind":{"type":"string","enum":["custom","dynamic"]},"value":{"type":"string","minLength":1,"maxLength":1000}},"required":["key","kind","value"],"additionalProperties":false}},"conversionIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,20}$"}},"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"headline":{"type":"string","minLength":1,"maxLength":45},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"altText":{"description":"Accessible image description, up to 300 characters.","type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","minLength":1,"maxLength":600},"landingUrl":{"type":"string","maxLength":2000},"ads":{"description":"The ads after the first, which the top-level ad fields describe, up to 5 ads in all. Each has its own name, text, media and destination; the format, Page and lead form are shared. Not available with existingPost.","maxItems":4,"type":"array","items":{"type":"object","properties":{"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"headline":{"type":"string","minLength":1,"maxLength":45},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"altText":{"description":"Accessible image description, up to 300 characters.","type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","minLength":1,"maxLength":600},"landingUrl":{"type":"string","maxLength":2000}},"required":["creativeName","headline","description","landingUrl"],"additionalProperties":false}},"selectedAd":{"description":"The ad open in the composer, by position. Ignored by creation.","type":"integer","minimum":0,"maximum":4},"pageId":{"type":"string","pattern":"^\\d{1,20}$"},"locationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"locationType":{"type":"string","enum":["locations","profileLocations"]},"excludedLocationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"profileLocale":{"type":"string","pattern":"^[a-z]{2}_[A-Z]{2}$"},"targeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"targetingGroups":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false}},"excludedTargeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"locationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"excludedLocationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"groupName":{"type":"string","minLength":1,"maxLength":150},"campaignName":{"type":"string","minLength":1,"maxLength":150},"budgetMode":{"type":"string","enum":["DAILY","LIFETIME","DAILY_AND_LIFETIME"]},"dailyBudget":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"totalBudget":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"bid":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"startAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"string","enum":[""]}]},"endAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"string","enum":[""]}]},"noEndDate":{"type":"boolean"}},"required":["creativeName","headline","description","landingUrl","locationIds","groupName","campaignName","dailyBudget","totalBudget","bid","startAt","endAt"],"additionalProperties":false}]},"state":{"type":"string","enum":["draft","ready","submitting","unknown","failed","complete"]},"step":{"type":"string","enum":["conversion","lead_form","assets","group","campaign","creative","sync"]},"groupId":{"nullable":true,"type":"string"},"campaignId":{"nullable":true,"type":"string"},"creativeId":{"description":"The first ad's creative ID, kept for older callers. ads lists every ad.","nullable":true,"type":"string"},"ads":{"description":"One entry per ad in the specification, in order, with the creative ID LinkedIn returned once it was created. Ads are created in order; a stopped creation continues from the first without an ID.","nullable":true,"type":"array","items":{"type":"object","properties":{"creativeId":{"nullable":true,"type":"string"}},"required":["creativeId"],"additionalProperties":false}},"leadFormId":{"nullable":true,"type":"string"},"conversionId":{"nullable":true,"type":"string"},"uploads":{"nullable":true,"type":"array","items":{"type":"object","properties":{"slot":{"type":"string","enum":["logo","background"]},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string","enum":["image","document","video"]},"urn":{"type":"string"},"status":{"type":"string","enum":["initializing","WAITING_UPLOAD","PROCESSING","AVAILABLE"]}},"required":["mediaId","kind","status"],"additionalProperties":false}},"error":{"nullable":true,"type":"string"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","requestKey","specification","state","step","groupId","campaignId","creativeId","ads","leadFormId","conversionId","uploads","error","createdAt","updatedAt"],"additionalProperties":false},"nextStep":{"type":"string"}},"required":["account","money","operation","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"LinkedIn OperationsContinue","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/linkedin/{accountId}/operations/{operationId}/edit":{"post":{"description":"Reopen a failed operation without a creative for editing. Preserve existing parents and created forms/conversions. Changed submissions creating a native campaign need fresh approval. Unknown writes must be reconciled first. The account must be a LinkedIn account with campaign management access.","operationId":"PublicAdsController_linkedInOperationsReopen_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"operationId","required":true,"in":"path","description":"Local LinkedIn creation operation UUID.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"LinkedIn OperationsReopen","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"operation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"requestKey":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"specification":{"anyOf":[{"type":"object","properties":{"parentRevision":{"description":"Server-bound inherited settings. Keep when saving a returned draft; recalculated on submission.","type":"string","pattern":"^[a-f0-9]{64}$"},"existingGroupId":{"type":"string","pattern":"^\\d{1,20}$"},"existingCampaignId":{"type":"string","pattern":"^\\d{1,20}$"},"useCampaignBudget":{"type":"boolean"},"groupBudgetOptimization":{"type":"string","enum":["DYNAMIC"]},"nonPolitical":{"description":"Confirms that no ad is political advertising under the law of the targeted countries, including EU law. The dashboard ticks it by default, and ads.linkedin.operations.create treats a missing value as true.","type":"boolean","enum":[true]},"format":{"type":"string","enum":["text","image","video","carousel","document","follower","spotlight"]},"objectiveType":{"type":"string","enum":["BRAND_AWARENESS","WEBSITE_VISIT","ENGAGEMENT","LEAD_GENERATION","WEBSITE_CONVERSION","VIDEO_VIEW"]},"leadFormId":{"type":"string","pattern":"^\\d{1,20}$"},"newLeadForm":{"type":"object","properties":{"name":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":60},"description":{"type":"string","maxLength":160},"privacyPolicyUrl":{"type":"string","maxLength":2000},"legalDisclaimer":{"type":"string","maxLength":2000},"confirmationMessage":{"type":"string","maxLength":300},"landingUrl":{"type":"string","maxLength":2000},"questions":{"maxItems":12,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":300},"predefinedField":{"type":"string","enum":["FIRST_NAME","LAST_NAME","EMAIL","WORK_EMAIL","PHONE_NUMBER","WORK_PHONE_NUMBER","CITY","STATE","COUNTRY","ZIP_CODE","JOB_TITLE","JOB_FUNCTION","SENIORITY","COMPANY_NAME","COMPANY_SIZE","INDUSTRY","DEGREE","FIELD_OF_STUDY","SCHOOL","START_DATE","GRADUATION_DATE","GENDER","LINKEDIN_PROFILE_LINK"]},"required":{"type":"boolean"},"options":{"maxItems":5,"type":"array","items":{"type":"string","maxLength":100}}},"required":["label","required"],"additionalProperties":false}},"consents":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","maxLength":2000},"required":{"type":"boolean"}},"required":["text","required"],"additionalProperties":false}},"hiddenFields":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","maxLength":100},"value":{"type":"string","maxLength":1000}},"required":["name","value"],"additionalProperties":false}}},"required":["name","headline","description","privacyPolicyUrl","confirmationMessage","landingUrl","questions"],"additionalProperties":false},"newConversion":{"type":"object","properties":{"name":{"type":"string","maxLength":150},"method":{"type":"string","enum":["WEBSITE","EVENT","CONVERSIONS_API"]},"type":{"type":"string","enum":["ADD_TO_CART","DOWNLOAD","INSTALL","KEY_PAGE_VIEW","LEAD","PURCHASE","SIGN_UP","OTHER","SAVE","START_CHECKOUT","SCHEDULE","VIEW_CONTENT","VIEW_VIDEO","ADD_BILLING_INFO","BOOK_APPOINTMENT","REQUEST_QUOTE","SEARCH","SUBSCRIBE","AD_CLICK","AD_VIEW","COMPLETE_SIGNUP","SUBMIT_APPLICATION","PHONE_CALL","INVITE","LOGIN","SHARE","DONATE","ADD_TO_LIST","START_TRIAL","OUTBOUND_CLICK","CONTACT","QUALIFIED_LEAD"]},"postClickAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"viewThroughAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"attributionType":{"type":"string","enum":["LAST_TOUCH_BY_CAMPAIGN","LAST_TOUCH_BY_CONVERSION"]},"urlMatchRuleExpression":{"maxItems":20,"type":"array","items":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"matchType":{"type":"string","enum":["EXACT","STARTS_WITH","CONTAINS"]},"matchValue":{"type":"string","maxLength":2000}},"required":["matchType","matchValue"],"additionalProperties":false}}},"valueType":{"type":"string","enum":["NO_VALUE","FIXED","DYNAMIC"]},"value":{"type":"string","maxLength":20}},"required":["name","method","type","postClickAttributionWindowSize","viewThroughAttributionWindowSize","attributionType","valueType"],"additionalProperties":false},"existingPost":{"anyOf":[{"type":"string","pattern":"^urn:li:(share|ugcPost):\\d{1,20}$"},{"type":"string","enum":[""]}]},"biddingStrategy":{"type":"string","enum":["MANUAL_CPC","MANUAL_CPM","MAXIMUM_DELIVERY","ENHANCED_CPC","MANUAL_CPV","TARGET_COST","COST_CAP"]},"optimizationGoal":{"type":"string","enum":["IMPRESSIONS","QUALIFIED_LEADS"]},"offsiteDeliveryEnabled":{"type":"boolean"},"excludedIabCategories":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^IAB\\d{1,2}(?:-\\d{1,3})?$"}},"audienceExpansionEnabled":{"type":"boolean"},"trackingParameters":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","maxLength":100},"kind":{"type":"string","enum":["custom","dynamic"]},"value":{"type":"string","maxLength":1000}},"required":["key","kind","value"],"additionalProperties":false}},"conversionIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,20}$"}},"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"string","enum":[""]}]},"headline":{"type":"string","maxLength":45},"landingUrl":{"type":"string","maxLength":2000},"altText":{"type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","maxLength":600},"landingUrl":{"type":"string","maxLength":2000},"ads":{"description":"The ads after the first, which the top-level ad fields describe, up to 5 ads in all. Each has its own name, text, media and destination; the format, Page and lead form are shared. Not available with existingPost.","maxItems":4,"type":"array","items":{"type":"object","properties":{"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"string","enum":[""]}]},"headline":{"type":"string","maxLength":45},"landingUrl":{"type":"string","maxLength":2000},"altText":{"type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","maxLength":600},"landingUrl":{"type":"string","maxLength":2000}},"required":["creativeName","headline","description","landingUrl"],"additionalProperties":false}},"selectedAd":{"description":"The ad open in the composer, by position. Ignored by creation.","type":"integer","minimum":0,"maximum":4},"pageId":{"type":"string","pattern":"^\\d{1,20}$"},"locationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"locationType":{"type":"string","enum":["locations","profileLocations"]},"excludedLocationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"profileLocale":{"type":"string","pattern":"^[a-z]{2}_[A-Z]{2}$"},"targeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"targetingGroups":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false}},"excludedTargeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"locationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"excludedLocationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"groupName":{"type":"string","maxLength":150},"campaignName":{"type":"string","maxLength":150},"budgetMode":{"type":"string","enum":["DAILY","LIFETIME","DAILY_AND_LIFETIME"]},"dailyBudget":{"type":"string","maxLength":20},"totalBudget":{"type":"string","maxLength":20},"bid":{"type":"string","maxLength":20},"startAt":{"type":"string","maxLength":40},"endAt":{"type":"string","maxLength":40},"noEndDate":{"type":"boolean"}},"required":["creativeName","headline","description","landingUrl","locationIds","groupName","campaignName","dailyBudget","totalBudget","bid","startAt","endAt"],"additionalProperties":false},{"type":"object","properties":{"parentRevision":{"description":"Server-bound inherited settings. Keep when saving a returned draft; recalculated on submission.","type":"string","pattern":"^[a-f0-9]{64}$"},"existingGroupId":{"type":"string","pattern":"^\\d{1,20}$"},"existingCampaignId":{"type":"string","pattern":"^\\d{1,20}$"},"useCampaignBudget":{"type":"boolean"},"groupBudgetOptimization":{"type":"string","enum":["DYNAMIC"]},"nonPolitical":{"description":"Confirms that no ad is political advertising under the law of the targeted countries, including EU law. The dashboard ticks it by default, and ads.linkedin.operations.create treats a missing value as true.","type":"boolean","enum":[true]},"format":{"type":"string","enum":["text","image","video","carousel","document","follower","spotlight"]},"objectiveType":{"type":"string","enum":["BRAND_AWARENESS","WEBSITE_VISIT","ENGAGEMENT","LEAD_GENERATION","WEBSITE_CONVERSION","VIDEO_VIEW"]},"leadFormId":{"type":"string","pattern":"^\\d{1,20}$"},"newLeadForm":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","minLength":1,"maxLength":60},"description":{"type":"string","maxLength":160},"privacyPolicyUrl":{"type":"string","maxLength":2000,"format":"uri"},"legalDisclaimer":{"type":"string","maxLength":2000},"confirmationMessage":{"type":"string","minLength":1,"maxLength":300},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"questions":{"minItems":1,"maxItems":12,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","minLength":1,"maxLength":300},"predefinedField":{"type":"string","enum":["FIRST_NAME","LAST_NAME","EMAIL","WORK_EMAIL","PHONE_NUMBER","WORK_PHONE_NUMBER","CITY","STATE","COUNTRY","ZIP_CODE","JOB_TITLE","JOB_FUNCTION","SENIORITY","COMPANY_NAME","COMPANY_SIZE","INDUSTRY","DEGREE","FIELD_OF_STUDY","SCHOOL","START_DATE","GRADUATION_DATE","GENDER","LINKEDIN_PROFILE_LINK"]},"required":{"type":"boolean"},"options":{"minItems":2,"maxItems":5,"type":"array","items":{"type":"string","minLength":1,"maxLength":100}}},"required":["label","required"],"additionalProperties":false}},"consents":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":2000},"required":{"type":"boolean"}},"required":["text","required"],"additionalProperties":false}},"hiddenFields":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":100},"value":{"type":"string","minLength":1,"maxLength":1000}},"required":["name","value"],"additionalProperties":false}}},"required":["name","headline","description","privacyPolicyUrl","confirmationMessage","landingUrl","questions"],"additionalProperties":false},"newConversion":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":150},"method":{"type":"string","enum":["WEBSITE","EVENT","CONVERSIONS_API"]},"type":{"type":"string","enum":["ADD_TO_CART","DOWNLOAD","INSTALL","KEY_PAGE_VIEW","LEAD","PURCHASE","SIGN_UP","OTHER","SAVE","START_CHECKOUT","SCHEDULE","VIEW_CONTENT","VIEW_VIDEO","ADD_BILLING_INFO","BOOK_APPOINTMENT","REQUEST_QUOTE","SEARCH","SUBSCRIBE","AD_CLICK","AD_VIEW","COMPLETE_SIGNUP","SUBMIT_APPLICATION","PHONE_CALL","INVITE","LOGIN","SHARE","DONATE","ADD_TO_LIST","START_TRIAL","OUTBOUND_CLICK","CONTACT","QUALIFIED_LEAD"]},"postClickAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"viewThroughAttributionWindowSize":{"anyOf":[{"type":"number","enum":[1]},{"type":"number","enum":[7]},{"type":"number","enum":[30]},{"type":"number","enum":[90]},{"type":"number","enum":[365]}]},"attributionType":{"type":"string","enum":["LAST_TOUCH_BY_CAMPAIGN","LAST_TOUCH_BY_CONVERSION"]},"urlMatchRuleExpression":{"minItems":1,"maxItems":20,"type":"array","items":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"matchType":{"type":"string","enum":["EXACT","STARTS_WITH","CONTAINS"]},"matchValue":{"type":"string","minLength":1,"maxLength":2000}},"required":["matchType","matchValue"],"additionalProperties":false}}},"valueType":{"type":"string","enum":["NO_VALUE","FIXED","DYNAMIC"]},"value":{"type":"string","pattern":"^\\d{1,12}(\\.\\d{1,2})?$"}},"required":["name","method","type","postClickAttributionWindowSize","viewThroughAttributionWindowSize","attributionType","valueType"],"additionalProperties":false},"existingPost":{"type":"string","pattern":"^urn:li:(share|ugcPost):\\d{1,20}$"},"biddingStrategy":{"type":"string","enum":["MANUAL_CPC","MANUAL_CPM","MAXIMUM_DELIVERY","ENHANCED_CPC","MANUAL_CPV","TARGET_COST","COST_CAP"]},"optimizationGoal":{"type":"string","enum":["IMPRESSIONS","QUALIFIED_LEADS"]},"offsiteDeliveryEnabled":{"type":"boolean"},"excludedIabCategories":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^IAB\\d{1,2}(?:-\\d{1,3})?$"}},"audienceExpansionEnabled":{"type":"boolean"},"trackingParameters":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1,"maxLength":100},"kind":{"type":"string","enum":["custom","dynamic"]},"value":{"type":"string","minLength":1,"maxLength":1000}},"required":["key","kind","value"],"additionalProperties":false}},"conversionIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,20}$"}},"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"headline":{"type":"string","minLength":1,"maxLength":45},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"altText":{"description":"Accessible image description, up to 300 characters.","type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","minLength":1,"maxLength":600},"landingUrl":{"type":"string","maxLength":2000},"ads":{"description":"The ads after the first, which the top-level ad fields describe, up to 5 ads in all. Each has its own name, text, media and destination; the format, Page and lead form are shared. Not available with existingPost.","maxItems":4,"type":"array","items":{"type":"object","properties":{"logoMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"backgroundMediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"type":"string","maxLength":25},"showMemberProfilePhoto":{"type":"boolean"},"followerHeadline":{"type":"string","enum":["MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW","MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS","custom"]},"followerDescription":{"type":"string","enum":["KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES","RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES","custom"]},"spotlightCallToAction":{"type":"string","maxLength":18},"cards":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"headline":{"type":"string","minLength":1,"maxLength":45},"landingUrl":{"type":"string","maxLength":2000,"format":"uri"},"altText":{"description":"Accessible image description, up to 300 characters.","type":"string","maxLength":300}},"required":["mediaId","headline","landingUrl"],"additionalProperties":false}},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoThumbnailMediaId":{"description":"Optional JPG or PNG thumbnail for a new video ad, up to 2 MB, matching the video dimensions.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoCaptions":{"description":"Optional English plain-text SRT captions for a new video ad, up to 1 MB. Provide the filename and UTF-8 file content.","type":"object","properties":{"name":{"type":"string","maxLength":154},"content":{"type":"string","maxLength":1000000}},"required":["name","content"],"additionalProperties":false},"documentPreviewPages":{"type":"integer","minimum":1,"maximum":299},"callToAction":{"type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","REGISTER","CONTACT_US"]},"creativeName":{"type":"string","minLength":1,"maxLength":150},"headline":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":600},"imageAltText":{"description":"Accessible image description. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"imageDescription":{"description":"Additional description for Audience Network placements. New single image ads only, up to 300 characters.","type":"string","maxLength":300},"personalizedDescription":{"type":"string","minLength":1,"maxLength":600},"landingUrl":{"type":"string","maxLength":2000}},"required":["creativeName","headline","description","landingUrl"],"additionalProperties":false}},"selectedAd":{"description":"The ad open in the composer, by position. Ignored by creation.","type":"integer","minimum":0,"maximum":4},"pageId":{"type":"string","pattern":"^\\d{1,20}$"},"locationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"locationType":{"type":"string","enum":["locations","profileLocations"]},"excludedLocationIds":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"profileLocale":{"type":"string","pattern":"^[a-z]{2}_[A-Z]{2}$"},"targeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"targetingGroups":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false}},"excludedTargeting":{"type":"object","properties":{"jobFunctions":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"seniorities":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"industries":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"staffCountRanges":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:staffCountRange:\\((1,1|2,10|11,50|51,200|201,500|501,1000|1001,5000|5001,10000|10001,2147483647)\\)$"}},"titles":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"titlesPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"skills":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"yearsOfExperienceRanges":{"maxItems":2,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employers":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersAll":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"employersPast":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"followedCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"firstDegreeConnectionCompanies":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"growthRate":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"revenue":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"companyCategory":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"degrees":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"fieldsOfStudy":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"schools":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"interests":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"memberBehaviors":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"buyerGroups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"groups":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"ageRanges":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"genders":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":180,"pattern":"^urn:li:[A-Za-z]+:(?:[A-Za-z0-9_-]+|\\(-?\\d+,\\d+\\))$"}},"audienceMatchingSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}},"dynamicSegments":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^urn:li:adSegment:\\d{1,20}$"}}},"additionalProperties":false},"locationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"excludedLocationNames":{"type":"object","additionalProperties":{"type":"string","maxLength":150}},"groupName":{"type":"string","minLength":1,"maxLength":150},"campaignName":{"type":"string","minLength":1,"maxLength":150},"budgetMode":{"type":"string","enum":["DAILY","LIFETIME","DAILY_AND_LIFETIME"]},"dailyBudget":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"totalBudget":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"bid":{"anyOf":[{"type":"string","pattern":"^\\d{1,7}(\\.\\d{1,2})?$"},{"type":"string","enum":[""]}]},"startAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"string","enum":[""]}]},"endAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"string","enum":[""]}]},"noEndDate":{"type":"boolean"}},"required":["creativeName","headline","description","landingUrl","locationIds","groupName","campaignName","dailyBudget","totalBudget","bid","startAt","endAt"],"additionalProperties":false}]},"state":{"type":"string","enum":["draft","ready","submitting","unknown","failed","complete"]},"step":{"type":"string","enum":["conversion","lead_form","assets","group","campaign","creative","sync"]},"groupId":{"nullable":true,"type":"string"},"campaignId":{"nullable":true,"type":"string"},"creativeId":{"description":"The first ad's creative ID, kept for older callers. ads lists every ad.","nullable":true,"type":"string"},"ads":{"description":"One entry per ad in the specification, in order, with the creative ID LinkedIn returned once it was created. Ads are created in order; a stopped creation continues from the first without an ID.","nullable":true,"type":"array","items":{"type":"object","properties":{"creativeId":{"nullable":true,"type":"string"}},"required":["creativeId"],"additionalProperties":false}},"leadFormId":{"nullable":true,"type":"string"},"conversionId":{"nullable":true,"type":"string"},"uploads":{"nullable":true,"type":"array","items":{"type":"object","properties":{"slot":{"type":"string","enum":["logo","background"]},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string","enum":["image","document","video"]},"urn":{"type":"string"},"status":{"type":"string","enum":["initializing","WAITING_UPLOAD","PROCESSING","AVAILABLE"]}},"required":["mediaId","kind","status"],"additionalProperties":false}},"error":{"nullable":true,"type":"string"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","requestKey","specification","state","step","groupId","campaignId","creativeId","ads","leadFormId","conversionId","uploads","error","createdAt","updatedAt"],"additionalProperties":false},"nextStep":{"type":"string"}},"required":["account","money","operation","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"LinkedIn OperationsReopen","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/drafts":{"get":{"description":"List saved TikTok drafts with bounded pagination.","operationId":"PublicAdsController_tikTokDraftsList_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List TikTok drafts","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"drafts":{"type":"array","items":{"type":"object","properties":{"appUrl":{"type":"string","format":"uri"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"accountId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"status":{"type":"string","enum":["draft","frozen","archived"]},"currentStep":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"revision":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"specification":{"type":"object","properties":{"schemaVersion":{"type":"number","enum":[1]},"campaignName":{"nullable":true,"type":"string","maxLength":512},"adGroupName":{"nullable":true,"type":"string","maxLength":512},"identity":{"nullable":true,"type":"object","properties":{"id":{"type":"string","maxLength":128},"type":{"type":"string","enum":["TT_USER","BC_AUTH_TT"]},"authorizedBcId":{"nullable":true,"type":"string","maxLength":128},"displayName":{"type":"string","maxLength":255}},"required":["id","type","displayName"],"additionalProperties":false},"objective":{"nullable":true,"type":"string","enum":["TRAFFIC","VIDEO_VIEWS","REACH","ENGAGEMENT"]},"communityGoal":{"nullable":true,"type":"string","enum":["FOLLOWERS","PAGE_VISIT"]},"communityBidMicros":{"nullable":true,"type":"string","maxLength":32},"frequencyCap":{"nullable":true,"type":"object","properties":{"impressions":{"type":"integer","minimum":1,"maximum":1000},"days":{"type":"integer","minimum":1,"maximum":30}},"required":["impressions","days"],"additionalProperties":false},"targeting":{"nullable":true,"type":"object","properties":{"locationIds":{"maxItems":100,"type":"array","items":{"type":"string","maxLength":128}},"gender":{"type":"string","enum":["GENDER_UNLIMITED","GENDER_MALE","GENDER_FEMALE"]},"ageGroups":{"maxItems":5,"type":"array","items":{"type":"string","enum":["AGE_18_24","AGE_25_34","AGE_35_44","AGE_45_54","AGE_55_100"]}}},"required":["locationIds","gender","ageGroups"],"additionalProperties":false},"budget":{"nullable":true,"anyOf":[{"type":"object","properties":{"mode":{"type":"string","enum":["lifetime"]},"lifetimeMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["lifetimeMicros","currency"],"additionalProperties":false},{"type":"object","properties":{"mode":{"type":"string","enum":["daily"]},"dailyMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["mode","dailyMicros","currency"],"additionalProperties":false}]},"flight":{"nullable":true,"type":"object","properties":{"ongoing":{"type":"boolean"},"startAt":{"type":"string","maxLength":64},"endAt":{"type":"string","maxLength":64},"timezone":{"type":"string","maxLength":64}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"searchAds":{"type":"boolean"},"allowComments":{"type":"boolean"},"allowDownloads":{"type":"boolean"},"allowSharing":{"type":"boolean"}},"required":["searchAds","allowComments","allowDownloads","allowSharing"],"additionalProperties":false},"ads":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string","maxLength":512},"videoMediaId":{"type":"string","maxLength":128},"coverMediaId":{"type":"string","maxLength":128},"suggestedCover":{"nullable":true,"type":"object","properties":{"videoId":{"type":"string","minLength":1,"maxLength":128},"imageId":{"type":"string","minLength":1,"maxLength":128}},"required":["videoId","imageId"],"additionalProperties":false},"text":{"type":"string","maxLength":100},"callToAction":{"type":"string","enum":["","LEARN_MORE","SHOP_NOW","SIGN_UP","CONTACT_US","DOWNLOAD_NOW","VIEW_PROFILE"]},"destinationUrl":{"nullable":true,"type":"string","maxLength":2048},"tiktokPageCategory":{"nullable":true,"type":"string","enum":["PROFILE_PAGE","OTHER_TIKTOK_PAGE","TIKTOK_INSTANT_PAGE"]},"instantPageId":{"nullable":true,"type":"string","maxLength":128}},"required":["key","name","videoMediaId","coverMediaId","text","callToAction"],"additionalProperties":false}}},"required":["schemaVersion","campaignName","adGroupName","identity","objective","targeting","budget","flight","ads"],"additionalProperties":false},"publicationId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"publishedAt":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","accountId","name","status","currentStep","revision","specification","publicationId","publishedAt","createdAt","updatedAt"],"additionalProperties":false}},"page":{"type":"object","properties":{"limit":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"offset":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"total":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"hasMore":{"type":"boolean"}},"required":["limit","offset","total","hasMore"],"additionalProperties":false}},"required":["account","money","drafts","page"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List TikTok drafts","tags":["Ads"]},"post":{"description":"Create a local draft only. An unnamed request reuses your untouched draft; a named create is not safe to repeat blindly.","operationId":"PublicAdsController_tikTokDraftsCreate_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":255}},"additionalProperties":false}}}},"responses":{"200":{"description":"Create TikTok draft","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"draft":{"type":"object","properties":{"appUrl":{"type":"string","format":"uri"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"accountId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"status":{"type":"string","enum":["draft","frozen","archived"]},"currentStep":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"revision":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"specification":{"type":"object","properties":{"schemaVersion":{"type":"number","enum":[1]},"campaignName":{"nullable":true,"type":"string","maxLength":512},"adGroupName":{"nullable":true,"type":"string","maxLength":512},"identity":{"nullable":true,"type":"object","properties":{"id":{"type":"string","maxLength":128},"type":{"type":"string","enum":["TT_USER","BC_AUTH_TT"]},"authorizedBcId":{"nullable":true,"type":"string","maxLength":128},"displayName":{"type":"string","maxLength":255}},"required":["id","type","displayName"],"additionalProperties":false},"objective":{"nullable":true,"type":"string","enum":["TRAFFIC","VIDEO_VIEWS","REACH","ENGAGEMENT"]},"communityGoal":{"nullable":true,"type":"string","enum":["FOLLOWERS","PAGE_VISIT"]},"communityBidMicros":{"nullable":true,"type":"string","maxLength":32},"frequencyCap":{"nullable":true,"type":"object","properties":{"impressions":{"type":"integer","minimum":1,"maximum":1000},"days":{"type":"integer","minimum":1,"maximum":30}},"required":["impressions","days"],"additionalProperties":false},"targeting":{"nullable":true,"type":"object","properties":{"locationIds":{"maxItems":100,"type":"array","items":{"type":"string","maxLength":128}},"gender":{"type":"string","enum":["GENDER_UNLIMITED","GENDER_MALE","GENDER_FEMALE"]},"ageGroups":{"maxItems":5,"type":"array","items":{"type":"string","enum":["AGE_18_24","AGE_25_34","AGE_35_44","AGE_45_54","AGE_55_100"]}}},"required":["locationIds","gender","ageGroups"],"additionalProperties":false},"budget":{"nullable":true,"anyOf":[{"type":"object","properties":{"mode":{"type":"string","enum":["lifetime"]},"lifetimeMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["lifetimeMicros","currency"],"additionalProperties":false},{"type":"object","properties":{"mode":{"type":"string","enum":["daily"]},"dailyMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["mode","dailyMicros","currency"],"additionalProperties":false}]},"flight":{"nullable":true,"type":"object","properties":{"ongoing":{"type":"boolean"},"startAt":{"type":"string","maxLength":64},"endAt":{"type":"string","maxLength":64},"timezone":{"type":"string","maxLength":64}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"searchAds":{"type":"boolean"},"allowComments":{"type":"boolean"},"allowDownloads":{"type":"boolean"},"allowSharing":{"type":"boolean"}},"required":["searchAds","allowComments","allowDownloads","allowSharing"],"additionalProperties":false},"ads":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string","maxLength":512},"videoMediaId":{"type":"string","maxLength":128},"coverMediaId":{"type":"string","maxLength":128},"suggestedCover":{"nullable":true,"type":"object","properties":{"videoId":{"type":"string","minLength":1,"maxLength":128},"imageId":{"type":"string","minLength":1,"maxLength":128}},"required":["videoId","imageId"],"additionalProperties":false},"text":{"type":"string","maxLength":100},"callToAction":{"type":"string","enum":["","LEARN_MORE","SHOP_NOW","SIGN_UP","CONTACT_US","DOWNLOAD_NOW","VIEW_PROFILE"]},"destinationUrl":{"nullable":true,"type":"string","maxLength":2048},"tiktokPageCategory":{"nullable":true,"type":"string","enum":["PROFILE_PAGE","OTHER_TIKTOK_PAGE","TIKTOK_INSTANT_PAGE"]},"instantPageId":{"nullable":true,"type":"string","maxLength":128}},"required":["key","name","videoMediaId","coverMediaId","text","callToAction"],"additionalProperties":false}}},"required":["schemaVersion","campaignName","adGroupName","identity","objective","targeting","budget","flight","ads"],"additionalProperties":false},"publicationId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"publishedAt":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","accountId","name","status","currentStep","revision","specification","publicationId","publishedAt","createdAt","updatedAt"],"additionalProperties":false},"nextStep":{"type":"string"}},"required":["account","money","draft","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Create TikTok draft","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/drafts/{draftId}":{"get":{"description":"Read a draft and its revision before editing.","operationId":"PublicAdsController_tikTokDraftsGet_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"draftId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Get TikTok draft","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"draft":{"type":"object","properties":{"appUrl":{"type":"string","format":"uri"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"accountId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"status":{"type":"string","enum":["draft","frozen","archived"]},"currentStep":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"revision":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"specification":{"type":"object","properties":{"schemaVersion":{"type":"number","enum":[1]},"campaignName":{"nullable":true,"type":"string","maxLength":512},"adGroupName":{"nullable":true,"type":"string","maxLength":512},"identity":{"nullable":true,"type":"object","properties":{"id":{"type":"string","maxLength":128},"type":{"type":"string","enum":["TT_USER","BC_AUTH_TT"]},"authorizedBcId":{"nullable":true,"type":"string","maxLength":128},"displayName":{"type":"string","maxLength":255}},"required":["id","type","displayName"],"additionalProperties":false},"objective":{"nullable":true,"type":"string","enum":["TRAFFIC","VIDEO_VIEWS","REACH","ENGAGEMENT"]},"communityGoal":{"nullable":true,"type":"string","enum":["FOLLOWERS","PAGE_VISIT"]},"communityBidMicros":{"nullable":true,"type":"string","maxLength":32},"frequencyCap":{"nullable":true,"type":"object","properties":{"impressions":{"type":"integer","minimum":1,"maximum":1000},"days":{"type":"integer","minimum":1,"maximum":30}},"required":["impressions","days"],"additionalProperties":false},"targeting":{"nullable":true,"type":"object","properties":{"locationIds":{"maxItems":100,"type":"array","items":{"type":"string","maxLength":128}},"gender":{"type":"string","enum":["GENDER_UNLIMITED","GENDER_MALE","GENDER_FEMALE"]},"ageGroups":{"maxItems":5,"type":"array","items":{"type":"string","enum":["AGE_18_24","AGE_25_34","AGE_35_44","AGE_45_54","AGE_55_100"]}}},"required":["locationIds","gender","ageGroups"],"additionalProperties":false},"budget":{"nullable":true,"anyOf":[{"type":"object","properties":{"mode":{"type":"string","enum":["lifetime"]},"lifetimeMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["lifetimeMicros","currency"],"additionalProperties":false},{"type":"object","properties":{"mode":{"type":"string","enum":["daily"]},"dailyMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["mode","dailyMicros","currency"],"additionalProperties":false}]},"flight":{"nullable":true,"type":"object","properties":{"ongoing":{"type":"boolean"},"startAt":{"type":"string","maxLength":64},"endAt":{"type":"string","maxLength":64},"timezone":{"type":"string","maxLength":64}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"searchAds":{"type":"boolean"},"allowComments":{"type":"boolean"},"allowDownloads":{"type":"boolean"},"allowSharing":{"type":"boolean"}},"required":["searchAds","allowComments","allowDownloads","allowSharing"],"additionalProperties":false},"ads":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string","maxLength":512},"videoMediaId":{"type":"string","maxLength":128},"coverMediaId":{"type":"string","maxLength":128},"suggestedCover":{"nullable":true,"type":"object","properties":{"videoId":{"type":"string","minLength":1,"maxLength":128},"imageId":{"type":"string","minLength":1,"maxLength":128}},"required":["videoId","imageId"],"additionalProperties":false},"text":{"type":"string","maxLength":100},"callToAction":{"type":"string","enum":["","LEARN_MORE","SHOP_NOW","SIGN_UP","CONTACT_US","DOWNLOAD_NOW","VIEW_PROFILE"]},"destinationUrl":{"nullable":true,"type":"string","maxLength":2048},"tiktokPageCategory":{"nullable":true,"type":"string","enum":["PROFILE_PAGE","OTHER_TIKTOK_PAGE","TIKTOK_INSTANT_PAGE"]},"instantPageId":{"nullable":true,"type":"string","maxLength":128}},"required":["key","name","videoMediaId","coverMediaId","text","callToAction"],"additionalProperties":false}}},"required":["schemaVersion","campaignName","adGroupName","identity","objective","targeting","budget","flight","ads"],"additionalProperties":false},"publicationId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"publishedAt":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","accountId","name","status","currentStep","revision","specification","publicationId","publishedAt","createdAt","updatedAt"],"additionalProperties":false},"nextStep":{"type":"string"}},"required":["account","money","draft","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Get TikTok draft","tags":["Ads"]},"patch":{"description":"Replace the complete saved specification using expectedRevision. Incomplete values may be saved; unsupported fields are rejected. Creates no provider resources.","operationId":"PublicAdsController_tikTokDraftsSave_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"draftId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"expectedRevision":{"type":"integer","minimum":1,"maximum":9007199254740991},"name":{"type":"string","minLength":1,"maxLength":255},"currentStep":{"type":"integer","minimum":1,"maximum":4},"specification":{"description":"Full replacement version 1 draft. Money is an integer micros string; dates are UTC instants and timezone is IANA. One group with up to twenty video ads. Incomplete selections may be saved. Provider eligibility is checked at publication.","type":"object","properties":{"schemaVersion":{"type":"number","enum":[1]},"campaignName":{"nullable":true,"type":"string","maxLength":512},"adGroupName":{"nullable":true,"type":"string","maxLength":512},"identity":{"nullable":true,"type":"object","properties":{"id":{"type":"string","maxLength":128},"type":{"type":"string","enum":["TT_USER","BC_AUTH_TT"]},"authorizedBcId":{"nullable":true,"type":"string","maxLength":128},"displayName":{"type":"string","maxLength":255}},"required":["id","type","displayName"],"additionalProperties":false},"objective":{"nullable":true,"type":"string","enum":["TRAFFIC","VIDEO_VIEWS","REACH","ENGAGEMENT"]},"communityGoal":{"nullable":true,"type":"string","enum":["FOLLOWERS","PAGE_VISIT"]},"communityBidMicros":{"nullable":true,"type":"string","maxLength":32},"frequencyCap":{"nullable":true,"type":"object","properties":{"impressions":{"type":"integer","minimum":1,"maximum":1000},"days":{"type":"integer","minimum":1,"maximum":30}},"required":["impressions","days"],"additionalProperties":false},"targeting":{"nullable":true,"type":"object","properties":{"locationIds":{"maxItems":100,"type":"array","items":{"type":"string","maxLength":128}},"gender":{"type":"string","enum":["GENDER_UNLIMITED","GENDER_MALE","GENDER_FEMALE"]},"ageGroups":{"maxItems":5,"type":"array","items":{"type":"string","enum":["AGE_18_24","AGE_25_34","AGE_35_44","AGE_45_54","AGE_55_100"]}}},"required":["locationIds","gender","ageGroups"],"additionalProperties":false},"budget":{"nullable":true,"anyOf":[{"type":"object","properties":{"mode":{"type":"string","enum":["lifetime"]},"lifetimeMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["lifetimeMicros","currency"],"additionalProperties":false},{"type":"object","properties":{"mode":{"type":"string","enum":["daily"]},"dailyMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["mode","dailyMicros","currency"],"additionalProperties":false}]},"flight":{"nullable":true,"type":"object","properties":{"ongoing":{"type":"boolean"},"startAt":{"type":"string","maxLength":64},"endAt":{"type":"string","maxLength":64},"timezone":{"type":"string","maxLength":64}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"searchAds":{"type":"boolean"},"allowComments":{"type":"boolean"},"allowDownloads":{"type":"boolean"},"allowSharing":{"type":"boolean"}},"required":["searchAds","allowComments","allowDownloads","allowSharing"],"additionalProperties":false},"ads":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string","maxLength":512},"videoMediaId":{"type":"string","maxLength":128},"coverMediaId":{"type":"string","maxLength":128},"suggestedCover":{"nullable":true,"type":"object","properties":{"videoId":{"type":"string","minLength":1,"maxLength":128},"imageId":{"type":"string","minLength":1,"maxLength":128}},"required":["videoId","imageId"],"additionalProperties":false},"text":{"type":"string","maxLength":100},"callToAction":{"type":"string","enum":["","LEARN_MORE","SHOP_NOW","SIGN_UP","CONTACT_US","DOWNLOAD_NOW","VIEW_PROFILE"]},"destinationUrl":{"nullable":true,"type":"string","maxLength":2048},"tiktokPageCategory":{"nullable":true,"type":"string","enum":["PROFILE_PAGE","OTHER_TIKTOK_PAGE","TIKTOK_INSTANT_PAGE"]},"instantPageId":{"nullable":true,"type":"string","maxLength":128}},"required":["key","name","videoMediaId","coverMediaId","text","callToAction"],"additionalProperties":false}}},"required":["schemaVersion","campaignName","adGroupName","identity","objective","targeting","budget","flight","ads"],"additionalProperties":false}},"required":["expectedRevision","name","currentStep","specification"],"additionalProperties":false}}}},"responses":{"200":{"description":"Save TikTok draft","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"draft":{"type":"object","properties":{"appUrl":{"type":"string","format":"uri"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"accountId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"status":{"type":"string","enum":["draft","frozen","archived"]},"currentStep":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"revision":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"specification":{"type":"object","properties":{"schemaVersion":{"type":"number","enum":[1]},"campaignName":{"nullable":true,"type":"string","maxLength":512},"adGroupName":{"nullable":true,"type":"string","maxLength":512},"identity":{"nullable":true,"type":"object","properties":{"id":{"type":"string","maxLength":128},"type":{"type":"string","enum":["TT_USER","BC_AUTH_TT"]},"authorizedBcId":{"nullable":true,"type":"string","maxLength":128},"displayName":{"type":"string","maxLength":255}},"required":["id","type","displayName"],"additionalProperties":false},"objective":{"nullable":true,"type":"string","enum":["TRAFFIC","VIDEO_VIEWS","REACH","ENGAGEMENT"]},"communityGoal":{"nullable":true,"type":"string","enum":["FOLLOWERS","PAGE_VISIT"]},"communityBidMicros":{"nullable":true,"type":"string","maxLength":32},"frequencyCap":{"nullable":true,"type":"object","properties":{"impressions":{"type":"integer","minimum":1,"maximum":1000},"days":{"type":"integer","minimum":1,"maximum":30}},"required":["impressions","days"],"additionalProperties":false},"targeting":{"nullable":true,"type":"object","properties":{"locationIds":{"maxItems":100,"type":"array","items":{"type":"string","maxLength":128}},"gender":{"type":"string","enum":["GENDER_UNLIMITED","GENDER_MALE","GENDER_FEMALE"]},"ageGroups":{"maxItems":5,"type":"array","items":{"type":"string","enum":["AGE_18_24","AGE_25_34","AGE_35_44","AGE_45_54","AGE_55_100"]}}},"required":["locationIds","gender","ageGroups"],"additionalProperties":false},"budget":{"nullable":true,"anyOf":[{"type":"object","properties":{"mode":{"type":"string","enum":["lifetime"]},"lifetimeMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["lifetimeMicros","currency"],"additionalProperties":false},{"type":"object","properties":{"mode":{"type":"string","enum":["daily"]},"dailyMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["mode","dailyMicros","currency"],"additionalProperties":false}]},"flight":{"nullable":true,"type":"object","properties":{"ongoing":{"type":"boolean"},"startAt":{"type":"string","maxLength":64},"endAt":{"type":"string","maxLength":64},"timezone":{"type":"string","maxLength":64}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"searchAds":{"type":"boolean"},"allowComments":{"type":"boolean"},"allowDownloads":{"type":"boolean"},"allowSharing":{"type":"boolean"}},"required":["searchAds","allowComments","allowDownloads","allowSharing"],"additionalProperties":false},"ads":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string","maxLength":512},"videoMediaId":{"type":"string","maxLength":128},"coverMediaId":{"type":"string","maxLength":128},"suggestedCover":{"nullable":true,"type":"object","properties":{"videoId":{"type":"string","minLength":1,"maxLength":128},"imageId":{"type":"string","minLength":1,"maxLength":128}},"required":["videoId","imageId"],"additionalProperties":false},"text":{"type":"string","maxLength":100},"callToAction":{"type":"string","enum":["","LEARN_MORE","SHOP_NOW","SIGN_UP","CONTACT_US","DOWNLOAD_NOW","VIEW_PROFILE"]},"destinationUrl":{"nullable":true,"type":"string","maxLength":2048},"tiktokPageCategory":{"nullable":true,"type":"string","enum":["PROFILE_PAGE","OTHER_TIKTOK_PAGE","TIKTOK_INSTANT_PAGE"]},"instantPageId":{"nullable":true,"type":"string","maxLength":128}},"required":["key","name","videoMediaId","coverMediaId","text","callToAction"],"additionalProperties":false}}},"required":["schemaVersion","campaignName","adGroupName","identity","objective","targeting","budget","flight","ads"],"additionalProperties":false},"publicationId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"publishedAt":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","accountId","name","status","currentStep","revision","specification","publicationId","publishedAt","createdAt","updatedAt"],"additionalProperties":false},"nextStep":{"type":"string"}},"required":["account","money","draft","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Save TikTok draft","tags":["Ads"]},"delete":{"description":"Archive an eligible local draft. Provider resources and publication history remain. No restore operation.","operationId":"PublicAdsController_tikTokDraftsArchive_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"draftId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Archive TikTok draft","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"draftId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"archived":{"type":"boolean","enum":[true]}},"required":["account","draftId","archived"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Archive TikTok draft","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/drafts/{draftId}/publish":{"post":{"description":"Prepare approval for a complete draft. Without approvalId return a review URL and create nothing. Only the requesting person signed into Maeve can approve. Repeat unchanged revision and idempotencyKey with approvalId. Creates DISABLED campaign, ad group and ads; activation is separate.","operationId":"PublicAdsController_tikTokDraftsPublish_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"draftId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"expectedRevision":{"type":"integer","minimum":1,"maximum":9007199254740991},"idempotencyKey":{"description":"Stable key for this exact request. Reuse after an unknown response; never use a new key to retry.","type":"string","minLength":1,"maxLength":128},"approvalId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"chatConfirmation":{"description":"Only when the workspace lets people approve paid ad creation in chat: the chatConfirmation text from the approval response, sent with its approvalId after the person agreed in this chat. Never send it before they agree.","type":"string","maxLength":100}},"required":["expectedRevision","idempotencyKey"],"additionalProperties":false}}}},"responses":{"200":{"description":"Publish TikTok draft","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"anyOf":[{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"publication":{"type":"object","properties":{"appUrl":{"type":"string","format":"uri"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"draftId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"accountId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"state":{"type":"string","enum":["pending_dispatch","queued","publishing","reconciling","unknown","failed","ready_disabled","activating","active","pausing","paused"]},"checkpoint":{"type":"string"},"retryClassification":{"type":"string","enum":["none","confirmed_unsent","definitive_rejection","ambiguous"]},"specHash":{"type":"string"},"specification":{"type":"object","properties":{"schemaVersion":{"type":"number","enum":[1]},"campaignName":{"nullable":true,"type":"string","maxLength":512},"adGroupName":{"nullable":true,"type":"string","maxLength":512},"identity":{"nullable":true,"type":"object","properties":{"id":{"type":"string","maxLength":128},"type":{"type":"string","enum":["TT_USER","BC_AUTH_TT"]},"authorizedBcId":{"nullable":true,"type":"string","maxLength":128},"displayName":{"type":"string","maxLength":255}},"required":["id","type","displayName"],"additionalProperties":false},"objective":{"nullable":true,"type":"string","enum":["TRAFFIC","VIDEO_VIEWS","REACH","ENGAGEMENT"]},"communityGoal":{"nullable":true,"type":"string","enum":["FOLLOWERS","PAGE_VISIT"]},"communityBidMicros":{"nullable":true,"type":"string","maxLength":32},"frequencyCap":{"nullable":true,"type":"object","properties":{"impressions":{"type":"integer","minimum":1,"maximum":1000},"days":{"type":"integer","minimum":1,"maximum":30}},"required":["impressions","days"],"additionalProperties":false},"targeting":{"nullable":true,"type":"object","properties":{"locationIds":{"maxItems":100,"type":"array","items":{"type":"string","maxLength":128}},"gender":{"type":"string","enum":["GENDER_UNLIMITED","GENDER_MALE","GENDER_FEMALE"]},"ageGroups":{"maxItems":5,"type":"array","items":{"type":"string","enum":["AGE_18_24","AGE_25_34","AGE_35_44","AGE_45_54","AGE_55_100"]}}},"required":["locationIds","gender","ageGroups"],"additionalProperties":false},"budget":{"nullable":true,"anyOf":[{"type":"object","properties":{"mode":{"type":"string","enum":["lifetime"]},"lifetimeMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["lifetimeMicros","currency"],"additionalProperties":false},{"type":"object","properties":{"mode":{"type":"string","enum":["daily"]},"dailyMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["mode","dailyMicros","currency"],"additionalProperties":false}]},"flight":{"nullable":true,"type":"object","properties":{"ongoing":{"type":"boolean"},"startAt":{"type":"string","maxLength":64},"endAt":{"type":"string","maxLength":64},"timezone":{"type":"string","maxLength":64}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"searchAds":{"type":"boolean"},"allowComments":{"type":"boolean"},"allowDownloads":{"type":"boolean"},"allowSharing":{"type":"boolean"}},"required":["searchAds","allowComments","allowDownloads","allowSharing"],"additionalProperties":false},"ads":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string","maxLength":512},"videoMediaId":{"type":"string","maxLength":128},"coverMediaId":{"type":"string","maxLength":128},"suggestedCover":{"nullable":true,"type":"object","properties":{"videoId":{"type":"string","minLength":1,"maxLength":128},"imageId":{"type":"string","minLength":1,"maxLength":128}},"required":["videoId","imageId"],"additionalProperties":false},"text":{"type":"string","maxLength":100},"callToAction":{"type":"string","enum":["","LEARN_MORE","SHOP_NOW","SIGN_UP","CONTACT_US","DOWNLOAD_NOW","VIEW_PROFILE"]},"destinationUrl":{"nullable":true,"type":"string","maxLength":2048},"tiktokPageCategory":{"nullable":true,"type":"string","enum":["PROFILE_PAGE","OTHER_TIKTOK_PAGE","TIKTOK_INSTANT_PAGE"]},"instantPageId":{"nullable":true,"type":"string","maxLength":128}},"required":["key","name","videoMediaId","coverMediaId","text","callToAction"],"additionalProperties":false}}},"required":["schemaVersion","campaignName","adGroupName","identity","objective","targeting","budget","flight","ads"],"additionalProperties":false},"provider":{"type":"object","properties":{"campaignId":{"nullable":true,"type":"string"},"adGroupId":{"nullable":true,"type":"string"}},"required":["campaignId","adGroupId"],"additionalProperties":false},"ads":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"state":{"type":"string"},"videoMediaId":{"type":"string"},"coverMediaId":{"nullable":true,"type":"string"},"videoAssetId":{"nullable":true,"type":"string"},"coverAssetId":{"nullable":true,"type":"string"},"adId":{"nullable":true,"type":"string"},"generatedPostId":{"nullable":true,"type":"string"},"error":{"nullable":true,"type":"string"}},"required":["key","position","state","videoMediaId","coverMediaId","videoAssetId","coverAssetId","adId","generatedPostId","error"],"additionalProperties":false}},"safeError":{"nullable":true,"type":"string"},"safeErrorCode":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","draftId","accountId","state","checkpoint","retryClassification","specHash","specification","provider","ads","safeError","safeErrorCode","createdAt","updatedAt"],"additionalProperties":false},"nextStep":{"type":"string"},"approvalRequired":{"type":"boolean","enum":[false]}},"required":["account","money","publication","nextStep","approvalRequired"],"additionalProperties":false},{"type":"object","properties":{"approvalRequired":{"type":"boolean","enum":[true]},"approval":{"type":"object","properties":{"id":{"type":"string"},"status":{"description":"pending waits for the person. approved can be used once. consumed has been used. declined and expired cannot be used.","type":"string","enum":["pending","approved","declined","expired","consumed"]},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"accountId":{"type":"string"},"reviewUrl":{"description":"The Maeve page where the person who asked reviews and decides. Opening it does not approve.","type":"string"},"requestedAt":{"type":"string"},"expiresAt":{"type":"string"},"decidedAt":{"nullable":true,"type":"string"},"declineNote":{"description":"What the person said should change when they declined. Change the request to match before asking again.","nullable":true,"type":"string"},"summary":{"nullable":true,"type":"object","properties":{"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"title":{"description":"What will be created, in plain words.","type":"string"},"account":{"type":"object","properties":{"id":{"type":"string"},"name":{"nullable":true,"type":"string"},"providerAccountId":{"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"nullable":true,"type":"string"}},"required":["id","name","providerAccountId","currency","timezone"],"additionalProperties":false},"objective":{"description":"The objective as the platform names it.","type":"string"},"hierarchy":{"description":"Every entity the request creates or adds to, from the campaign down.","type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"},"name":{"type":"string"},"existing":{"description":"True when this entity already exists and is only added to.","type":"boolean"}},"required":["level","nativeType","name","existing"],"additionalProperties":false}},"creative":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"audience":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"budgets":{"type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set"]},"kind":{"type":"string","enum":["daily","lifetime"]},"amountMicros":{"type":"string"},"currency":{"type":"string"},"name":{"description":"The campaign or ad set this budget belongs to, when there are several.","type":"string"}},"required":["level","kind","amountMicros","currency"],"additionalProperties":false}},"schedule":{"type":"object","properties":{"startAt":{"type":"string"},"endAt":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone of the ad account.","nullable":true,"type":"string"}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"initialState":{"description":"The state the platform creates it in.","type":"string","enum":["paused","disabled","draft","enabled"]},"activatesDelivery":{"description":"True when this request also starts delivery, so the budget can be spent without another step.","type":"boolean"}},"required":["initialState","activatesDelivery"],"additionalProperties":false}},"required":["platform","operation","title","account","objective","hierarchy","creative","audience","budgets","schedule","delivery"],"additionalProperties":false}},"required":["id","status","platform","operation","accountId","reviewUrl","requestedAt","expiresAt","decidedAt","summary"],"additionalProperties":false},"chatConfirmation":{"description":"Present when the workspace lets the person approve in chat. Show them approval.summary and ask. Only after they agree, send the same request again with approvalId and this text as chatConfirmation. A value returned here is not permission.","type":"string"},"nextStep":{"description":"What to do with this approval before sending the request again.","type":"string"}},"required":["approvalRequired","approval","nextStep"],"additionalProperties":false}]},"meta":{"type":"null","nullable":true,"example":null}}}}}},"202":{"description":"Nothing was created. The request is waiting for the person to approve it in Maeve.","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"approvalRequired":{"type":"boolean","enum":[true]},"approval":{"type":"object","properties":{"id":{"type":"string"},"status":{"description":"pending waits for the person. approved can be used once. consumed has been used. declined and expired cannot be used.","type":"string","enum":["pending","approved","declined","expired","consumed"]},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"accountId":{"type":"string"},"reviewUrl":{"description":"The Maeve page where the person who asked reviews and decides. Opening it does not approve.","type":"string"},"requestedAt":{"type":"string"},"expiresAt":{"type":"string"},"decidedAt":{"nullable":true,"type":"string"},"declineNote":{"description":"What the person said should change when they declined. Change the request to match before asking again.","nullable":true,"type":"string"},"summary":{"nullable":true,"type":"object","properties":{"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"title":{"description":"What will be created, in plain words.","type":"string"},"account":{"type":"object","properties":{"id":{"type":"string"},"name":{"nullable":true,"type":"string"},"providerAccountId":{"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"nullable":true,"type":"string"}},"required":["id","name","providerAccountId","currency","timezone"],"additionalProperties":false},"objective":{"description":"The objective as the platform names it.","type":"string"},"hierarchy":{"description":"Every entity the request creates or adds to, from the campaign down.","type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"},"name":{"type":"string"},"existing":{"description":"True when this entity already exists and is only added to.","type":"boolean"}},"required":["level","nativeType","name","existing"],"additionalProperties":false}},"creative":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"audience":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"budgets":{"type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set"]},"kind":{"type":"string","enum":["daily","lifetime"]},"amountMicros":{"type":"string"},"currency":{"type":"string"},"name":{"description":"The campaign or ad set this budget belongs to, when there are several.","type":"string"}},"required":["level","kind","amountMicros","currency"],"additionalProperties":false}},"schedule":{"type":"object","properties":{"startAt":{"type":"string"},"endAt":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone of the ad account.","nullable":true,"type":"string"}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"initialState":{"description":"The state the platform creates it in.","type":"string","enum":["paused","disabled","draft","enabled"]},"activatesDelivery":{"description":"True when this request also starts delivery, so the budget can be spent without another step.","type":"boolean"}},"required":["initialState","activatesDelivery"],"additionalProperties":false}},"required":["platform","operation","title","account","objective","hierarchy","creative","audience","budgets","schedule","delivery"],"additionalProperties":false}},"required":["id","status","platform","operation","accountId","reviewUrl","requestedAt","expiresAt","decidedAt","summary"],"additionalProperties":false},"chatConfirmation":{"description":"Present when the workspace lets the person approve in chat. Show them approval.summary and ask. Only after they agree, send the same request again with approvalId and this text as chatConfirmation. A value returned here is not permission.","type":"string"},"nextStep":{"description":"What to do with this approval before sending the request again.","type":"string"}},"required":["approvalRequired","approval","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Publish TikTok draft","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/publications":{"get":{"description":"Read saved publication progress with bounded pagination, including older recovery records.","operationId":"PublicAdsController_tikTokPublicationsList_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List TikTok publications","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"publications":{"type":"array","items":{"type":"object","properties":{"appUrl":{"type":"string","format":"uri"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"draftId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"accountId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"state":{"type":"string","enum":["pending_dispatch","queued","publishing","reconciling","unknown","failed","ready_disabled","activating","active","pausing","paused"]},"checkpoint":{"type":"string"},"retryClassification":{"type":"string","enum":["none","confirmed_unsent","definitive_rejection","ambiguous"]},"specHash":{"type":"string"},"specification":{"type":"object","properties":{"schemaVersion":{"type":"number","enum":[1]},"campaignName":{"nullable":true,"type":"string","maxLength":512},"adGroupName":{"nullable":true,"type":"string","maxLength":512},"identity":{"nullable":true,"type":"object","properties":{"id":{"type":"string","maxLength":128},"type":{"type":"string","enum":["TT_USER","BC_AUTH_TT"]},"authorizedBcId":{"nullable":true,"type":"string","maxLength":128},"displayName":{"type":"string","maxLength":255}},"required":["id","type","displayName"],"additionalProperties":false},"objective":{"nullable":true,"type":"string","enum":["TRAFFIC","VIDEO_VIEWS","REACH","ENGAGEMENT"]},"communityGoal":{"nullable":true,"type":"string","enum":["FOLLOWERS","PAGE_VISIT"]},"communityBidMicros":{"nullable":true,"type":"string","maxLength":32},"frequencyCap":{"nullable":true,"type":"object","properties":{"impressions":{"type":"integer","minimum":1,"maximum":1000},"days":{"type":"integer","minimum":1,"maximum":30}},"required":["impressions","days"],"additionalProperties":false},"targeting":{"nullable":true,"type":"object","properties":{"locationIds":{"maxItems":100,"type":"array","items":{"type":"string","maxLength":128}},"gender":{"type":"string","enum":["GENDER_UNLIMITED","GENDER_MALE","GENDER_FEMALE"]},"ageGroups":{"maxItems":5,"type":"array","items":{"type":"string","enum":["AGE_18_24","AGE_25_34","AGE_35_44","AGE_45_54","AGE_55_100"]}}},"required":["locationIds","gender","ageGroups"],"additionalProperties":false},"budget":{"nullable":true,"anyOf":[{"type":"object","properties":{"mode":{"type":"string","enum":["lifetime"]},"lifetimeMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["lifetimeMicros","currency"],"additionalProperties":false},{"type":"object","properties":{"mode":{"type":"string","enum":["daily"]},"dailyMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["mode","dailyMicros","currency"],"additionalProperties":false}]},"flight":{"nullable":true,"type":"object","properties":{"ongoing":{"type":"boolean"},"startAt":{"type":"string","maxLength":64},"endAt":{"type":"string","maxLength":64},"timezone":{"type":"string","maxLength":64}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"searchAds":{"type":"boolean"},"allowComments":{"type":"boolean"},"allowDownloads":{"type":"boolean"},"allowSharing":{"type":"boolean"}},"required":["searchAds","allowComments","allowDownloads","allowSharing"],"additionalProperties":false},"ads":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string","maxLength":512},"videoMediaId":{"type":"string","maxLength":128},"coverMediaId":{"type":"string","maxLength":128},"suggestedCover":{"nullable":true,"type":"object","properties":{"videoId":{"type":"string","minLength":1,"maxLength":128},"imageId":{"type":"string","minLength":1,"maxLength":128}},"required":["videoId","imageId"],"additionalProperties":false},"text":{"type":"string","maxLength":100},"callToAction":{"type":"string","enum":["","LEARN_MORE","SHOP_NOW","SIGN_UP","CONTACT_US","DOWNLOAD_NOW","VIEW_PROFILE"]},"destinationUrl":{"nullable":true,"type":"string","maxLength":2048},"tiktokPageCategory":{"nullable":true,"type":"string","enum":["PROFILE_PAGE","OTHER_TIKTOK_PAGE","TIKTOK_INSTANT_PAGE"]},"instantPageId":{"nullable":true,"type":"string","maxLength":128}},"required":["key","name","videoMediaId","coverMediaId","text","callToAction"],"additionalProperties":false}}},"required":["schemaVersion","campaignName","adGroupName","identity","objective","targeting","budget","flight","ads"],"additionalProperties":false},"provider":{"type":"object","properties":{"campaignId":{"nullable":true,"type":"string"},"adGroupId":{"nullable":true,"type":"string"}},"required":["campaignId","adGroupId"],"additionalProperties":false},"ads":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"state":{"type":"string"},"videoMediaId":{"type":"string"},"coverMediaId":{"nullable":true,"type":"string"},"videoAssetId":{"nullable":true,"type":"string"},"coverAssetId":{"nullable":true,"type":"string"},"adId":{"nullable":true,"type":"string"},"generatedPostId":{"nullable":true,"type":"string"},"error":{"nullable":true,"type":"string"}},"required":["key","position","state","videoMediaId","coverMediaId","videoAssetId","coverAssetId","adId","generatedPostId","error"],"additionalProperties":false}},"safeError":{"nullable":true,"type":"string"},"safeErrorCode":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","draftId","accountId","state","checkpoint","retryClassification","specHash","specification","provider","ads","safeError","safeErrorCode","createdAt","updatedAt"],"additionalProperties":false}},"page":{"type":"object","properties":{"limit":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"offset":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"total":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"hasMore":{"type":"boolean"}},"required":["limit","offset","total","hasMore"],"additionalProperties":false}},"required":["account","money","publications","page"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List TikTok publications","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/publications/{publicationId}":{"get":{"description":"Read frozen settings, hash, progress, provider IDs and recovery guidance. Created does not mean enabled or delivered.","operationId":"PublicAdsController_tikTokPublicationsGet_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"publicationId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Get TikTok publication","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"publication":{"type":"object","properties":{"appUrl":{"type":"string","format":"uri"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"draftId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"accountId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"state":{"type":"string","enum":["pending_dispatch","queued","publishing","reconciling","unknown","failed","ready_disabled","activating","active","pausing","paused"]},"checkpoint":{"type":"string"},"retryClassification":{"type":"string","enum":["none","confirmed_unsent","definitive_rejection","ambiguous"]},"specHash":{"type":"string"},"specification":{"type":"object","properties":{"schemaVersion":{"type":"number","enum":[1]},"campaignName":{"nullable":true,"type":"string","maxLength":512},"adGroupName":{"nullable":true,"type":"string","maxLength":512},"identity":{"nullable":true,"type":"object","properties":{"id":{"type":"string","maxLength":128},"type":{"type":"string","enum":["TT_USER","BC_AUTH_TT"]},"authorizedBcId":{"nullable":true,"type":"string","maxLength":128},"displayName":{"type":"string","maxLength":255}},"required":["id","type","displayName"],"additionalProperties":false},"objective":{"nullable":true,"type":"string","enum":["TRAFFIC","VIDEO_VIEWS","REACH","ENGAGEMENT"]},"communityGoal":{"nullable":true,"type":"string","enum":["FOLLOWERS","PAGE_VISIT"]},"communityBidMicros":{"nullable":true,"type":"string","maxLength":32},"frequencyCap":{"nullable":true,"type":"object","properties":{"impressions":{"type":"integer","minimum":1,"maximum":1000},"days":{"type":"integer","minimum":1,"maximum":30}},"required":["impressions","days"],"additionalProperties":false},"targeting":{"nullable":true,"type":"object","properties":{"locationIds":{"maxItems":100,"type":"array","items":{"type":"string","maxLength":128}},"gender":{"type":"string","enum":["GENDER_UNLIMITED","GENDER_MALE","GENDER_FEMALE"]},"ageGroups":{"maxItems":5,"type":"array","items":{"type":"string","enum":["AGE_18_24","AGE_25_34","AGE_35_44","AGE_45_54","AGE_55_100"]}}},"required":["locationIds","gender","ageGroups"],"additionalProperties":false},"budget":{"nullable":true,"anyOf":[{"type":"object","properties":{"mode":{"type":"string","enum":["lifetime"]},"lifetimeMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["lifetimeMicros","currency"],"additionalProperties":false},{"type":"object","properties":{"mode":{"type":"string","enum":["daily"]},"dailyMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["mode","dailyMicros","currency"],"additionalProperties":false}]},"flight":{"nullable":true,"type":"object","properties":{"ongoing":{"type":"boolean"},"startAt":{"type":"string","maxLength":64},"endAt":{"type":"string","maxLength":64},"timezone":{"type":"string","maxLength":64}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"searchAds":{"type":"boolean"},"allowComments":{"type":"boolean"},"allowDownloads":{"type":"boolean"},"allowSharing":{"type":"boolean"}},"required":["searchAds","allowComments","allowDownloads","allowSharing"],"additionalProperties":false},"ads":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string","maxLength":512},"videoMediaId":{"type":"string","maxLength":128},"coverMediaId":{"type":"string","maxLength":128},"suggestedCover":{"nullable":true,"type":"object","properties":{"videoId":{"type":"string","minLength":1,"maxLength":128},"imageId":{"type":"string","minLength":1,"maxLength":128}},"required":["videoId","imageId"],"additionalProperties":false},"text":{"type":"string","maxLength":100},"callToAction":{"type":"string","enum":["","LEARN_MORE","SHOP_NOW","SIGN_UP","CONTACT_US","DOWNLOAD_NOW","VIEW_PROFILE"]},"destinationUrl":{"nullable":true,"type":"string","maxLength":2048},"tiktokPageCategory":{"nullable":true,"type":"string","enum":["PROFILE_PAGE","OTHER_TIKTOK_PAGE","TIKTOK_INSTANT_PAGE"]},"instantPageId":{"nullable":true,"type":"string","maxLength":128}},"required":["key","name","videoMediaId","coverMediaId","text","callToAction"],"additionalProperties":false}}},"required":["schemaVersion","campaignName","adGroupName","identity","objective","targeting","budget","flight","ads"],"additionalProperties":false},"provider":{"type":"object","properties":{"campaignId":{"nullable":true,"type":"string"},"adGroupId":{"nullable":true,"type":"string"}},"required":["campaignId","adGroupId"],"additionalProperties":false},"ads":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"state":{"type":"string"},"videoMediaId":{"type":"string"},"coverMediaId":{"nullable":true,"type":"string"},"videoAssetId":{"nullable":true,"type":"string"},"coverAssetId":{"nullable":true,"type":"string"},"adId":{"nullable":true,"type":"string"},"generatedPostId":{"nullable":true,"type":"string"},"error":{"nullable":true,"type":"string"}},"required":["key","position","state","videoMediaId","coverMediaId","videoAssetId","coverAssetId","adId","generatedPostId","error"],"additionalProperties":false}},"safeError":{"nullable":true,"type":"string"},"safeErrorCode":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","draftId","accountId","state","checkpoint","retryClassification","specHash","specification","provider","ads","safeError","safeErrorCode","createdAt","updatedAt"],"additionalProperties":false},"nextStep":{"type":"string"}},"required":["account","money","publication","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Get TikTok publication","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/publications/{publicationId}/retry":{"post":{"description":"Retry the same confirmed-unsent or definitively rejected publication. Unknown writes require reconcile; editing drafts cannot resend old settings.","operationId":"PublicAdsController_tikTokPublicationsRetry_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"publicationId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Retry TikTok publication","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"publication":{"type":"object","properties":{"appUrl":{"type":"string","format":"uri"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"draftId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"accountId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"state":{"type":"string","enum":["pending_dispatch","queued","publishing","reconciling","unknown","failed","ready_disabled","activating","active","pausing","paused"]},"checkpoint":{"type":"string"},"retryClassification":{"type":"string","enum":["none","confirmed_unsent","definitive_rejection","ambiguous"]},"specHash":{"type":"string"},"specification":{"type":"object","properties":{"schemaVersion":{"type":"number","enum":[1]},"campaignName":{"nullable":true,"type":"string","maxLength":512},"adGroupName":{"nullable":true,"type":"string","maxLength":512},"identity":{"nullable":true,"type":"object","properties":{"id":{"type":"string","maxLength":128},"type":{"type":"string","enum":["TT_USER","BC_AUTH_TT"]},"authorizedBcId":{"nullable":true,"type":"string","maxLength":128},"displayName":{"type":"string","maxLength":255}},"required":["id","type","displayName"],"additionalProperties":false},"objective":{"nullable":true,"type":"string","enum":["TRAFFIC","VIDEO_VIEWS","REACH","ENGAGEMENT"]},"communityGoal":{"nullable":true,"type":"string","enum":["FOLLOWERS","PAGE_VISIT"]},"communityBidMicros":{"nullable":true,"type":"string","maxLength":32},"frequencyCap":{"nullable":true,"type":"object","properties":{"impressions":{"type":"integer","minimum":1,"maximum":1000},"days":{"type":"integer","minimum":1,"maximum":30}},"required":["impressions","days"],"additionalProperties":false},"targeting":{"nullable":true,"type":"object","properties":{"locationIds":{"maxItems":100,"type":"array","items":{"type":"string","maxLength":128}},"gender":{"type":"string","enum":["GENDER_UNLIMITED","GENDER_MALE","GENDER_FEMALE"]},"ageGroups":{"maxItems":5,"type":"array","items":{"type":"string","enum":["AGE_18_24","AGE_25_34","AGE_35_44","AGE_45_54","AGE_55_100"]}}},"required":["locationIds","gender","ageGroups"],"additionalProperties":false},"budget":{"nullable":true,"anyOf":[{"type":"object","properties":{"mode":{"type":"string","enum":["lifetime"]},"lifetimeMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["lifetimeMicros","currency"],"additionalProperties":false},{"type":"object","properties":{"mode":{"type":"string","enum":["daily"]},"dailyMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["mode","dailyMicros","currency"],"additionalProperties":false}]},"flight":{"nullable":true,"type":"object","properties":{"ongoing":{"type":"boolean"},"startAt":{"type":"string","maxLength":64},"endAt":{"type":"string","maxLength":64},"timezone":{"type":"string","maxLength":64}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"searchAds":{"type":"boolean"},"allowComments":{"type":"boolean"},"allowDownloads":{"type":"boolean"},"allowSharing":{"type":"boolean"}},"required":["searchAds","allowComments","allowDownloads","allowSharing"],"additionalProperties":false},"ads":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string","maxLength":512},"videoMediaId":{"type":"string","maxLength":128},"coverMediaId":{"type":"string","maxLength":128},"suggestedCover":{"nullable":true,"type":"object","properties":{"videoId":{"type":"string","minLength":1,"maxLength":128},"imageId":{"type":"string","minLength":1,"maxLength":128}},"required":["videoId","imageId"],"additionalProperties":false},"text":{"type":"string","maxLength":100},"callToAction":{"type":"string","enum":["","LEARN_MORE","SHOP_NOW","SIGN_UP","CONTACT_US","DOWNLOAD_NOW","VIEW_PROFILE"]},"destinationUrl":{"nullable":true,"type":"string","maxLength":2048},"tiktokPageCategory":{"nullable":true,"type":"string","enum":["PROFILE_PAGE","OTHER_TIKTOK_PAGE","TIKTOK_INSTANT_PAGE"]},"instantPageId":{"nullable":true,"type":"string","maxLength":128}},"required":["key","name","videoMediaId","coverMediaId","text","callToAction"],"additionalProperties":false}}},"required":["schemaVersion","campaignName","adGroupName","identity","objective","targeting","budget","flight","ads"],"additionalProperties":false},"provider":{"type":"object","properties":{"campaignId":{"nullable":true,"type":"string"},"adGroupId":{"nullable":true,"type":"string"}},"required":["campaignId","adGroupId"],"additionalProperties":false},"ads":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"state":{"type":"string"},"videoMediaId":{"type":"string"},"coverMediaId":{"nullable":true,"type":"string"},"videoAssetId":{"nullable":true,"type":"string"},"coverAssetId":{"nullable":true,"type":"string"},"adId":{"nullable":true,"type":"string"},"generatedPostId":{"nullable":true,"type":"string"},"error":{"nullable":true,"type":"string"}},"required":["key","position","state","videoMediaId","coverMediaId","videoAssetId","coverAssetId","adId","generatedPostId","error"],"additionalProperties":false}},"safeError":{"nullable":true,"type":"string"},"safeErrorCode":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","draftId","accountId","state","checkpoint","retryClassification","specHash","specification","provider","ads","safeError","safeErrorCode","createdAt","updatedAt"],"additionalProperties":false},"nextStep":{"type":"string"}},"required":["account","money","publication","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Retry TikTok publication","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/publications/{publicationId}/edit":{"post":{"description":"Reopen a safely failed publication for editing. Created parents and ads remain immutable; changed settings need fresh approval.","operationId":"PublicAdsController_tikTokPublicationsReopen_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"publicationId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Reopen TikTok publication","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"appUrl":{"type":"string","format":"uri"},"draftId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"revision":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"status":{"type":"string","enum":["draft"]},"nextStep":{"type":"string"}},"required":["account","draftId","revision","status","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Reopen TikTok publication","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/publications/{publicationId}/reconcile":{"post":{"description":"Queue reconciliation of an unknown result using the existing publication and authorization. Never create another campaign to recover uncertainty.","operationId":"PublicAdsController_tikTokPublicationsReconcile_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"publicationId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Reconcile TikTok publication","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"publication":{"type":"object","properties":{"appUrl":{"type":"string","format":"uri"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"draftId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"accountId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"state":{"type":"string","enum":["pending_dispatch","queued","publishing","reconciling","unknown","failed","ready_disabled","activating","active","pausing","paused"]},"checkpoint":{"type":"string"},"retryClassification":{"type":"string","enum":["none","confirmed_unsent","definitive_rejection","ambiguous"]},"specHash":{"type":"string"},"specification":{"type":"object","properties":{"schemaVersion":{"type":"number","enum":[1]},"campaignName":{"nullable":true,"type":"string","maxLength":512},"adGroupName":{"nullable":true,"type":"string","maxLength":512},"identity":{"nullable":true,"type":"object","properties":{"id":{"type":"string","maxLength":128},"type":{"type":"string","enum":["TT_USER","BC_AUTH_TT"]},"authorizedBcId":{"nullable":true,"type":"string","maxLength":128},"displayName":{"type":"string","maxLength":255}},"required":["id","type","displayName"],"additionalProperties":false},"objective":{"nullable":true,"type":"string","enum":["TRAFFIC","VIDEO_VIEWS","REACH","ENGAGEMENT"]},"communityGoal":{"nullable":true,"type":"string","enum":["FOLLOWERS","PAGE_VISIT"]},"communityBidMicros":{"nullable":true,"type":"string","maxLength":32},"frequencyCap":{"nullable":true,"type":"object","properties":{"impressions":{"type":"integer","minimum":1,"maximum":1000},"days":{"type":"integer","minimum":1,"maximum":30}},"required":["impressions","days"],"additionalProperties":false},"targeting":{"nullable":true,"type":"object","properties":{"locationIds":{"maxItems":100,"type":"array","items":{"type":"string","maxLength":128}},"gender":{"type":"string","enum":["GENDER_UNLIMITED","GENDER_MALE","GENDER_FEMALE"]},"ageGroups":{"maxItems":5,"type":"array","items":{"type":"string","enum":["AGE_18_24","AGE_25_34","AGE_35_44","AGE_45_54","AGE_55_100"]}}},"required":["locationIds","gender","ageGroups"],"additionalProperties":false},"budget":{"nullable":true,"anyOf":[{"type":"object","properties":{"mode":{"type":"string","enum":["lifetime"]},"lifetimeMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["lifetimeMicros","currency"],"additionalProperties":false},{"type":"object","properties":{"mode":{"type":"string","enum":["daily"]},"dailyMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["mode","dailyMicros","currency"],"additionalProperties":false}]},"flight":{"nullable":true,"type":"object","properties":{"ongoing":{"type":"boolean"},"startAt":{"type":"string","maxLength":64},"endAt":{"type":"string","maxLength":64},"timezone":{"type":"string","maxLength":64}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"searchAds":{"type":"boolean"},"allowComments":{"type":"boolean"},"allowDownloads":{"type":"boolean"},"allowSharing":{"type":"boolean"}},"required":["searchAds","allowComments","allowDownloads","allowSharing"],"additionalProperties":false},"ads":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string","maxLength":512},"videoMediaId":{"type":"string","maxLength":128},"coverMediaId":{"type":"string","maxLength":128},"suggestedCover":{"nullable":true,"type":"object","properties":{"videoId":{"type":"string","minLength":1,"maxLength":128},"imageId":{"type":"string","minLength":1,"maxLength":128}},"required":["videoId","imageId"],"additionalProperties":false},"text":{"type":"string","maxLength":100},"callToAction":{"type":"string","enum":["","LEARN_MORE","SHOP_NOW","SIGN_UP","CONTACT_US","DOWNLOAD_NOW","VIEW_PROFILE"]},"destinationUrl":{"nullable":true,"type":"string","maxLength":2048},"tiktokPageCategory":{"nullable":true,"type":"string","enum":["PROFILE_PAGE","OTHER_TIKTOK_PAGE","TIKTOK_INSTANT_PAGE"]},"instantPageId":{"nullable":true,"type":"string","maxLength":128}},"required":["key","name","videoMediaId","coverMediaId","text","callToAction"],"additionalProperties":false}}},"required":["schemaVersion","campaignName","adGroupName","identity","objective","targeting","budget","flight","ads"],"additionalProperties":false},"provider":{"type":"object","properties":{"campaignId":{"nullable":true,"type":"string"},"adGroupId":{"nullable":true,"type":"string"}},"required":["campaignId","adGroupId"],"additionalProperties":false},"ads":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"state":{"type":"string"},"videoMediaId":{"type":"string"},"coverMediaId":{"nullable":true,"type":"string"},"videoAssetId":{"nullable":true,"type":"string"},"coverAssetId":{"nullable":true,"type":"string"},"adId":{"nullable":true,"type":"string"},"generatedPostId":{"nullable":true,"type":"string"},"error":{"nullable":true,"type":"string"}},"required":["key","position","state","videoMediaId","coverMediaId","videoAssetId","coverAssetId","adId","generatedPostId","error"],"additionalProperties":false}},"safeError":{"nullable":true,"type":"string"},"safeErrorCode":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","draftId","accountId","state","checkpoint","retryClassification","specHash","specification","provider","ads","safeError","safeErrorCode","createdAt","updatedAt"],"additionalProperties":false},"nextStep":{"type":"string"}},"required":["account","money","publication","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Reconcile TikTok publication","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/publications/{publicationId}/activate":{"post":{"description":"Enable an existing disabled or paused hierarchy using its current specHash as confirmationSpecHash. Starts delivery when eligible and can spend the existing budget, so it needs the exact confirmation text. No new creation approval.","operationId":"PublicAdsController_tikTokPublicationsActivate_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"publicationId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"idempotencyKey":{"description":"Stable key for this exact request. Reuse after an unknown response; never use a new key to retry.","type":"string","minLength":1,"maxLength":128},"confirmationSpecHash":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["idempotencyKey","confirmationSpecHash"],"additionalProperties":false}}}},"responses":{"200":{"description":"Activate TikTok publication","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"publication":{"type":"object","properties":{"appUrl":{"type":"string","format":"uri"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"draftId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"accountId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"state":{"type":"string","enum":["pending_dispatch","queued","publishing","reconciling","unknown","failed","ready_disabled","activating","active","pausing","paused"]},"checkpoint":{"type":"string"},"retryClassification":{"type":"string","enum":["none","confirmed_unsent","definitive_rejection","ambiguous"]},"specHash":{"type":"string"},"specification":{"type":"object","properties":{"schemaVersion":{"type":"number","enum":[1]},"campaignName":{"nullable":true,"type":"string","maxLength":512},"adGroupName":{"nullable":true,"type":"string","maxLength":512},"identity":{"nullable":true,"type":"object","properties":{"id":{"type":"string","maxLength":128},"type":{"type":"string","enum":["TT_USER","BC_AUTH_TT"]},"authorizedBcId":{"nullable":true,"type":"string","maxLength":128},"displayName":{"type":"string","maxLength":255}},"required":["id","type","displayName"],"additionalProperties":false},"objective":{"nullable":true,"type":"string","enum":["TRAFFIC","VIDEO_VIEWS","REACH","ENGAGEMENT"]},"communityGoal":{"nullable":true,"type":"string","enum":["FOLLOWERS","PAGE_VISIT"]},"communityBidMicros":{"nullable":true,"type":"string","maxLength":32},"frequencyCap":{"nullable":true,"type":"object","properties":{"impressions":{"type":"integer","minimum":1,"maximum":1000},"days":{"type":"integer","minimum":1,"maximum":30}},"required":["impressions","days"],"additionalProperties":false},"targeting":{"nullable":true,"type":"object","properties":{"locationIds":{"maxItems":100,"type":"array","items":{"type":"string","maxLength":128}},"gender":{"type":"string","enum":["GENDER_UNLIMITED","GENDER_MALE","GENDER_FEMALE"]},"ageGroups":{"maxItems":5,"type":"array","items":{"type":"string","enum":["AGE_18_24","AGE_25_34","AGE_35_44","AGE_45_54","AGE_55_100"]}}},"required":["locationIds","gender","ageGroups"],"additionalProperties":false},"budget":{"nullable":true,"anyOf":[{"type":"object","properties":{"mode":{"type":"string","enum":["lifetime"]},"lifetimeMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["lifetimeMicros","currency"],"additionalProperties":false},{"type":"object","properties":{"mode":{"type":"string","enum":["daily"]},"dailyMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["mode","dailyMicros","currency"],"additionalProperties":false}]},"flight":{"nullable":true,"type":"object","properties":{"ongoing":{"type":"boolean"},"startAt":{"type":"string","maxLength":64},"endAt":{"type":"string","maxLength":64},"timezone":{"type":"string","maxLength":64}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"searchAds":{"type":"boolean"},"allowComments":{"type":"boolean"},"allowDownloads":{"type":"boolean"},"allowSharing":{"type":"boolean"}},"required":["searchAds","allowComments","allowDownloads","allowSharing"],"additionalProperties":false},"ads":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string","maxLength":512},"videoMediaId":{"type":"string","maxLength":128},"coverMediaId":{"type":"string","maxLength":128},"suggestedCover":{"nullable":true,"type":"object","properties":{"videoId":{"type":"string","minLength":1,"maxLength":128},"imageId":{"type":"string","minLength":1,"maxLength":128}},"required":["videoId","imageId"],"additionalProperties":false},"text":{"type":"string","maxLength":100},"callToAction":{"type":"string","enum":["","LEARN_MORE","SHOP_NOW","SIGN_UP","CONTACT_US","DOWNLOAD_NOW","VIEW_PROFILE"]},"destinationUrl":{"nullable":true,"type":"string","maxLength":2048},"tiktokPageCategory":{"nullable":true,"type":"string","enum":["PROFILE_PAGE","OTHER_TIKTOK_PAGE","TIKTOK_INSTANT_PAGE"]},"instantPageId":{"nullable":true,"type":"string","maxLength":128}},"required":["key","name","videoMediaId","coverMediaId","text","callToAction"],"additionalProperties":false}}},"required":["schemaVersion","campaignName","adGroupName","identity","objective","targeting","budget","flight","ads"],"additionalProperties":false},"provider":{"type":"object","properties":{"campaignId":{"nullable":true,"type":"string"},"adGroupId":{"nullable":true,"type":"string"}},"required":["campaignId","adGroupId"],"additionalProperties":false},"ads":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"state":{"type":"string"},"videoMediaId":{"type":"string"},"coverMediaId":{"nullable":true,"type":"string"},"videoAssetId":{"nullable":true,"type":"string"},"coverAssetId":{"nullable":true,"type":"string"},"adId":{"nullable":true,"type":"string"},"generatedPostId":{"nullable":true,"type":"string"},"error":{"nullable":true,"type":"string"}},"required":["key","position","state","videoMediaId","coverMediaId","videoAssetId","coverAssetId","adId","generatedPostId","error"],"additionalProperties":false}},"safeError":{"nullable":true,"type":"string"},"safeErrorCode":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","draftId","accountId","state","checkpoint","retryClassification","specHash","specification","provider","ads","safeError","safeErrorCode","createdAt","updatedAt"],"additionalProperties":false},"nextStep":{"type":"string"}},"required":["account","money","publication","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Activate TikTok publication","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/publications/{publicationId}/pause":{"post":{"description":"Pause the owned campaign using a stable management key. A parent pause does not change every child operation switch.","operationId":"PublicAdsController_tikTokPublicationsPause_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"publicationId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"idempotencyKey":{"description":"Stable key for this exact request. Reuse after an unknown response; never use a new key to retry.","type":"string","minLength":1,"maxLength":128}},"required":["idempotencyKey"],"additionalProperties":false}}}},"responses":{"200":{"description":"Pause TikTok publication","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"publication":{"type":"object","properties":{"appUrl":{"type":"string","format":"uri"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"draftId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"accountId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"state":{"type":"string","enum":["pending_dispatch","queued","publishing","reconciling","unknown","failed","ready_disabled","activating","active","pausing","paused"]},"checkpoint":{"type":"string"},"retryClassification":{"type":"string","enum":["none","confirmed_unsent","definitive_rejection","ambiguous"]},"specHash":{"type":"string"},"specification":{"type":"object","properties":{"schemaVersion":{"type":"number","enum":[1]},"campaignName":{"nullable":true,"type":"string","maxLength":512},"adGroupName":{"nullable":true,"type":"string","maxLength":512},"identity":{"nullable":true,"type":"object","properties":{"id":{"type":"string","maxLength":128},"type":{"type":"string","enum":["TT_USER","BC_AUTH_TT"]},"authorizedBcId":{"nullable":true,"type":"string","maxLength":128},"displayName":{"type":"string","maxLength":255}},"required":["id","type","displayName"],"additionalProperties":false},"objective":{"nullable":true,"type":"string","enum":["TRAFFIC","VIDEO_VIEWS","REACH","ENGAGEMENT"]},"communityGoal":{"nullable":true,"type":"string","enum":["FOLLOWERS","PAGE_VISIT"]},"communityBidMicros":{"nullable":true,"type":"string","maxLength":32},"frequencyCap":{"nullable":true,"type":"object","properties":{"impressions":{"type":"integer","minimum":1,"maximum":1000},"days":{"type":"integer","minimum":1,"maximum":30}},"required":["impressions","days"],"additionalProperties":false},"targeting":{"nullable":true,"type":"object","properties":{"locationIds":{"maxItems":100,"type":"array","items":{"type":"string","maxLength":128}},"gender":{"type":"string","enum":["GENDER_UNLIMITED","GENDER_MALE","GENDER_FEMALE"]},"ageGroups":{"maxItems":5,"type":"array","items":{"type":"string","enum":["AGE_18_24","AGE_25_34","AGE_35_44","AGE_45_54","AGE_55_100"]}}},"required":["locationIds","gender","ageGroups"],"additionalProperties":false},"budget":{"nullable":true,"anyOf":[{"type":"object","properties":{"mode":{"type":"string","enum":["lifetime"]},"lifetimeMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["lifetimeMicros","currency"],"additionalProperties":false},{"type":"object","properties":{"mode":{"type":"string","enum":["daily"]},"dailyMicros":{"type":"string","maxLength":32},"currency":{"type":"string","maxLength":3},"level":{"type":"string","enum":["adgroup","campaign"]}},"required":["mode","dailyMicros","currency"],"additionalProperties":false}]},"flight":{"nullable":true,"type":"object","properties":{"ongoing":{"type":"boolean"},"startAt":{"type":"string","maxLength":64},"endAt":{"type":"string","maxLength":64},"timezone":{"type":"string","maxLength":64}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"searchAds":{"type":"boolean"},"allowComments":{"type":"boolean"},"allowDownloads":{"type":"boolean"},"allowSharing":{"type":"boolean"}},"required":["searchAds","allowComments","allowDownloads","allowSharing"],"additionalProperties":false},"ads":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string","maxLength":512},"videoMediaId":{"type":"string","maxLength":128},"coverMediaId":{"type":"string","maxLength":128},"suggestedCover":{"nullable":true,"type":"object","properties":{"videoId":{"type":"string","minLength":1,"maxLength":128},"imageId":{"type":"string","minLength":1,"maxLength":128}},"required":["videoId","imageId"],"additionalProperties":false},"text":{"type":"string","maxLength":100},"callToAction":{"type":"string","enum":["","LEARN_MORE","SHOP_NOW","SIGN_UP","CONTACT_US","DOWNLOAD_NOW","VIEW_PROFILE"]},"destinationUrl":{"nullable":true,"type":"string","maxLength":2048},"tiktokPageCategory":{"nullable":true,"type":"string","enum":["PROFILE_PAGE","OTHER_TIKTOK_PAGE","TIKTOK_INSTANT_PAGE"]},"instantPageId":{"nullable":true,"type":"string","maxLength":128}},"required":["key","name","videoMediaId","coverMediaId","text","callToAction"],"additionalProperties":false}}},"required":["schemaVersion","campaignName","adGroupName","identity","objective","targeting","budget","flight","ads"],"additionalProperties":false},"provider":{"type":"object","properties":{"campaignId":{"nullable":true,"type":"string"},"adGroupId":{"nullable":true,"type":"string"}},"required":["campaignId","adGroupId"],"additionalProperties":false},"ads":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"state":{"type":"string"},"videoMediaId":{"type":"string"},"coverMediaId":{"nullable":true,"type":"string"},"videoAssetId":{"nullable":true,"type":"string"},"coverAssetId":{"nullable":true,"type":"string"},"adId":{"nullable":true,"type":"string"},"generatedPostId":{"nullable":true,"type":"string"},"error":{"nullable":true,"type":"string"}},"required":["key","position","state","videoMediaId","coverMediaId","videoAssetId","coverAssetId","adId","generatedPostId","error"],"additionalProperties":false}},"safeError":{"nullable":true,"type":"string"},"safeErrorCode":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","draftId","accountId","state","checkpoint","retryClassification","specHash","specification","provider","ads","safeError","safeErrorCode","createdAt","updatedAt"],"additionalProperties":false},"nextStep":{"type":"string"}},"required":["account","money","publication","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Pause TikTok publication","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/spark/boosts":{"get":{"description":"Read saved Spark attempts with bounded pagination.","operationId":"PublicAdsController_tikTokSparkBoostsList_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List TikTok Spark boosts","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"boosts":{"type":"array","items":{"type":"object","properties":{"appUrl":{"type":"string","format":"uri"},"boostId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"sourceContentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"state":{"type":"string","enum":["pending","processing","retryable","ambiguous","manual_reconciliation_required","succeeded","failed"]},"checkpoint":{"type":"string"},"campaignId":{"nullable":true,"type":"string"},"adGroupId":{"nullable":true,"type":"string"},"adId":{"nullable":true,"type":"string"},"objective":{"type":"string"},"optimizationGoal":{"type":"string"},"budgetMode":{"type":"string"},"budgetMicros":{"type":"string"},"currency":{"type":"string"},"startAt":{"type":"string"},"endAt":{"type":"string"},"targeting":{"type":"object","properties":{"locationIds":{"type":"array","items":{"type":"string"}},"ageGroups":{"type":"array","items":{"type":"string"}},"gender":{"type":"string"}},"required":["locationIds","ageGroups","gender"],"additionalProperties":false},"frequency":{"nullable":true,"type":"number"},"frequencySchedule":{"nullable":true,"type":"number"},"callToAction":{"nullable":true,"type":"string"},"landingPageUrl":{"nullable":true,"type":"string"},"error":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"retryable":{"type":"boolean"}},"required":["code","message","retryable"],"additionalProperties":false},"createdAt":{"type":"string"},"completedAt":{"nullable":true,"type":"string"}},"required":["boostId","sourceContentId","state","checkpoint","campaignId","adGroupId","adId","objective","optimizationGoal","budgetMode","budgetMicros","currency","startAt","endAt","targeting","frequency","frequencySchedule","callToAction","landingPageUrl","error","createdAt","completedAt"],"additionalProperties":false}},"page":{"type":"object","properties":{"limit":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"offset":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"total":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"hasMore":{"type":"boolean"}},"required":["limit","offset","total","hasMore"],"additionalProperties":false}},"required":["account","money","boosts","page"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"List TikTok Spark boosts","tags":["Ads"]},"post":{"description":"Request human approval to authorize an owned TikTok post and create ENABLED campaign, ad group and ad resources. Spend may begin when schedule/review permit. Without approvalId creates and authorizes nothing; repeat unchanged request/key after the person approves in Maeve.","operationId":"PublicAdsController_tikTokSparkBoostsCreate_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"contentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"objective":{"type":"string","enum":["REACH","TRAFFIC","VIDEO_VIEWS","ENGAGEMENT"]},"optimizationGoal":{"type":"string","enum":["REACH","CLICK","TRAFFIC_LANDING_PAGE_VIEW","ENGAGED_VIEW","FOLLOWERS","PAGE_VISIT"]},"budgetMode":{"type":"string","enum":["BUDGET_MODE_DAY","BUDGET_MODE_TOTAL"]},"budgetMicros":{"description":"Whole micros of the account currency as a decimal string: 1000000 is one currency unit.","type":"string","pattern":"^\\d{1,18}$"},"startAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"endAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"locationIds":{"minItems":1,"maxItems":3000,"type":"array","items":{"type":"string","minLength":1,"maxLength":64}},"ageGroups":{"minItems":1,"maxItems":5,"type":"array","items":{"type":"string","enum":["AGE_18_24","AGE_25_34","AGE_35_44","AGE_45_54","AGE_55_100"]}},"gender":{"type":"string","enum":["GENDER_UNLIMITED","GENDER_MALE","GENDER_FEMALE"]},"frequency":{"type":"integer","minimum":1,"maximum":1000},"frequencySchedule":{"type":"integer","minimum":1,"maximum":30},"callToAction":{"type":"string","maxLength":64},"landingPageUrl":{"type":"string","maxLength":2000,"pattern":"^https:\\/\\/"},"idempotencyKey":{"description":"Stable key for this exact request. Reuse after an unknown response; never use a new key to retry.","type":"string","minLength":1,"maxLength":128},"approvalId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"chatConfirmation":{"description":"Only when the workspace lets people approve paid ad creation in chat: the chatConfirmation text from the approval response, sent with its approvalId after the person agreed in this chat. Never send it before they agree.","type":"string","maxLength":100}},"required":["contentId","objective","optimizationGoal","budgetMode","budgetMicros","startAt","endAt","locationIds","ageGroups","gender","idempotencyKey"],"additionalProperties":false}}}},"responses":{"200":{"description":"Create TikTok Spark boost","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"anyOf":[{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"boost":{"type":"object","properties":{"appUrl":{"type":"string","format":"uri"},"boostId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"sourceContentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"state":{"type":"string","enum":["pending","processing","retryable","ambiguous","manual_reconciliation_required","succeeded","failed"]},"checkpoint":{"type":"string"},"campaignId":{"nullable":true,"type":"string"},"adGroupId":{"nullable":true,"type":"string"},"adId":{"nullable":true,"type":"string"},"objective":{"type":"string"},"optimizationGoal":{"type":"string"},"budgetMode":{"type":"string"},"budgetMicros":{"type":"string"},"currency":{"type":"string"},"startAt":{"type":"string"},"endAt":{"type":"string"},"targeting":{"type":"object","properties":{"locationIds":{"type":"array","items":{"type":"string"}},"ageGroups":{"type":"array","items":{"type":"string"}},"gender":{"type":"string"}},"required":["locationIds","ageGroups","gender"],"additionalProperties":false},"frequency":{"nullable":true,"type":"number"},"frequencySchedule":{"nullable":true,"type":"number"},"callToAction":{"nullable":true,"type":"string"},"landingPageUrl":{"nullable":true,"type":"string"},"error":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"retryable":{"type":"boolean"}},"required":["code","message","retryable"],"additionalProperties":false},"createdAt":{"type":"string"},"completedAt":{"nullable":true,"type":"string"}},"required":["boostId","sourceContentId","state","checkpoint","campaignId","adGroupId","adId","objective","optimizationGoal","budgetMode","budgetMicros","currency","startAt","endAt","targeting","frequency","frequencySchedule","callToAction","landingPageUrl","error","createdAt","completedAt"],"additionalProperties":false},"nextStep":{"type":"string"},"approvalRequired":{"type":"boolean","enum":[false]}},"required":["account","money","boost","nextStep","approvalRequired"],"additionalProperties":false},{"type":"object","properties":{"approvalRequired":{"type":"boolean","enum":[true]},"approval":{"type":"object","properties":{"id":{"type":"string"},"status":{"description":"pending waits for the person. approved can be used once. consumed has been used. declined and expired cannot be used.","type":"string","enum":["pending","approved","declined","expired","consumed"]},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"accountId":{"type":"string"},"reviewUrl":{"description":"The Maeve page where the person who asked reviews and decides. Opening it does not approve.","type":"string"},"requestedAt":{"type":"string"},"expiresAt":{"type":"string"},"decidedAt":{"nullable":true,"type":"string"},"declineNote":{"description":"What the person said should change when they declined. Change the request to match before asking again.","nullable":true,"type":"string"},"summary":{"nullable":true,"type":"object","properties":{"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"title":{"description":"What will be created, in plain words.","type":"string"},"account":{"type":"object","properties":{"id":{"type":"string"},"name":{"nullable":true,"type":"string"},"providerAccountId":{"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"nullable":true,"type":"string"}},"required":["id","name","providerAccountId","currency","timezone"],"additionalProperties":false},"objective":{"description":"The objective as the platform names it.","type":"string"},"hierarchy":{"description":"Every entity the request creates or adds to, from the campaign down.","type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"},"name":{"type":"string"},"existing":{"description":"True when this entity already exists and is only added to.","type":"boolean"}},"required":["level","nativeType","name","existing"],"additionalProperties":false}},"creative":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"audience":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"budgets":{"type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set"]},"kind":{"type":"string","enum":["daily","lifetime"]},"amountMicros":{"type":"string"},"currency":{"type":"string"},"name":{"description":"The campaign or ad set this budget belongs to, when there are several.","type":"string"}},"required":["level","kind","amountMicros","currency"],"additionalProperties":false}},"schedule":{"type":"object","properties":{"startAt":{"type":"string"},"endAt":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone of the ad account.","nullable":true,"type":"string"}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"initialState":{"description":"The state the platform creates it in.","type":"string","enum":["paused","disabled","draft","enabled"]},"activatesDelivery":{"description":"True when this request also starts delivery, so the budget can be spent without another step.","type":"boolean"}},"required":["initialState","activatesDelivery"],"additionalProperties":false}},"required":["platform","operation","title","account","objective","hierarchy","creative","audience","budgets","schedule","delivery"],"additionalProperties":false}},"required":["id","status","platform","operation","accountId","reviewUrl","requestedAt","expiresAt","decidedAt","summary"],"additionalProperties":false},"chatConfirmation":{"description":"Present when the workspace lets the person approve in chat. Show them approval.summary and ask. Only after they agree, send the same request again with approvalId and this text as chatConfirmation. A value returned here is not permission.","type":"string"},"nextStep":{"description":"What to do with this approval before sending the request again.","type":"string"}},"required":["approvalRequired","approval","nextStep"],"additionalProperties":false}]},"meta":{"type":"null","nullable":true,"example":null}}}}}},"202":{"description":"Nothing was created. The request is waiting for the person to approve it in Maeve.","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"approvalRequired":{"type":"boolean","enum":[true]},"approval":{"type":"object","properties":{"id":{"type":"string"},"status":{"description":"pending waits for the person. approved can be used once. consumed has been used. declined and expired cannot be used.","type":"string","enum":["pending","approved","declined","expired","consumed"]},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"accountId":{"type":"string"},"reviewUrl":{"description":"The Maeve page where the person who asked reviews and decides. Opening it does not approve.","type":"string"},"requestedAt":{"type":"string"},"expiresAt":{"type":"string"},"decidedAt":{"nullable":true,"type":"string"},"declineNote":{"description":"What the person said should change when they declined. Change the request to match before asking again.","nullable":true,"type":"string"},"summary":{"nullable":true,"type":"object","properties":{"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"title":{"description":"What will be created, in plain words.","type":"string"},"account":{"type":"object","properties":{"id":{"type":"string"},"name":{"nullable":true,"type":"string"},"providerAccountId":{"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"nullable":true,"type":"string"}},"required":["id","name","providerAccountId","currency","timezone"],"additionalProperties":false},"objective":{"description":"The objective as the platform names it.","type":"string"},"hierarchy":{"description":"Every entity the request creates or adds to, from the campaign down.","type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"},"name":{"type":"string"},"existing":{"description":"True when this entity already exists and is only added to.","type":"boolean"}},"required":["level","nativeType","name","existing"],"additionalProperties":false}},"creative":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"audience":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"budgets":{"type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set"]},"kind":{"type":"string","enum":["daily","lifetime"]},"amountMicros":{"type":"string"},"currency":{"type":"string"},"name":{"description":"The campaign or ad set this budget belongs to, when there are several.","type":"string"}},"required":["level","kind","amountMicros","currency"],"additionalProperties":false}},"schedule":{"type":"object","properties":{"startAt":{"type":"string"},"endAt":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone of the ad account.","nullable":true,"type":"string"}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"initialState":{"description":"The state the platform creates it in.","type":"string","enum":["paused","disabled","draft","enabled"]},"activatesDelivery":{"description":"True when this request also starts delivery, so the budget can be spent without another step.","type":"boolean"}},"required":["initialState","activatesDelivery"],"additionalProperties":false}},"required":["platform","operation","title","account","objective","hierarchy","creative","audience","budgets","schedule","delivery"],"additionalProperties":false}},"required":["id","status","platform","operation","accountId","reviewUrl","requestedAt","expiresAt","decidedAt","summary"],"additionalProperties":false},"chatConfirmation":{"description":"Present when the workspace lets the person approve in chat. Show them approval.summary and ask. Only after they agree, send the same request again with approvalId and this text as chatConfirmation. A value returned here is not permission.","type":"string"},"nextStep":{"description":"What to do with this approval before sending the request again.","type":"string"}},"required":["approvalRequired","approval","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Create TikTok Spark boost","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/spark/boosts/{boostId}":{"get":{"description":"Read one Spark attempt, request settings, state and provider IDs. Success means created and synced, not proof of delivery.","operationId":"PublicAdsController_tikTokSparkBoostsGet_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"boostId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Get TikTok Spark boost","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"boost":{"type":"object","properties":{"appUrl":{"type":"string","format":"uri"},"boostId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"sourceContentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"state":{"type":"string","enum":["pending","processing","retryable","ambiguous","manual_reconciliation_required","succeeded","failed"]},"checkpoint":{"type":"string"},"campaignId":{"nullable":true,"type":"string"},"adGroupId":{"nullable":true,"type":"string"},"adId":{"nullable":true,"type":"string"},"objective":{"type":"string"},"optimizationGoal":{"type":"string"},"budgetMode":{"type":"string"},"budgetMicros":{"type":"string"},"currency":{"type":"string"},"startAt":{"type":"string"},"endAt":{"type":"string"},"targeting":{"type":"object","properties":{"locationIds":{"type":"array","items":{"type":"string"}},"ageGroups":{"type":"array","items":{"type":"string"}},"gender":{"type":"string"}},"required":["locationIds","ageGroups","gender"],"additionalProperties":false},"frequency":{"nullable":true,"type":"number"},"frequencySchedule":{"nullable":true,"type":"number"},"callToAction":{"nullable":true,"type":"string"},"landingPageUrl":{"nullable":true,"type":"string"},"error":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"retryable":{"type":"boolean"}},"required":["code","message","retryable"],"additionalProperties":false},"createdAt":{"type":"string"},"completedAt":{"nullable":true,"type":"string"}},"required":["boostId","sourceContentId","state","checkpoint","campaignId","adGroupId","adId","objective","optimizationGoal","budgetMode","budgetMicros","currency","startAt","endAt","targeting","frequency","frequencySchedule","callToAction","landingPageUrl","error","createdAt","completedAt"],"additionalProperties":false},"nextStep":{"type":"string"}},"required":["account","money","boost","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Get TikTok Spark boost","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/spark/boosts/{boostId}/retry":{"post":{"description":"Resume or reconcile the same attempt. Ambiguous creation is reconciled before retry and never replaced with a new key.","operationId":"PublicAdsController_tikTokSparkBoostsRetry_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"boostId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Retry TikTok Spark boost","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"money":{"type":"object","properties":{"unit":{"type":"string","enum":["micros"]},"microsPerCurrencyUnit":{"type":"number","enum":[1000000]},"currency":{"description":"ISO currency of the ad account.","nullable":true,"type":"string"}},"required":["unit","microsPerCurrencyUnit","currency"],"additionalProperties":false},"boost":{"type":"object","properties":{"appUrl":{"type":"string","format":"uri"},"boostId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"sourceContentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"state":{"type":"string","enum":["pending","processing","retryable","ambiguous","manual_reconciliation_required","succeeded","failed"]},"checkpoint":{"type":"string"},"campaignId":{"nullable":true,"type":"string"},"adGroupId":{"nullable":true,"type":"string"},"adId":{"nullable":true,"type":"string"},"objective":{"type":"string"},"optimizationGoal":{"type":"string"},"budgetMode":{"type":"string"},"budgetMicros":{"type":"string"},"currency":{"type":"string"},"startAt":{"type":"string"},"endAt":{"type":"string"},"targeting":{"type":"object","properties":{"locationIds":{"type":"array","items":{"type":"string"}},"ageGroups":{"type":"array","items":{"type":"string"}},"gender":{"type":"string"}},"required":["locationIds","ageGroups","gender"],"additionalProperties":false},"frequency":{"nullable":true,"type":"number"},"frequencySchedule":{"nullable":true,"type":"number"},"callToAction":{"nullable":true,"type":"string"},"landingPageUrl":{"nullable":true,"type":"string"},"error":{"nullable":true,"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"retryable":{"type":"boolean"}},"required":["code","message","retryable"],"additionalProperties":false},"createdAt":{"type":"string"},"completedAt":{"nullable":true,"type":"string"}},"required":["boostId","sourceContentId","state","checkpoint","campaignId","adGroupId","adId","objective","optimizationGoal","budgetMode","budgetMicros","currency","startAt","endAt","targeting","frequency","frequencySchedule","callToAction","landingPageUrl","error","createdAt","completedAt"],"additionalProperties":false},"nextStep":{"type":"string"}},"required":["account","money","boost","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Retry TikTok Spark boost","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/ads/tiktok/{accountId}/entities/{level}/{entityId}":{"delete":{"description":"Permanently delete one exact TikTok campaign, ad group or ad. Refuses in-flight owned workflows. Pause and inventory children first; shared media and original posts remain. Requires exact MCP confirmation and never auto-confirms.","operationId":"PublicAdsController_tikTokEntitiesDelete_v1","parameters":[{"name":"accountId","required":true,"in":"path","description":"Ad account UUID from the accounts list.","schema":{"type":"string"}},{"name":"level","required":true,"in":"path","schema":{"type":"string"}},{"name":"entityId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Delete TikTok ad entity","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"providerAccountId":{"description":"The account ID the platform uses.","type":"string"},"name":{"nullable":true,"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone the platform reports this account in.","nullable":true,"type":"string"},"isEnabled":{"type":"boolean"},"credentialStatus":{"type":"string","enum":["active","revoked"]}},"required":["id","platform","providerAccountId","name","currency","timezone","isEnabled","credentialStatus"],"additionalProperties":false},"level":{"type":"string","enum":["campaign","adgroup","ad"]},"entityId":{"type":"string"},"deleted":{"type":"boolean","enum":[true]},"confirmationMode":{"type":"string","enum":["explicit_confirmation","dangerous_auto_confirm"]}},"required":["account","level","entityId","deleted"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Delete TikTok ad entity","tags":["Ads"]}},"/v1/workspaces/{workspaceId}/boosts":{"post":{"description":"Creates and activates a Meta boost for an already published Facebook or Instagram post, once you have approved it. The first request creates nothing. It returns 202 with an approval and the Maeve page where you review it. After you approve there, send the same request again with approvalId. An approval covers one unchanged request and cannot be given by an API key.","operationId":"PublicBoostController_create_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateBoostDto"}}}},"responses":{"201":{"description":"Boost created","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicBoostDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}},"202":{"description":"Nothing was created. The request is waiting for your approval.","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"approvalRequired":{"type":"boolean","enum":[true]},"approval":{"type":"object","properties":{"id":{"type":"string"},"status":{"description":"pending waits for the person. approved can be used once. consumed has been used. declined and expired cannot be used.","type":"string","enum":["pending","approved","declined","expired","consumed"]},"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"accountId":{"type":"string"},"reviewUrl":{"description":"The Maeve page where the person who asked reviews and decides. Opening it does not approve.","type":"string"},"requestedAt":{"type":"string"},"expiresAt":{"type":"string"},"decidedAt":{"nullable":true,"type":"string"},"declineNote":{"description":"What the person said should change when they declined. Change the request to match before asking again.","nullable":true,"type":"string"},"summary":{"nullable":true,"type":"object","properties":{"platform":{"type":"string","enum":["meta","tiktok","linkedin","google","pinterest"]},"operation":{"type":"string","enum":["meta.campaign.publish","meta.boost.create","meta.boost.create_and_activate","tiktok.campaign.publish","tiktok.spark_boost.create","linkedin.campaign.create","pinterest.campaign.create","google.campaign.create","google.search.edit","google.search.pause","google.search.activate","google.search.negatives","google.image.upload","google.commerce.edit","google.commerce.pause","google.commerce.activate"]},"title":{"description":"What will be created, in plain words.","type":"string"},"account":{"type":"object","properties":{"id":{"type":"string"},"name":{"nullable":true,"type":"string"},"providerAccountId":{"type":"string"},"currency":{"nullable":true,"type":"string"},"timezone":{"nullable":true,"type":"string"}},"required":["id","name","providerAccountId","currency","timezone"],"additionalProperties":false},"objective":{"description":"The objective as the platform names it.","type":"string"},"hierarchy":{"description":"Every entity the request creates or adds to, from the campaign down.","type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set","ad"]},"nativeType":{"type":"string"},"name":{"type":"string"},"existing":{"description":"True when this entity already exists and is only added to.","type":"boolean"}},"required":["level","nativeType","name","existing"],"additionalProperties":false}},"creative":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"audience":{"type":"array","items":{"type":"object","properties":{"tikTokCover":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"videoId":{"type":"string"},"imageId":{"type":"string"}},"required":["mediaId","videoId","imageId"],"additionalProperties":false},"pinterestAd":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"pinId":{"type":"string","pattern":"^\\d{1,32}$"}},"required":["index"],"additionalProperties":false},"label":{"type":"string"},"value":{"type":"string"},"media":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["image","video"]}},"required":["mediaId","type"],"additionalProperties":false}},"required":["label","value"],"additionalProperties":false}},"budgets":{"type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["campaign","ad_set"]},"kind":{"type":"string","enum":["daily","lifetime"]},"amountMicros":{"type":"string"},"currency":{"type":"string"},"name":{"description":"The campaign or ad set this budget belongs to, when there are several.","type":"string"}},"required":["level","kind","amountMicros","currency"],"additionalProperties":false}},"schedule":{"type":"object","properties":{"startAt":{"type":"string"},"endAt":{"nullable":true,"type":"string"},"timezone":{"description":"IANA timezone of the ad account.","nullable":true,"type":"string"}},"required":["startAt","endAt","timezone"],"additionalProperties":false},"delivery":{"type":"object","properties":{"initialState":{"description":"The state the platform creates it in.","type":"string","enum":["paused","disabled","draft","enabled"]},"activatesDelivery":{"description":"True when this request also starts delivery, so the budget can be spent without another step.","type":"boolean"}},"required":["initialState","activatesDelivery"],"additionalProperties":false}},"required":["platform","operation","title","account","objective","hierarchy","creative","audience","budgets","schedule","delivery"],"additionalProperties":false}},"required":["id","status","platform","operation","accountId","reviewUrl","requestedAt","expiresAt","decidedAt","summary"],"additionalProperties":false},"chatConfirmation":{"description":"Present when the workspace lets the person approve in chat. Show them approval.summary and ask. Only after they agree, send the same request again with approvalId and this text as chatConfirmation. A value returned here is not permission.","type":"string"},"nextStep":{"description":"What to do with this approval before sending the request again.","type":"string"}},"required":["approvalRequired","approval","nextStep"],"additionalProperties":false},"meta":{"type":"null","nullable":true,"example":null}}}}}}},"security":[{"bearer":[]}],"summary":"Create a boost","tags":["Boost"]},"get":{"operationId":"PublicBoostController_list_v1","parameters":[{"name":"contentIds","required":false,"in":"query","description":"Comma-separated content UUIDs.","schema":{"description":"Comma-separated content UUIDs.","type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},{"name":"statuses","required":false,"in":"query","description":"Comma-separated statuses: creating, created, active, paused, completed, error.","schema":{"description":"Comma-separated statuses: creating, created, active, paused, completed, error.","type":"array","items":{"type":"string","enum":["creating","created","active","paused","completed","error"]}}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Boost list","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicBoostDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List boosts","tags":["Boost"]}},"/v1/workspaces/{workspaceId}/boosts/boosted-content-ids":{"get":{"operationId":"PublicBoostController_boostedContentIds_v1","parameters":[{"name":"contentIds","required":false,"in":"query","description":"Comma-separated content UUIDs to filter by.","schema":{"description":"Comma-separated content UUIDs to filter by.","type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Active boosted posts","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicBoostedPostDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List active boosted content ids","tags":["Boost"]}},"/v1/workspaces/{workspaceId}/boosts/ad-accounts/{integrationId}":{"get":{"operationId":"PublicBoostController_adAccounts_v1","parameters":[{"name":"integrationId","required":true,"in":"path","description":"Facebook or Instagram integration UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Ad account list","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicBoostAdAccountDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List available Meta ad accounts","tags":["Boost"]}},"/v1/workspaces/{workspaceId}/boosts/reach-estimate":{"post":{"operationId":"PublicBoostController_reachEstimate_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReachEstimateDto"}}}},"responses":{"200":{"description":"Reach estimate","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicBoostReachEstimateDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Estimate boost reach","tags":["Boost"]}},"/v1/workspaces/{workspaceId}/boosts/content/{contentId}":{"get":{"operationId":"PublicBoostController_getForContent_v1","parameters":[{"name":"contentId","required":true,"in":"path","description":"Published content UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Boost for post","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicBoostDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Read boost for a post","tags":["Boost"]}},"/v1/workspaces/{workspaceId}/boosts/{boostId}":{"get":{"operationId":"PublicBoostController_getById_v1","parameters":[{"name":"boostId","required":true,"in":"path","description":"Boost UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Boost detail","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicBoostDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Read boost status","tags":["Boost"]},"delete":{"operationId":"PublicBoostController_cancel_v1","parameters":[{"name":"boostId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Boost canceled","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicBoostCancelDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Cancel a boost","tags":["Boost"]}},"/v1/workspaces/{workspaceId}/boosts/{boostId}/performance":{"get":{"operationId":"PublicBoostController_performance_v1","parameters":[{"name":"boostId","required":true,"in":"path","description":"Boost UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Boost performance","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicBoostDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Refresh and read boost performance","tags":["Boost"]}},"/v1/workspaces/{workspaceId}/boosts/{boostId}/pause":{"patch":{"operationId":"PublicBoostController_pause_v1","parameters":[{"name":"boostId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Boost paused","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicBoostDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Pause a boost","tags":["Boost"]}},"/v1/workspaces/{workspaceId}/boosts/{boostId}/resume":{"patch":{"operationId":"PublicBoostController_resume_v1","parameters":[{"name":"boostId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Boost resumed","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicBoostDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Resume a boost","tags":["Boost"]}},"/v1/workspaces/{workspaceId}/analytics":{"get":{"operationId":"PublicAnalyticsController_account_v1","parameters":[{"name":"startDate","required":false,"in":"query","schema":{"nullable":true,"type":"string"}},{"name":"endDate","required":false,"in":"query","schema":{"nullable":true,"type":"string"}},{"name":"integrationId","required":true,"in":"query","schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"days","required":false,"in":"query","schema":{"default":30,"anyOf":[{"type":"string","enum":["all"]},{"type":"integer","minimum":1,"maximum":90}]}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Account analytics metrics","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicAnalyticsMetricsResponseDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get account analytics for an integration","tags":["Analytics"]}},"/v1/workspaces/{workspaceId}/analytics/health":{"get":{"operationId":"PublicAnalyticsController_health_v1","parameters":[{"name":"integrationId","required":true,"in":"query","schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Analytics integration health","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicAnalyticsHealthDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get analytics health for an integration","tags":["Analytics"]}},"/v1/workspaces/{workspaceId}/analytics/aggregate":{"get":{"operationId":"PublicAnalyticsController_aggregate_v1","parameters":[{"name":"startDate","required":false,"in":"query","schema":{"nullable":true,"type":"string"}},{"name":"endDate","required":false,"in":"query","schema":{"nullable":true,"type":"string"}},{"name":"integrationIds","required":false,"in":"query","description":"Comma-separated integration UUIDs.","schema":{"description":"Comma-separated integration UUIDs.","default":[],"uniqueItems":true,"maxItems":100,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},{"name":"days","required":false,"in":"query","schema":{"default":30,"anyOf":[{"type":"string","enum":["all"]},{"type":"integer","minimum":1,"maximum":90}]}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Aggregated analytics metrics","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicAnalyticsMetricsResponseDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get aggregated workspace analytics","tags":["Analytics"]}},"/v1/workspaces/{workspaceId}/analytics/posts":{"get":{"operationId":"PublicAnalyticsController_posts_v1","parameters":[{"name":"integrationId","required":true,"in":"query","schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"limit","required":false,"in":"query","schema":{"default":10,"nullable":true,"type":"integer","minimum":1,"maximum":50}},{"name":"offset","required":false,"in":"query","schema":{"default":0,"nullable":true,"type":"integer","minimum":0,"maximum":9007199254740991}},{"name":"postType","required":false,"in":"query","description":"Comma-separated post types: post, reel, short, story, thread, article, poll, document, event, offer.","schema":{"description":"Comma-separated post types: post, reel, short, story, thread, article, poll, document, event, offer.","default":[],"uniqueItems":true,"maxItems":10,"type":"array","items":{"type":"string","enum":["post","reel","short","story","thread","article","poll","document","event","offer"]}}},{"name":"mediaFormat","required":false,"in":"query","description":"Comma-separated media formats: text, image, gif, video, carousel.","schema":{"description":"Comma-separated media formats: text, image, gif, video, carousel.","default":[],"uniqueItems":true,"maxItems":5,"type":"array","items":{"type":"string","enum":["text","image","gif","video","carousel"]}}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Post analytics list","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicAnalyticsPostsResponseDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List post analytics for an integration","tags":["Analytics"]}},"/v1/workspaces/{workspaceId}/analytics/posts/aggregate":{"get":{"operationId":"PublicAnalyticsController_aggregatePosts_v1","parameters":[{"name":"startDate","required":false,"in":"query","schema":{"nullable":true,"type":"string"}},{"name":"endDate","required":false,"in":"query","schema":{"nullable":true,"type":"string"}},{"name":"integrationIds","required":false,"in":"query","description":"Comma-separated integration UUIDs.","schema":{"description":"Comma-separated integration UUIDs.","default":[],"uniqueItems":true,"maxItems":100,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},{"name":"days","required":false,"in":"query","schema":{"default":30,"anyOf":[{"type":"string","enum":["all"]},{"type":"integer","minimum":1,"maximum":90}]}},{"name":"limit","required":false,"in":"query","schema":{"default":12,"nullable":true,"type":"integer","minimum":1,"maximum":50}},{"name":"offset","required":false,"in":"query","schema":{"default":0,"nullable":true,"type":"integer","minimum":0,"maximum":9007199254740991}},{"name":"sortBy","required":false,"in":"query","schema":{"enum":["recent","engagement","views"],"type":"string"}},{"name":"postType","required":false,"in":"query","description":"Comma-separated post types: post, reel, short, story, thread, article, poll, document, event, offer.","schema":{"description":"Comma-separated post types: post, reel, short, story, thread, article, poll, document, event, offer.","default":[],"uniqueItems":true,"maxItems":10,"type":"array","items":{"type":"string","enum":["post","reel","short","story","thread","article","poll","document","event","offer"]}}},{"name":"mediaFormat","required":false,"in":"query","description":"Comma-separated media formats: text, image, gif, video, carousel.","schema":{"description":"Comma-separated media formats: text, image, gif, video, carousel.","default":[],"uniqueItems":true,"maxItems":5,"type":"array","items":{"type":"string","enum":["text","image","gif","video","carousel"]}}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Aggregated post analytics list","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicAnalyticsPostsResponseDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List aggregated post analytics","tags":["Analytics"]}},"/v1/workspaces/{workspaceId}/analytics/posts/{postId}":{"get":{"operationId":"PublicAnalyticsController_singlePost_v1","parameters":[{"name":"postId","required":true,"in":"path","description":"Published content UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Single post analytics","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicSinglePostAnalyticsDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get analytics for a single post","tags":["Analytics"]}},"/v1/workspaces/{workspaceId}/analytics/demographics":{"get":{"operationId":"PublicAnalyticsController_demographics_v1","parameters":[{"name":"integrationId","required":true,"in":"query","schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Audience demographics","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicAnalyticsDemographicsResponseDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get audience demographics for an integration","tags":["Analytics"]}},"/v1/workspaces/{workspaceId}/analytics/report/{provider}":{"post":{"operationId":"PublicAnalyticsController_report_v1","parameters":[{"name":"provider","required":true,"in":"path","description":"Report provider, e.g. instagram, facebook, youtube.","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/GenerateReportDto"}]}}}},"responses":{"200":{"description":"PDF report","content":{"application/pdf":{"schema":{"type":"string","format":"binary"}}}}},"security":[{"bearer":[]}],"summary":"Generate an analytics PDF report","tags":["Analytics"]}},"/v1/workspaces/{workspaceId}/hashtags":{"post":{"description":"Creates a saved hashtag group in the current workspace.","operationId":"PublicHashtagsController_create_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateHashtagGroupDto"}}}},"responses":{"201":{"description":"Hashtag group created","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicHashtagGroupDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Create a hashtag group","tags":["Hashtags"]},"get":{"description":"Returns saved hashtag groups for the current workspace, newest first.","operationId":"PublicHashtagsController_list_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Hashtag group list","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicHashtagGroupDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List hashtag groups","tags":["Hashtags"]}},"/v1/workspaces/{workspaceId}/hashtags/{id}":{"patch":{"operationId":"PublicHashtagsController_update_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Hashtag group UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateHashtagGroupDto"}}}},"responses":{"200":{"description":"Hashtag group updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicHashtagGroupDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Update a hashtag group","tags":["Hashtags"]},"delete":{"operationId":"PublicHashtagsController_remove_v1","parameters":[{"name":"id","required":true,"in":"path","description":"Hashtag group UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Hashtag group deleted","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGenericResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Delete a hashtag group","tags":["Hashtags"]}},"/v1/workspaces/{workspaceId}/inbox/threads":{"get":{"operationId":"PublicInboxController_listThreads_v1","parameters":[{"name":"platform","required":false,"in":"query","schema":{"type":"string","enum":["instagram","facebook","threads","google-business-profile","youtube","linkedin","linkedin-page","tiktok"]}},{"name":"status","required":false,"in":"query","schema":{"default":"all","type":"string","enum":["open","all"]}},{"name":"integrationId","required":false,"in":"query","schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},{"name":"messageType","required":false,"in":"query","schema":{"type":"string","enum":["comment","dm","review","mention"]}},{"name":"search","required":false,"in":"query","schema":{"maxLength":200,"type":"string"}},{"name":"read","required":false,"in":"query","schema":{"default":"all","type":"string","enum":["read","unread","all"]}},{"name":"resolution","required":false,"in":"query","schema":{"default":"all","type":"string","enum":["resolved","unresolved","all"]}},{"name":"tagIds","required":false,"in":"query","schema":{"maxItems":20,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},{"name":"tagMatch","required":false,"in":"query","schema":{"default":"any","type":"string","enum":["any","all"]}},{"name":"page","required":false,"in":"query","schema":{"default":1,"type":"integer","minimum":1,"maximum":200}},{"name":"limit","required":false,"in":"query","schema":{"default":20,"type":"integer","minimum":1,"maximum":50}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Paginated inbox thread list","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicInboxThreadDto"}},"meta":{"$ref":"#/components/schemas/OffsetPaginationMetaDto"}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List inbox threads","tags":["Inbox"]}},"/v1/workspaces/{workspaceId}/inbox/tags":{"get":{"operationId":"PublicInboxController_listTags_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Inbox tags","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicInboxTagsDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List inbox tags","tags":["Inbox"]},"post":{"operationId":"PublicInboxController_createTag_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateInboxTagDto"}}}},"responses":{"200":{"description":"Inbox tag created","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicInboxTagResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Create an inbox tag","tags":["Inbox"]}},"/v1/workspaces/{workspaceId}/inbox/tags/{tagId}":{"patch":{"operationId":"PublicInboxController_updateTag_v1","parameters":[{"name":"tagId","required":true,"in":"path","description":"Inbox tag UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/UpdateInboxTagDto"}]}}}},"responses":{"200":{"description":"Inbox tag updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicInboxTagResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Update an inbox tag","tags":["Inbox"]},"delete":{"operationId":"PublicInboxController_deleteTag_v1","parameters":[{"name":"tagId","required":true,"in":"path","description":"Inbox tag UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Inbox tag deleted","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGenericResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Delete an inbox tag","tags":["Inbox"]}},"/v1/workspaces/{workspaceId}/inbox/tags/reorder":{"put":{"operationId":"PublicInboxController_reorderTags_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReorderInboxTagsDto"}}}},"responses":{"200":{"description":"Inbox tags reordered","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGenericResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Reorder inbox tags","tags":["Inbox"]}},"/v1/workspaces/{workspaceId}/inbox/threads/{threadId}/tags":{"put":{"operationId":"PublicInboxController_setThreadTags_v1","parameters":[{"name":"threadId","required":true,"in":"path","description":"Inbox thread UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetThreadTagsDto"}}}},"responses":{"200":{"description":"Thread tags","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicInboxTagsDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Set tags on an inbox thread","tags":["Inbox"]}},"/v1/workspaces/{workspaceId}/inbox/threads/{threadId}/messages":{"get":{"operationId":"PublicInboxController_getThreadMessages_v1","parameters":[{"name":"threadId","required":true,"in":"path","description":"Inbox thread UUID","schema":{"type":"string"}},{"name":"limit","required":false,"in":"query","description":"Messages per page (max 500, default 500)","schema":{"description":"Messages per page (max 500, default 500)","type":"integer","minimum":1,"maximum":500}},{"name":"before","required":false,"in":"query","description":"Message id cursor; returns messages strictly older than this message","schema":{"description":"Message id cursor; returns messages strictly older than this message","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Inbox thread with messages","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicInboxThreadMessagesDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List inbox thread messages","tags":["Inbox"]}},"/v1/workspaces/{workspaceId}/inbox/threads/read-all":{"post":{"operationId":"PublicInboxController_markAllRead_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/MarkAllReadDto"}]}}}},"responses":{"200":{"description":"Threads marked read","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicMarkedReadResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Mark matching inbox threads as read","tags":["Inbox"]}},"/v1/workspaces/{workspaceId}/inbox/threads/resolve-all":{"post":{"operationId":"PublicInboxController_resolveAllThreads_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ResolveAllThreadsDto"}]}}}},"responses":{"200":{"description":"Threads resolved","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicResolveAllThreadsResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Resolve matching inbox threads","tags":["Inbox"]}},"/v1/workspaces/{workspaceId}/inbox/threads/{threadId}/resolve":{"post":{"operationId":"PublicInboxController_resolveThread_v1","parameters":[{"name":"threadId","required":true,"in":"path","description":"Inbox thread UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ResolveThreadDto"}]}}}},"responses":{"200":{"description":"Thread resolved","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicInboxThreadResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Resolve an inbox thread","tags":["Inbox"]},"delete":{"operationId":"PublicInboxController_reopenThread_v1","parameters":[{"name":"threadId","required":true,"in":"path","description":"Inbox thread UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Thread reopened","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicInboxThreadResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Reopen a resolved inbox thread","tags":["Inbox"]}},"/v1/workspaces/{workspaceId}/inbox/messages/{messageId}/resolve":{"post":{"operationId":"PublicInboxController_resolveMessage_v1","parameters":[{"name":"messageId","required":true,"in":"path","description":"Inbox message UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ResolveThreadDto"}]}}}},"responses":{"200":{"description":"Message resolved","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicInboxMessageResolveResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Resolve an inbox message","tags":["Inbox"]},"delete":{"operationId":"PublicInboxController_reopenMessage_v1","parameters":[{"name":"messageId","required":true,"in":"path","description":"Inbox message UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Message reopened","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicInboxMessageResolveResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Reopen an inbox message","tags":["Inbox"]}},"/v1/workspaces/{workspaceId}/inbox/threads/{threadId}/read":{"post":{"operationId":"PublicInboxController_markRead_v1","parameters":[{"name":"threadId","required":true,"in":"path","description":"Inbox thread UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Thread marked read","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGenericResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Mark an inbox thread as read","tags":["Inbox"]},"delete":{"operationId":"PublicInboxController_markUnread_v1","parameters":[{"name":"threadId","required":true,"in":"path","description":"Inbox thread UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Thread marked unread","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGenericResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Mark an inbox thread as unread","tags":["Inbox"]}},"/v1/workspaces/{workspaceId}/inbox/threads/{threadId}/reply":{"post":{"operationId":"PublicInboxController_replyToThread_v1","parameters":[{"name":"threadId","required":true,"in":"path","description":"Inbox thread UUID","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Unique per reply. Retry with the same key to get the original reply back rather than sending it twice.","required":true,"schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/SendReplyDto"}]}}}},"responses":{"200":{"description":"Reply result","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicInboxReplyResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Reply to an inbox thread","tags":["Inbox"]}},"/v1/workspaces/{workspaceId}/inbox/threads/{threadId}/notes":{"post":{"operationId":"PublicInboxController_addNote_v1","parameters":[{"name":"threadId","required":true,"in":"path","description":"Inbox thread UUID","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Stable key for safe note retries.","required":false,"schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendNoteDto"}}}},"responses":{"200":{"description":"Internal note created","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicInboxMessageDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Add an internal inbox note","tags":["Inbox"]}},"/v1/workspaces/{workspaceId}/inbox/messages/{messageId}/moderate":{"post":{"operationId":"PublicInboxController_moderateMessage_v1","parameters":[{"name":"messageId","required":true,"in":"path","description":"Inbox message UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModerateMessageDto"}}}},"responses":{"200":{"description":"Inbox message moderated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicInboxMessageDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Moderate an inbox message","tags":["Inbox"]}},"/v1/workspaces/{workspaceId}/inbox/messages/{messageId}/retry":{"post":{"operationId":"PublicInboxController_retryFailedMessage_v1","parameters":[{"name":"messageId","required":true,"in":"path","description":"Inbox message UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/RetryInboxMessageDto"}]}}}},"responses":{"200":{"description":"Retry result","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicInboxReplyResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Retry a failed outgoing inbox message","tags":["Inbox"]}},"/v1/workspaces/{workspaceId}/inbox/messages/{messageId}/failed":{"delete":{"operationId":"PublicInboxController_deleteFailedMessage_v1","parameters":[{"name":"messageId","required":true,"in":"path","description":"Inbox message UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Failed message deleted","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGenericResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Delete a failed outgoing inbox message","tags":["Inbox"]}},"/v1/workspaces/{workspaceId}/inbox/stats":{"get":{"operationId":"PublicInboxController_getStats_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Inbox stats","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicInboxStatsDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get inbox stats","tags":["Inbox"]}},"/v1/workspaces/{workspaceId}/inbox/automation/rules":{"get":{"operationId":"PublicInboxAutomationController_listRules_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Inbox automation rules","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicInboxAutomationRulesDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List inbox automation rules","tags":["Inbox automation"]},"post":{"operationId":"PublicInboxAutomationController_createRule_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAutomationRuleDto"}}}},"responses":{"201":{"description":"Inbox automation rule created","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicInboxAutomationRuleResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Create an inbox automation rule","tags":["Inbox automation"]}},"/v1/workspaces/{workspaceId}/inbox/automation/rules/{ruleId}":{"get":{"operationId":"PublicInboxAutomationController_getRule_v1","parameters":[{"name":"ruleId","required":true,"in":"path","description":"Automation rule UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Inbox automation rule","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicInboxAutomationRuleResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get an inbox automation rule","tags":["Inbox automation"]},"patch":{"operationId":"PublicInboxAutomationController_updateRule_v1","parameters":[{"name":"ruleId","required":true,"in":"path","description":"Automation rule UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/UpdateAutomationRuleDto"}]}}}},"responses":{"200":{"description":"Inbox automation rule updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicInboxAutomationRuleResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Update an inbox automation rule","tags":["Inbox automation"]},"delete":{"operationId":"PublicInboxAutomationController_deleteRule_v1","parameters":[{"name":"ruleId","required":true,"in":"path","description":"Automation rule UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Inbox automation rule deleted","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGenericResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Delete an inbox automation rule","tags":["Inbox automation"]}},"/v1/workspaces/{workspaceId}/inbox/automation/rules/{ruleId}/enable":{"post":{"operationId":"PublicInboxAutomationController_enableRule_v1","parameters":[{"name":"ruleId","required":true,"in":"path","description":"Automation rule UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"201":{"description":"Inbox automation rule enabled","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicInboxAutomationRuleResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Enable an inbox automation rule","tags":["Inbox automation"]}},"/v1/workspaces/{workspaceId}/inbox/automation/rules/{ruleId}/disable":{"post":{"operationId":"PublicInboxAutomationController_disableRule_v1","parameters":[{"name":"ruleId","required":true,"in":"path","description":"Automation rule UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"201":{"description":"Inbox automation rule disabled","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicInboxAutomationRuleResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Disable an inbox automation rule","tags":["Inbox automation"]}},"/v1/workspaces/{workspaceId}/inbox/automation/rules/{ruleId}/executions":{"get":{"operationId":"PublicInboxAutomationController_listExecutions_v1","parameters":[{"name":"ruleId","required":true,"in":"path","description":"Automation rule UUID","schema":{"type":"string"}},{"name":"limit","required":false,"in":"query","description":"Executions per page (max 100, default 50)","schema":{"description":"Executions per page (max 100, default 50)","type":"integer","minimum":1,"maximum":100}},{"name":"offset","required":false,"in":"query","description":"Rows to skip","schema":{"description":"Rows to skip","type":"integer","minimum":0,"maximum":9007199254740991}},{"name":"status","required":false,"in":"query","schema":{"type":"string","enum":["pending","completed","partial","failed","skipped","expired"]}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Paginated automation execution list","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicInboxAutomationExecutionDto"}},"meta":{"$ref":"#/components/schemas/OffsetPaginationMetaDto"}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List inbox automation rule executions","tags":["Inbox automation"]}},"/v1/workspaces/{workspaceId}/grid-planner/items":{"get":{"operationId":"PublicGridPlannerController_getItems_v1","parameters":[{"name":"integrationId","required":true,"in":"query","schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Grid planner items","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGridPlannerItemsDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List grid planner items","tags":["Grid Planner"]},"post":{"operationId":"PublicGridPlannerController_createItem_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateGridPlannerItemDto"}}}},"responses":{"201":{"description":"Grid planner item created","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGridPlannerItemDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Create a grid planner item","tags":["Grid Planner"]}},"/v1/workspaces/{workspaceId}/grid-planner/items/reorder":{"patch":{"operationId":"PublicGridPlannerController_reorderItems_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReorderGridPlannerItemsDto"}}}},"responses":{"200":{"description":"Grid planner items reordered","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGenericResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Reorder grid planner items","tags":["Grid Planner"]}},"/v1/workspaces/{workspaceId}/grid-planner/items/{itemId}/media":{"put":{"description":"Replace the full carousel set on a visual-only planner item. Accepts up to the Instagram 10-item cap; clears the cover when the result is no longer eligible.","operationId":"PublicGridPlannerController_replaceMedia_v1","parameters":[{"name":"itemId","required":true,"in":"path","description":"Grid planner item UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReplaceGridPlannerItemMediaDto"}}}},"responses":{"200":{"description":"Grid planner item carousel media replaced","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGridPlannerItemDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Replace planner item carousel media","tags":["Grid Planner"]}},"/v1/workspaces/{workspaceId}/grid-planner/items/{itemId}/cover":{"put":{"operationId":"PublicGridPlannerController_setCover_v1","parameters":[{"name":"itemId","required":true,"in":"path","description":"Grid planner item UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetGridPlannerItemCoverDto"}}}},"responses":{"200":{"description":"Grid planner item cover updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGridPlannerItemDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Set planner item cover media","tags":["Grid Planner"]},"delete":{"operationId":"PublicGridPlannerController_removeCover_v1","parameters":[{"name":"itemId","required":true,"in":"path","description":"Grid planner item UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Grid planner item cover removed","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGridPlannerItemDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Remove planner item cover media","tags":["Grid Planner"]}},"/v1/workspaces/{workspaceId}/grid-planner/items/{itemId}/promote":{"post":{"operationId":"PublicGridPlannerController_promoteItem_v1","parameters":[{"name":"itemId","required":true,"in":"path","description":"Grid planner item UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PromoteGridPlannerItemDto"}}}},"responses":{"201":{"description":"Planner item promoted","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGridPlannerPromoteResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Promote a planner mockup to a draft","tags":["Grid Planner"]}},"/v1/workspaces/{workspaceId}/grid-planner/items/{itemId}":{"patch":{"operationId":"PublicGridPlannerController_updateItem_v1","parameters":[{"name":"itemId","required":true,"in":"path","description":"Grid planner item UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateGridPlannerItemDto"}}}},"responses":{"200":{"description":"Grid planner item updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGridPlannerItemDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Update a grid planner item","tags":["Grid Planner"]},"delete":{"operationId":"PublicGridPlannerController_deleteItem_v1","parameters":[{"name":"itemId","required":true,"in":"path","description":"Grid planner item UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Grid planner item deleted","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicGenericResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Delete a grid planner item","tags":["Grid Planner"]}},"/v1/workspaces/{workspaceId}/strategy/foundation":{"get":{"description":"Returns the current workspace Strategy Foundation brief. Empty defaults are returned until a Foundation part is saved.","operationId":"PublicStrategyController_getFoundation_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Strategy Foundation brief","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyFoundationDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get Strategy Foundation","tags":["Strategy"]},"patch":{"description":"Replaces one or more Foundation parts (audience, objective, positioning, voice). Each part sent replaces the saved part whole; parts left out stay as saved.","operationId":"PublicStrategyController_updateFoundation_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"audience":{"type":"object","properties":{"who":{"type":"string"},"pains":{"type":"array","items":{"type":"string"}},"wants":{"type":"array","items":{"type":"string"}}},"required":["who","pains","wants"],"additionalProperties":false},"objective":{"type":"object","properties":{"categories":{"description":"Objective categories. Presets: awareness (Brand awareness), growth (Audience growth), engagement (Engagement), traffic (Website traffic), leads (Leads and enquiries), revenue (Sales and revenue). Custom categories use id custom-<slug> with a label of your choice.","type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"}},"required":["id","label"],"additionalProperties":false}},"smart":{"type":"string"}},"required":["categories","smart"],"additionalProperties":false},"positioning":{"type":"object","properties":{"format":{"type":"string","enum":["classic","we-help","only","dunford","custom"]},"fields":{"description":"Positioning statement fields. Each format has its own keys (required for completion marked *): classic: target*, need, category*, benefit*, alternative, differentiator; we-help: target*, outcome*, how; only: brand*, category*, benefit*, target; dunford: alternatives, attributes, value*, customers*, marketCategory; custom: text*. Keys from other formats are kept as saved, and any other key is rejected.","type":"object","properties":{"target":{"type":"string"},"need":{"type":"string"},"category":{"type":"string"},"benefit":{"type":"string"},"alternative":{"type":"string"},"differentiator":{"type":"string"},"outcome":{"type":"string"},"how":{"type":"string"},"brand":{"type":"string"},"alternatives":{"type":"string"},"attributes":{"type":"string"},"value":{"type":"string"},"customers":{"type":"string"},"marketCategory":{"type":"string"},"text":{"type":"string"}},"additionalProperties":false}},"required":["format","fields"],"additionalProperties":false},"voice":{"type":"object","properties":{"adjectives":{"type":"array","items":{"type":"string"}},"soundsLike":{"type":"string"},"avoid":{"type":"string"}},"required":["adjectives","soundsLike","avoid"],"additionalProperties":false}},"additionalProperties":false}}}},"responses":{"200":{"description":"Saved Strategy Foundation brief","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyFoundationDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Update Strategy Foundation parts","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/platforms":{"get":{"operationId":"PublicStrategyController_listPlatforms_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Active platform strategies","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicStrategyPlatformDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List active platform strategies","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/platforms/{platform}/history":{"get":{"operationId":"PublicStrategyController_listPlatformHistory_v1","parameters":[{"name":"platform","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Archived platform strategies","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicStrategyPlatformDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List archived platform strategy versions","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/platforms/{platform}":{"put":{"operationId":"PublicStrategyController_upsertPlatform_v1","parameters":[{"name":"platform","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpsertPlatformStrategyDto"}}}},"responses":{"200":{"description":"Saved active platform strategy","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyPlatformDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Create or replace an active platform strategy","tags":["Strategy"]},"delete":{"operationId":"PublicStrategyController_removePlatform_v1","parameters":[{"name":"platform","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Removed active platform strategy","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyPlatformRemovedDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Archive and remove the active platform strategy","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/platforms/{platform}/new":{"post":{"operationId":"PublicStrategyController_startPlatformVersion_v1","parameters":[{"name":"platform","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"New active platform strategy version","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyPlatformDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Archive the active platform strategy and start a blank version","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/goals":{"get":{"description":"Returns saved Strategy Goals with server-computed status and current values.","operationId":"PublicStrategyController_listGoals_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Strategy Goals","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicStrategyGoalDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List Strategy Goals","tags":["Strategy"]},"post":{"operationId":"PublicStrategyController_createGoal_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateStrategyGoalDto"}}}},"responses":{"200":{"description":"Created Strategy Goal","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyGoalDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Create a Strategy Goal","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/goals/metrics":{"get":{"description":"Returns the metric catalog available for Strategy Goals.","operationId":"PublicStrategyController_listGoalMetrics_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Strategy Goal metric catalog","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicStrategyGoalMetricDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List Strategy Goal Metrics","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/goals/draft-estimate":{"post":{"operationId":"PublicStrategyController_estimateGoalDraft_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StrategyGoalDraftEstimateDto"}}}},"responses":{"200":{"description":"Strategy Goal draft estimate","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyGoalDraftEstimateDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Estimate a Strategy Goal draft without saving it","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/goals/{goalId}":{"get":{"description":"Returns one saved Strategy Goal with server-computed status and current value.","operationId":"PublicStrategyController_getGoal_v1","parameters":[{"name":"goalId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Strategy Goal","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyGoalDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get Strategy Goal","tags":["Strategy"]},"patch":{"operationId":"PublicStrategyController_updateGoal_v1","parameters":[{"name":"goalId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/UpdateStrategyGoalDto"}]}}}},"responses":{"200":{"description":"Updated Strategy Goal","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyGoalDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Update a Strategy Goal","tags":["Strategy"]},"delete":{"operationId":"PublicStrategyController_deleteGoal_v1","parameters":[{"name":"goalId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deleted Strategy Goal ID","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyDeletedDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Permanently delete a Strategy Goal","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/goals/{goalId}/progress":{"post":{"operationId":"PublicStrategyController_logGoalProgress_v1","parameters":[{"name":"goalId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LogStrategyGoalProgressDto"}}}},"responses":{"200":{"description":"Updated Strategy Goal","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyGoalDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Log an absolute Strategy Goal progress value","tags":["Strategy"]},"get":{"operationId":"PublicStrategyController_listGoalProgress_v1","parameters":[{"name":"goalId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Strategy Goal progress history","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicStrategyGoalProgressDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List Strategy Goal progress history","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/goals/{goalId}/complete":{"post":{"operationId":"PublicStrategyController_completeGoal_v1","parameters":[{"name":"goalId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Completed Strategy Goal","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyGoalDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Complete a manual boolean Strategy Goal","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/goals/{goalId}/reopen":{"post":{"operationId":"PublicStrategyController_reopenGoal_v1","parameters":[{"name":"goalId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Reopened Strategy Goal","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyGoalDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Reopen a completed manual boolean Strategy Goal","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/bets":{"get":{"description":"Returns saved Strategy Bets with server-computed phase, lean, current values, outcome and prediction split.","operationId":"PublicStrategyController_listBets_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Strategy Bets","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicStrategyBetDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List Strategy Bets","tags":["Strategy"]},"post":{"operationId":"PublicStrategyController_createBet_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateStrategyBetDto"}}}},"responses":{"200":{"description":"Created Strategy Bet","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyBetDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Create a Strategy Bet","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/bets/metrics":{"get":{"operationId":"PublicStrategyController_listBetMetrics_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Strategy Bet metric catalog","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicStrategyBetMetricDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List Strategy Bet metrics","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/bets/leaderboard":{"get":{"operationId":"PublicStrategyController_listBetLeaderboard_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Strategy Bet leaderboard","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicStrategyBetLeaderboardRowDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List Strategy Bet prediction leaderboard","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/bets/draft-estimate":{"post":{"operationId":"PublicStrategyController_estimateBetDraft_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StrategyBetDraftEstimateDto"}}}},"responses":{"200":{"description":"Strategy Bet draft estimate","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyBetDraftEstimateDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Estimate a Strategy Bet draft without saving it","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/bets/{betId}":{"get":{"operationId":"PublicStrategyController_getBet_v1","parameters":[{"name":"betId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Strategy Bet","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyBetDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get a Strategy Bet","tags":["Strategy"]},"patch":{"operationId":"PublicStrategyController_updateBet_v1","parameters":[{"name":"betId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/UpdateStrategyBetDto"}]}}}},"responses":{"200":{"description":"Updated Strategy Bet","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyBetDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Update a Strategy Bet","tags":["Strategy"]},"delete":{"operationId":"PublicStrategyController_deleteBet_v1","parameters":[{"name":"betId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deleted Strategy Bet ID","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyDeletedDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Permanently delete an unresolved Strategy Bet","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/bets/{betId}/resolve":{"post":{"operationId":"PublicStrategyController_resolveBet_v1","parameters":[{"name":"betId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ResolveStrategyBetDto"}]}}}},"responses":{"200":{"description":"Resolved Strategy Bet","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyBetDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Irreversibly resolve a Strategy Bet","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/bets/{betId}/prediction":{"put":{"operationId":"PublicStrategyController_upsertBetPrediction_v1","parameters":[{"name":"betId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpsertStrategyBetPredictionDto"}}}},"responses":{"200":{"description":"Strategy Bet with updated predictions","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyBetDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Set the caller prediction on a live Strategy Bet","tags":["Strategy"]},"delete":{"operationId":"PublicStrategyController_deleteBetPrediction_v1","parameters":[{"name":"betId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Strategy Bet with updated predictions","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyBetDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Remove the caller prediction from a live Strategy Bet","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/retros":{"get":{"description":"Returns the current retro session and past retro summaries for the workspace.","operationId":"PublicStrategyController_listRetros_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Strategy Retros","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyRetrosListDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List Strategy Retros","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/retros/settings":{"get":{"description":"Returns the workspace retro cadence settings.","operationId":"PublicStrategyController_getRetroSettings_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Strategy Retro settings","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyRetroSettingsDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get Strategy Retro settings","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/strategy/retros/{sessionId}":{"get":{"description":"Returns one retro session with its period metrics, board cards, actions, and resolved bets.","operationId":"PublicStrategyController_getRetro_v1","parameters":[{"name":"sessionId","required":true,"in":"path","description":"Strategy retro session UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Strategy Retro session","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicStrategyRetroSessionDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get Strategy Retro","tags":["Strategy"]}},"/v1/workspaces/{workspaceId}/task-board":{"get":{"operationId":"PublicTaskBoardController_getBoard_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Task board columns, tasks, and members","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicTaskBoardDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List task board tasks","tags":["Task Board"]}},"/v1/workspaces/{workspaceId}/task-board/posts/{postId}/tasks":{"get":{"operationId":"PublicTaskBoardController_getTasksForPost_v1","parameters":[{"name":"postId","required":true,"in":"path","description":"Content post UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Tasks linked to the content post","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicTaskBoardTaskListDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List tasks linked to a content post","tags":["Task Board"]}},"/v1/workspaces/{workspaceId}/task-board/linkable-posts":{"get":{"operationId":"PublicTaskBoardController_getLinkablePosts_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Linkable content posts","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicTaskBoardTaskListDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List content posts that can be linked to tasks","tags":["Task Board"]}},"/v1/workspaces/{workspaceId}/task-board/tasks/{taskId}":{"get":{"operationId":"PublicTaskBoardController_getTask_v1","parameters":[{"name":"taskId","required":true,"in":"path","description":"Task UUID","schema":{"type":"string"}},{"name":"includeComments","required":true,"in":"query","schema":{"type":"boolean"}},{"name":"includeActivity","required":true,"in":"query","schema":{"type":"boolean"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Task board task detail","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicTaskBoardTaskDetailDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Get one task board task","tags":["Task Board"]},"patch":{"operationId":"PublicTaskBoardController_updateTask_v1","parameters":[{"name":"taskId","required":true,"in":"path","description":"Task UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"title":{"description":"Task title, maximum 180 characters.","type":"string","minLength":1,"maxLength":180},"description":{"description":"Pass null to clear the description.","nullable":true,"type":"string","maxLength":5000},"color":{"description":"Pass null to clear the card color.","nullable":true,"type":"string","pattern":"^#[0-9a-fA-F]{6}$"},"postId":{"description":"Content post ID to link; pass null to unlink.","nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"assigneeIds":{"description":"Full replacement set of assignee user IDs, maximum 50.","maxItems":50,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"labelIds":{"description":"Full replacement set of label IDs, maximum 50.","maxItems":50,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"priority":{"description":"Pass null to clear the priority.","nullable":true,"type":"string","enum":["urgent","high","medium","low"]},"dueAt":{"description":"Due date as YYYY-MM-DD; pass null to clear.","nullable":true,"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},"additionalProperties":false}}}},"responses":{"200":{"description":"Task updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicTaskBoardTaskResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Update a task board task","tags":["Task Board"]},"delete":{"description":"Deleted tasks cannot be restored.","operationId":"PublicTaskBoardController_deleteTask_v1","parameters":[{"name":"taskId","required":true,"in":"path","description":"Task UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Task deleted","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicTaskBoardTaskResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Delete a task board task","tags":["Task Board"]}},"/v1/workspaces/{workspaceId}/task-board/tasks/{taskId}/comments":{"get":{"operationId":"PublicTaskBoardController_getTaskComments_v1","parameters":[{"name":"taskId","required":true,"in":"path","description":"Task UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Task comments","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicTaskBoardCommentsDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List task comments","tags":["Task Board"]},"post":{"operationId":"PublicTaskBoardController_createTaskComment_v1","parameters":[{"name":"taskId","required":true,"in":"path","description":"Task UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"content":{"description":"Comment text, maximum 4000 characters. @mentions notify workspace members.","type":"string","maxLength":4000}},"required":["content"],"additionalProperties":false}}}},"responses":{"201":{"description":"Comment created","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicTaskBoardCommentResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Add a task comment","tags":["Task Board"]}},"/v1/workspaces/{workspaceId}/task-board/tasks/{taskId}/activity":{"get":{"operationId":"PublicTaskBoardController_getTaskActivity_v1","parameters":[{"name":"taskId","required":true,"in":"path","description":"Task UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Task activity","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicTaskBoardActivityDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List task activity","tags":["Task Board"]}},"/v1/workspaces/{workspaceId}/task-board/tasks":{"post":{"operationId":"PublicTaskBoardController_createTask_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"title":{"description":"Task title, maximum 180 characters.","type":"string","minLength":1,"maxLength":180},"description":{"description":"Task description, maximum 5000 characters.","nullable":true,"type":"string","maxLength":5000},"color":{"description":"Card color as a #rrggbb hex value.","nullable":true,"type":"string","pattern":"^#[0-9a-fA-F]{6}$"},"columnId":{"description":"Target column ID. Defaults to the backlog column.","nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"postId":{"description":"Content post ID to link to the task.","nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"assigneeIds":{"description":"Workspace member user IDs to assign, maximum 50.","maxItems":50,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"labelIds":{"description":"Task board label IDs to apply, maximum 50.","maxItems":50,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"priority":{"description":"Task priority.","nullable":true,"type":"string","enum":["urgent","high","medium","low"]},"dueAt":{"description":"Due date as YYYY-MM-DD.","nullable":true,"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"checklistItemTitles":{"description":"Starter checklist item titles, maximum 25.","maxItems":25,"type":"array","items":{"type":"string","minLength":1,"maxLength":500}}},"required":["title"],"additionalProperties":false}}}},"responses":{"201":{"description":"Task created","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicTaskBoardTaskResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Create a task board task","tags":["Task Board"]}},"/v1/workspaces/{workspaceId}/task-board/tasks/{taskId}/move":{"patch":{"operationId":"PublicTaskBoardController_moveTask_v1","parameters":[{"name":"taskId","required":true,"in":"path","description":"Task UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"targetColumnId":{"description":"Column to move the task into.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"beforeTaskId":{"description":"Place the task immediately before this task.","nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"afterTaskId":{"description":"Place the task immediately after this task.","nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"required":["targetColumnId"],"additionalProperties":false}}}},"responses":{"200":{"description":"Task moved","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicTaskBoardMoveTaskResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Move a task board task","tags":["Task Board"]}},"/v1/workspaces/{workspaceId}/task-board/tasks/{taskId}/checklist-items":{"post":{"operationId":"PublicTaskBoardController_createChecklistItem_v1","parameters":[{"name":"taskId","required":true,"in":"path","description":"Task UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"title":{"description":"Checklist item title, maximum 500 characters.","type":"string","minLength":1,"maxLength":500},"beforeItemId":{"description":"Insert immediately before this checklist item.","nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"afterItemId":{"description":"Insert immediately after this checklist item.","nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"required":["title"],"additionalProperties":false}}}},"responses":{"201":{"description":"Checklist item created","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicTaskBoardChecklistItemResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Add a task checklist item","tags":["Task Board"]}},"/v1/workspaces/{workspaceId}/task-board/tasks/{taskId}/checklist-items/{itemId}":{"patch":{"operationId":"PublicTaskBoardController_updateChecklistItem_v1","parameters":[{"name":"taskId","required":true,"in":"path","description":"Task UUID","schema":{"type":"string"}},{"name":"itemId","required":true,"in":"path","description":"Checklist item UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"title":{"description":"Checklist item title, maximum 500 characters.","type":"string","minLength":1,"maxLength":500},"isCompleted":{"description":"Mark the checklist item complete or incomplete.","type":"boolean"}},"additionalProperties":false}}}},"responses":{"200":{"description":"Checklist item updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicTaskBoardChecklistItemResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Update a task checklist item","tags":["Task Board"]},"delete":{"operationId":"PublicTaskBoardController_deleteChecklistItem_v1","parameters":[{"name":"taskId","required":true,"in":"path","description":"Task UUID","schema":{"type":"string"}},{"name":"itemId","required":true,"in":"path","description":"Checklist item UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Checklist item deleted","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicTaskBoardChecklistItemResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Delete a task checklist item","tags":["Task Board"]}},"/v1/workspaces/{workspaceId}/task-board/tasks/{taskId}/checklist-items/{itemId}/move":{"patch":{"operationId":"PublicTaskBoardController_moveChecklistItem_v1","parameters":[{"name":"taskId","required":true,"in":"path","description":"Task UUID","schema":{"type":"string"}},{"name":"itemId","required":true,"in":"path","description":"Checklist item UUID","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"beforeItemId":{"description":"Place immediately before this checklist item.","nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"afterItemId":{"description":"Place immediately after this checklist item.","nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"clientMutationId":{"description":"Optional client mutation correlation ID.","type":"string","maxLength":120}},"additionalProperties":false}}}},"responses":{"200":{"description":"Checklist item moved","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicTaskBoardChecklistItemResultDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Move a task checklist item","tags":["Task Board"]}},"/v1/workspaces/{workspaceId}/calendar/feed":{"get":{"operationId":"PublicCalendarController_getFeed_v1","parameters":[{"name":"startDate","required":true,"in":"query","schema":{"type":"string"}},{"name":"endDate","required":true,"in":"query","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","schema":{"nullable":true,"type":"string","enum":["draft","pending_approval","rejected","scheduled","sent","failed","cancelled"]}},{"name":"statuses","required":false,"in":"query","schema":{"minItems":1,"type":"array","items":{"type":"string","enum":["draft","pending_approval","rejected","scheduled","sent","failed","cancelled"]}}},{"name":"workflowStatus","required":false,"in":"query","schema":{"nullable":true,"type":"string","enum":["drafting","review","approved","scheduled","published"]}},{"name":"workflowStatuses","required":false,"in":"query","schema":{"minItems":1,"type":"array","items":{"type":"string","enum":["drafting","review","approved","scheduled","published"]}}},{"name":"integrationId","required":false,"in":"query","schema":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},{"name":"campaignId","required":false,"in":"query","schema":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},{"name":"platforms","required":false,"in":"query","schema":{"minItems":1,"type":"array","items":{"type":"string"}}},{"name":"channels","required":false,"in":"query","schema":{"minItems":1,"type":"array","items":{"type":"string"}}},{"name":"labelIds","required":false,"in":"query","schema":{"minItems":1,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},{"name":"assignment","required":false,"in":"query","schema":{"nullable":true,"type":"string","enum":["all","assigned_to_me","unassigned"]}},{"name":"includeSelectedChannels","required":false,"in":"query","schema":{"nullable":true,"type":"boolean"}},{"name":"includeTasks","required":false,"in":"query","schema":{"type":"boolean"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Calendar result","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicCalendarFeedDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Read the Calendar feed for a date range","tags":["Calendar"]}},"/v1/workspaces/{workspaceId}/calendar/notes":{"get":{"operationId":"PublicCalendarController_listNotes_v1","parameters":[{"name":"startDate","required":true,"in":"query","schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"endDate","required":true,"in":"query","schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Calendar note","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicCalendarNoteDto"}},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List Calendar date notes","tags":["Calendar"]},"post":{"operationId":"PublicCalendarController_createNote_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCalendarNoteDto"}}}},"responses":{"201":{"description":"Calendar note","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicCalendarNoteDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Create a Calendar date note","tags":["Calendar"]}},"/v1/workspaces/{workspaceId}/calendar/notes/{noteId}":{"patch":{"operationId":"PublicCalendarController_updateNote_v1","parameters":[{"name":"noteId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/UpdateCalendarNoteDto"}]}}}},"responses":{"200":{"description":"Calendar note","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicCalendarNoteDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Update a Calendar date note","tags":["Calendar"]},"delete":{"operationId":"PublicCalendarController_deleteNote_v1","parameters":[{"name":"noteId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Calendar note","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicCalendarNoteDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Delete a Calendar date note","tags":["Calendar"]}},"/v1/workspaces/{workspaceId}/calendar/notes/{noteId}/move":{"patch":{"operationId":"PublicCalendarController_moveNote_v1","parameters":[{"name":"noteId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MoveCalendarNoteDto"}}}},"responses":{"200":{"description":"Calendar note","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicCalendarNoteDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Move a Calendar date note","tags":["Calendar"]}},"/v1/workspaces/{workspaceId}/calendar/snapshots":{"get":{"operationId":"PublicCalendarController_listSnapshots_v1","parameters":[{"name":"status","required":false,"in":"query","schema":{"nullable":true,"type":"string","enum":["active","expired","revoked","all"]}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Calendar result","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicCalendarShareLinksDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"List public Calendar snapshots","tags":["Calendar"]},"post":{"operationId":"PublicCalendarController_createSnapshot_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCalendarShareLinkDto"}}}},"responses":{"201":{"description":"Calendar result","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicCalendarCreatedShareLinkDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Create a public Calendar snapshot","tags":["Calendar"]}},"/v1/workspaces/{workspaceId}/calendar/snapshots/preview":{"post":{"operationId":"PublicCalendarController_previewSnapshot_v1","parameters":[{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PreviewCalendarShareDto"}}}},"responses":{"201":{"description":"Calendar result","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicCalendarSharePreviewDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Preview a public Calendar snapshot","tags":["Calendar"]}},"/v1/workspaces/{workspaceId}/calendar/snapshots/{linkId}/regenerate":{"post":{"operationId":"PublicCalendarController_regenerateSnapshot_v1","parameters":[{"name":"linkId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCalendarShareSnapshotDto"}}}},"responses":{"201":{"description":"Calendar result","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicCalendarShareLinkDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Regenerate a public Calendar snapshot","tags":["Calendar"]}},"/v1/workspaces/{workspaceId}/calendar/snapshots/{linkId}":{"delete":{"operationId":"PublicCalendarController_revokeSnapshot_v1","parameters":[{"name":"linkId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workspaceId","required":true,"in":"path","description":"Workspace UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Calendar result","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PublicCalendarShareRevokedDto"},"meta":{"example":null,"type":"null","nullable":true}},"required":["data","meta"],"additionalProperties":false}}}}},"security":[{"bearer":[]}],"summary":"Revoke a public Calendar snapshot","tags":["Calendar"]}}},"info":{"title":"Maeve Social API","description":"Public API for managing Maeve workspaces, integrations, content, media, inbox, analytics, workbench data, and API keys.\n\nUse `Authorization: Bearer <credential>` for API requests.\n\n- API keys (`ezb_live_...`) are best for CI, servers, scripts, and long-running automation.\n- CLI browser login is best for a person using a terminal. Run `maeve auth:login` or `npx maeve-cli auth:login`. It creates a revocable local `ezb_cli_...` token that expires after 7 days.\n- CLI credential order is `--api-key`, `--api-key-env <name>`, `MAEVE_API_KEY`, then the stored login for the selected API URL.\n- Connect agents to `/mcp` on the API environment you intend to use. MCP browser sign-in is separate from CLI login. API keys are a fallback for clients without OAuth and server automation.\n- Read workspaces, integrations and integration capabilities before creating content. Start with a draft, then schedule or publish when ready.\n- API, CLI and MCP expose different operations. Use the current endpoint or tool schema; provider capabilities do not guarantee support in every client.\n\nDo not put API keys, CLI tokens, OAuth codes, bearer headers, cookies, or raw secrets in shared files, screenshots, logs, or chat.","version":"1.0","contact":{}},"tags":[],"servers":[],"components":{"securitySchemes":{"bearer":{"scheme":"bearer","bearerFormat":"JWT","type":"http","description":"Use an API key (`ezb_live_...`) for automation, or a revocable CLI login token (`ezb_cli_...`) created by `maeve auth:login` for local terminal use."}},"schemas":{"PublicCampaignDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"workspaceId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"color":{"nullable":true,"type":"string"},"goal":{"nullable":true,"type":"string"},"description":{"nullable":true,"type":"string"},"startDate":{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"endDate":{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"status":{"type":"string","enum":["upcoming","live","ended"]},"targetPlatforms":{"type":"array","items":{"type":"string"}},"estimatedBudget":{"description":"Estimated budget in major currency units as a decimal string, such as \"4050.50\".","nullable":true,"type":"string"},"actualBudget":{"description":"Actual budget in major currency units as a decimal string, such as \"4050.50\".","nullable":true,"type":"string"},"budgetCurrency":{"description":"ISO 4217 currency code required when a budget is set.","nullable":true,"type":"string"},"createdByUserId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"updatedByUserId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"phases":{"type":"array","items":{"$ref":"#/components/schemas/PublicCampaignPhaseDto"}}},"required":["id","workspaceId","name","color","goal","description","startDate","endDate","status","targetPlatforms","createdAt","updatedAt"],"additionalProperties":false},"PublicCampaignPhaseDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"workspaceId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"campaignId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"color":{"nullable":true,"type":"string"},"startDate":{"nullable":true,"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"endDate":{"nullable":true,"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"sortOrder":{"type":"number"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","workspaceId","campaignId","name","color","startDate","endDate","sortOrder","createdAt","updatedAt"],"additionalProperties":false},"CreateCampaignDto":{"type":"object","properties":{"color":{"nullable":true,"pattern":"^(?:#?(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8}))$","maxLength":7,"type":"string"},"goal":{"nullable":true,"maxLength":500,"type":"string"},"description":{"nullable":true,"maxLength":20000,"type":"string"},"targetPlatforms":{"maxItems":50,"type":"array","items":{"type":"string"}},"estimatedBudget":{"nullable":true,"type":"string","pattern":"^\\d+(\\.\\d{1,2})?$"},"actualBudget":{"nullable":true,"type":"string","pattern":"^\\d+(\\.\\d{1,2})?$"},"budgetCurrency":{"nullable":true,"type":"string","pattern":"^[A-Z]{3}$"},"name":{"maxLength":160,"type":"string","minLength":1},"startDate":{"format":"date-time","type":"string"},"endDate":{"format":"date-time","type":"string"}},"required":["name","startDate","endDate"],"additionalProperties":false},"UpdateCampaignDto":{"type":"object","properties":{"color":{"nullable":true,"pattern":"^(?:#?(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8}))$","maxLength":7,"type":"string"},"goal":{"nullable":true,"maxLength":500,"type":"string"},"description":{"nullable":true,"maxLength":20000,"type":"string"},"targetPlatforms":{"maxItems":50,"type":"array","items":{"type":"string"}},"estimatedBudget":{"nullable":true,"type":"string","pattern":"^\\d+(\\.\\d{1,2})?$"},"actualBudget":{"nullable":true,"type":"string","pattern":"^\\d+(\\.\\d{1,2})?$"},"budgetCurrency":{"nullable":true,"type":"string","pattern":"^[A-Z]{3}$"},"name":{"maxLength":160,"type":"string"},"startDate":{"format":"date-time","type":"string"},"endDate":{"format":"date-time","type":"string"}},"additionalProperties":false},"PublicCampaignDeletedDto":{"type":"object","properties":{"success":{"type":"boolean","enum":[true]}},"required":["success"],"additionalProperties":false},"CreateCampaignPhaseDto":{"type":"object","properties":{"name":{"maxLength":120,"type":"string","minLength":1},"color":{"nullable":true,"pattern":"^(?:#?(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8}))$","maxLength":7,"type":"string"},"startDate":{"nullable":true,"format":"date-time","type":"string"},"endDate":{"nullable":true,"format":"date-time","type":"string"},"sortOrder":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["name"],"additionalProperties":false},"SaveCampaignPhaseDraftDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"maxLength":120,"type":"string","minLength":1},"color":{"nullable":true,"pattern":"^(?:#?(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8}))$","maxLength":7,"type":"string"},"startDate":{"nullable":true,"format":"date-time","type":"string"},"endDate":{"nullable":true,"format":"date-time","type":"string"}},"required":["name"],"additionalProperties":false},"SaveCampaignPhasesDto":{"type":"object","properties":{"phases":{"maxItems":100,"type":"array","items":{"$ref":"#/components/schemas/SaveCampaignPhaseDraftDto"}}},"required":["phases"],"additionalProperties":false},"UpdateCampaignPhaseDto":{"type":"object","properties":{"name":{"maxLength":120,"type":"string"},"color":{"nullable":true,"pattern":"^(?:#?(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8}))$","maxLength":7,"type":"string"},"startDate":{"nullable":true,"format":"date-time","type":"string"},"endDate":{"nullable":true,"format":"date-time","type":"string"},"sortOrder":{"type":"integer","minimum":0,"maximum":9007199254740991}},"additionalProperties":false},"PublicCampaignContentPageDto":{"type":"object","properties":{"items":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"postId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"title":{"nullable":true,"type":"string"},"content":{"type":"string"},"plannedAt":{"nullable":true,"format":"date-time","type":"string"},"scheduledAt":{"type":"null","nullable":true},"sentAt":{"type":"null","nullable":true},"createdAt":{"format":"date-time","type":"string"},"updatedAt":{"format":"date-time","type":"string"},"campaignId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"campaignPhaseId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"priority":{"nullable":true,"type":"string"},"media":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string"},"type":{"type":"string"},"filename":{"type":"string"},"thumbnailUrl":{"nullable":true,"type":"string"},"fileSize":{"nullable":true,"type":"number"},"width":{"nullable":true,"type":"number"},"height":{"nullable":true,"type":"number"},"durationSeconds":{"nullable":true,"type":"number"},"videoCodec":{"nullable":true,"type":"string"},"videoBitrate":{"nullable":true,"type":"number"},"videoFrameRate":{"nullable":true,"type":"number"},"hasAudio":{"nullable":true,"type":"boolean"},"altText":{"nullable":true,"type":"string"},"assetOrigin":{"type":"string","enum":["user_upload","platform_mirror","conversation"]},"visibility":{"type":"string","enum":["media_room","reference_only","hidden"]}},"required":["id","url","type","filename"],"additionalProperties":false}},"kind":{"type":"string","enum":["root_draft"]},"status":{"type":"string","enum":["draft"]},"platform":{"type":"null","nullable":true},"platforms":{"type":"array","items":{"type":"string"}}},"required":["id","postId","title","content","plannedAt","scheduledAt","sentAt","createdAt","updatedAt","campaignId","campaignPhaseId","priority","media","kind","status","platform","platforms"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"postId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"title":{"nullable":true,"type":"string"},"content":{"type":"string"},"plannedAt":{"nullable":true,"format":"date-time","type":"string"},"scheduledAt":{"nullable":true,"format":"date-time","type":"string"},"sentAt":{"nullable":true,"format":"date-time","type":"string"},"createdAt":{"format":"date-time","type":"string"},"updatedAt":{"format":"date-time","type":"string"},"campaignId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"campaignPhaseId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"priority":{"nullable":true,"type":"string"},"media":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string"},"type":{"type":"string"},"filename":{"type":"string"},"thumbnailUrl":{"nullable":true,"type":"string"},"fileSize":{"nullable":true,"type":"number"},"width":{"nullable":true,"type":"number"},"height":{"nullable":true,"type":"number"},"durationSeconds":{"nullable":true,"type":"number"},"videoCodec":{"nullable":true,"type":"string"},"videoBitrate":{"nullable":true,"type":"number"},"videoFrameRate":{"nullable":true,"type":"number"},"hasAudio":{"nullable":true,"type":"boolean"},"altText":{"nullable":true,"type":"string"},"assetOrigin":{"type":"string","enum":["user_upload","platform_mirror","conversation"]},"visibility":{"type":"string","enum":["media_room","reference_only","hidden"]}},"required":["id","url","type","filename"],"additionalProperties":false}},"kind":{"type":"string","enum":["edition"]},"groupId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"origin":{"type":"string"},"internalTitle":{"nullable":true,"type":"string"},"publishTitle":{"nullable":true,"type":"string"},"captions":{"type":"object","additionalProperties":{}},"resolvedCaption":{"nullable":true,"type":"string"},"calendarAt":{"nullable":true,"format":"date-time","type":"string"},"status":{"type":"string","enum":["draft","pending_approval","rejected","scheduled","sent","failed","cancelled"]},"platform":{"type":"string"},"platformUsername":{"type":"string"},"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"postType":{"type":"string"},"firstComment":{"nullable":true,"type":"string"},"mediaCrops":{"type":"object","additionalProperties":{}},"coverUrl":{"nullable":true,"type":"string"},"shareToFeed":{"type":"boolean"},"threadSize":{"type":"number"},"workflowMode":{"type":"string","enum":["direct","internal","client","internal_client"]},"workflowStatus":{"nullable":true,"type":"string"},"avatarUrl":{"nullable":true,"type":"string"},"platformName":{"nullable":true,"type":"string"}},"required":["id","postId","title","content","plannedAt","scheduledAt","sentAt","createdAt","updatedAt","campaignId","campaignPhaseId","priority","media","kind","groupId","origin","internalTitle","publishTitle","captions","resolvedCaption","calendarAt","status","platform","platformUsername","integrationId","postType","firstComment","mediaCrops","coverUrl","shareToFeed","threadSize","workflowMode","workflowStatus","avatarUrl","platformName"],"additionalProperties":false}]}},"pagination":{"type":"object","properties":{"total":{"type":"number"},"limit":{"type":"number"},"offset":{"type":"number"},"hasMore":{"type":"boolean"}},"required":["total","limit","offset","hasMore"],"additionalProperties":false}},"required":["items","pagination"],"additionalProperties":false},"CreateApiKeyDto":{"type":"object","properties":{"name":{"maxLength":255,"type":"string","minLength":1},"expiresAt":{"description":"Optional timezone-qualified ISO-8601 expiration timestamp. Must be a future date.","nullable":true,"type":"string"},"workspaceIds":{"uniqueItems":true,"description":"One or more workspace IDs this API key can access.","minItems":1,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},"required":["name","workspaceIds"]},"PublicApiKeyCreatedDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"key":{"type":"string"},"keyPrefix":{"type":"string"},"createdAt":{"type":"string"},"expiresAt":{"nullable":true,"type":"string"}},"required":["id","name","key","keyPrefix","createdAt","expiresAt"],"additionalProperties":false},"PublicApiKeyListItemDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"keyPrefix":{"type":"string"},"lastUsedAt":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"expiresAt":{"nullable":true,"type":"string"},"workspaceCount":{"type":"number"},"workspaces":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"}},"required":["id","name"],"additionalProperties":false}}},"required":["id","name","keyPrefix","lastUsedAt","createdAt","expiresAt","workspaceCount","workspaces"],"additionalProperties":false},"PublicApiKeyRevokedDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"revoked":{"example":true,"type":"boolean","enum":[true]}},"required":["id","revoked"],"additionalProperties":false},"PublicWorkbenchContentBoardQueryDto":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/PublicWorkbenchContentBoardCardDto"}},"pagination":{"$ref":"#/components/schemas/PublicWorkbenchContentBoardPaginationDto"},"counts":{"$ref":"#/components/schemas/PublicWorkbenchContentBoardCountsDto"},"facets":{"description":"Facet counts for the returned page of content board cards, not the full board.","allOf":[{"$ref":"#/components/schemas/PublicWorkbenchContentBoardFacetsDto"}]}},"required":["items","pagination","counts","facets"],"additionalProperties":false},"PublicWorkbenchContentBoardCardDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"workspaceId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"groupId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"origin":{"type":"string"},"publishingState":{"nullable":true,"type":"object","additionalProperties":{}},"internalTitle":{"nullable":true,"type":"string"},"content":{"type":"string"},"scheduledAt":{"nullable":true,"type":"string"},"sentAt":{"nullable":true,"type":"string"},"archivedAt":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"status":{"type":"string"},"workflowStatus":{"type":"string"},"platform":{"type":"string"},"platformUsername":{"nullable":true,"type":"string"},"platformName":{"nullable":true,"type":"string"},"platformDeletedAt":{"nullable":true,"type":"string"},"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"postType":{"type":"string"},"media":{"type":"array","items":{"$ref":"#/components/schemas/PublicWorkbenchContentBoardMediaDto"}},"labels":{"type":"array","items":{"$ref":"#/components/schemas/PublicWorkbenchContentBoardLabelDto"}},"pillarIds":{"type":"array","items":{"type":"string"}},"formatIds":{"type":"array","items":{"type":"string"}},"campaignId":{"nullable":true,"type":"string"},"campaignPhaseId":{"nullable":true,"type":"string"},"priority":{"nullable":true,"type":"string"},"assigneeIds":{"type":"array","items":{"type":"string"}},"assignees":{"type":"array","items":{"$ref":"#/components/schemas/PublicWorkbenchContentBoardAssigneeDto"}},"workflowMode":{"type":"string"},"reviewPhase":{"type":"string"},"reviewLifecycle":{"nullable":true,"type":"object","additionalProperties":{}},"selectedChannels":{"nullable":true,"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}}},"platformSelections":{"type":"array","items":{"$ref":"#/components/schemas/PublicWorkbenchContentBoardPlatformSelectionDto"}}},"required":["id","workspaceId","groupId","origin","publishingState","internalTitle","content","scheduledAt","sentAt","archivedAt","createdAt","updatedAt","status","workflowStatus","platform","platformUsername","platformName","platformDeletedAt","integrationId","postType","media","labels","pillarIds","formatIds","campaignId","campaignPhaseId","priority","assigneeIds","assignees","workflowMode","reviewPhase","reviewLifecycle","selectedChannels","platformSelections"],"additionalProperties":false},"PublicWorkbenchContentBoardMediaDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string"},"type":{"type":"string"},"thumbnailUrl":{"nullable":true,"type":"string"},"filename":{"nullable":true,"type":"string"}},"required":["id","url","type","thumbnailUrl","filename"],"additionalProperties":false},"PublicWorkbenchContentBoardLabelDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"color":{"nullable":true,"type":"string"}},"required":["id","name","color"],"additionalProperties":false},"PublicWorkbenchContentBoardAssigneeDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"displayName":{"type":"string"},"email":{"type":"string"},"avatarUrl":{"nullable":true,"type":"string"}},"required":["id","displayName","email","avatarUrl"],"additionalProperties":false},"PublicWorkbenchContentBoardPlatformSelectionDto":{"type":"object","properties":{"platformId":{"type":"string"},"platformLabel":{"type":"string"},"accounts":{"type":"array","items":{"$ref":"#/components/schemas/PublicWorkbenchContentBoardAccountSelectionDto"}}},"required":["platformId","platformLabel","accounts"],"additionalProperties":false},"PublicWorkbenchContentBoardAccountSelectionDto":{"type":"object","properties":{"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"platformUsername":{"nullable":true,"type":"string"},"displayName":{"nullable":true,"type":"string"},"avatarUrl":{"nullable":true,"type":"string"}},"required":["integrationId","platformUsername","displayName","avatarUrl"],"additionalProperties":false},"PublicWorkbenchContentBoardPaginationDto":{"type":"object","properties":{"limit":{"example":250,"type":"number"},"offset":{"example":0,"type":"number"},"total":{"example":125,"type":"number"},"hasMore":{"example":false,"type":"boolean"}},"required":["limit","offset","total","hasMore"],"additionalProperties":false},"PublicWorkbenchContentBoardCountsDto":{"type":"object","properties":{"total":{"example":125,"type":"number"},"loaded":{"example":125,"type":"number"},"active":{"example":100,"type":"number"},"archived":{"example":25,"type":"number"}},"required":["total","loaded","active","archived"],"additionalProperties":false},"PublicWorkbenchContentBoardFacetsDto":{"type":"object","properties":{"statuses":{"type":"array","items":{"$ref":"#/components/schemas/PublicWorkbenchContentBoardFacetCountDto"}},"workflowStatuses":{"type":"array","items":{"$ref":"#/components/schemas/PublicWorkbenchContentBoardFacetCountDto"}},"platforms":{"type":"array","items":{"$ref":"#/components/schemas/PublicWorkbenchContentBoardPlatformFacetDto"}},"labels":{"type":"array","items":{"$ref":"#/components/schemas/PublicWorkbenchContentBoardLabelFacetDto"}},"assignments":{"$ref":"#/components/schemas/PublicWorkbenchContentBoardAssignmentFacetDto"}},"required":["statuses","workflowStatuses","platforms","labels","assignments"],"additionalProperties":false},"PublicWorkbenchContentBoardFacetCountDto":{"type":"object","properties":{"value":{"type":"string"},"count":{"example":12,"type":"number"}},"required":["value","count"],"additionalProperties":false},"PublicWorkbenchContentBoardPlatformFacetDto":{"type":"object","properties":{"platformId":{"type":"string"},"platformLabel":{"type":"string"},"count":{"example":12,"type":"number"}},"required":["platformId","platformLabel","count"],"additionalProperties":false},"PublicWorkbenchContentBoardLabelFacetDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"color":{"nullable":true,"type":"string"},"count":{"example":12,"type":"number"}},"required":["id","name","color","count"],"additionalProperties":false},"PublicWorkbenchContentBoardAssignmentFacetDto":{"type":"object","properties":{"assignedToCurrentUser":{"example":7,"type":"number"},"unassigned":{"example":4,"type":"number"}},"required":["assignedToCurrentUser","unassigned"],"additionalProperties":false},"PublicContentRootDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"workspaceId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"title":{"nullable":true,"type":"string"},"body":{"type":"string"},"captions":{"description":"Per-platform caption overrides.","nullable":true,"type":"object","additionalProperties":{}},"postType":{"nullable":true,"type":"string","enum":["post","reel","short","story","thread","article","poll","document","event","offer"]},"workingTitle":{"nullable":true,"type":"string"},"intendedPlatforms":{"type":"array","items":{"type":"string"}},"selectedChannels":{"description":"Integration ids by platform.","type":"object","additionalProperties":{"type":"array","items":{"type":"string"}}},"editorState":{"nullable":true,"type":"object","additionalProperties":{}},"stage":{"type":"string","enum":["idea","drafting"]},"effectiveStage":{"type":"string","enum":["idea","drafting","review","scheduled","published"]},"hasFailure":{"type":"boolean"},"boardAddedAt":{"nullable":true,"description":"ISO 8601 timestamp.","type":"string"},"reusedFromPostId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"priority":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/WorkbenchPriority"}]},"dueAt":{"nullable":true,"description":"ISO 8601 timestamp.","type":"string"},"plannedAt":{"nullable":true,"description":"ISO 8601 timestamp.","type":"string"},"campaignId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"campaignPhaseId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"createdByUserId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"updatedByUserId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deletedAt":{"nullable":true,"description":"ISO 8601 timestamp.","type":"string"},"createdAt":{"description":"ISO 8601 timestamp.","type":"string"},"updatedAt":{"description":"ISO 8601 timestamp.","type":"string"},"contentMedia":{"type":"array","items":{"$ref":"#/components/schemas/PublicContentRootMediaDto"}},"labelIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"labels":{"type":"array","items":{"$ref":"#/components/schemas/PublicContentRootLabelDto"}},"assigneeIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"assignees":{"type":"array","items":{"$ref":"#/components/schemas/PublicContentRootAssigneeDto"}},"pillarIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"formatIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"editionCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"activeEditionCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["id","workspaceId","title","body","captions","postType","workingTitle","intendedPlatforms","selectedChannels","editorState","stage","effectiveStage","hasFailure","boardAddedAt","reusedFromPostId","priority","dueAt","plannedAt","campaignId","campaignPhaseId","createdByUserId","updatedByUserId","deletedAt","createdAt","updatedAt","contentMedia","labelIds","labels","assigneeIds","assignees","pillarIds","formatIds","editionCount","activeEditionCount"],"additionalProperties":false},"WorkbenchPriority":{"type":"string","enum":["urgent","high","medium","low"]},"PublicContentRootMediaDto":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"order":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"crops":{"nullable":true,"type":"object","additionalProperties":{}},"userTags":{"nullable":true,"type":"array","items":{"type":"object","additionalProperties":{}}},"productTags":{"nullable":true,"type":"array","items":{"type":"object","additionalProperties":{}}},"cover":{"nullable":true,"type":"object","additionalProperties":{}},"media":{"description":"The media item, or null when it is no longer available.","nullable":true,"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"filename":{"nullable":true,"type":"string"},"type":{"type":"string"},"url":{"type":"string"},"thumbnailUrl":{"nullable":true,"type":"string"},"altText":{"nullable":true,"type":"string"}},"required":["id","filename","type","url","thumbnailUrl","altText"],"additionalProperties":false}},"required":["mediaId","order","media"],"additionalProperties":false},"PublicContentRootLabelDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"color":{"nullable":true,"type":"string"},"groupId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","name","color","groupId"],"additionalProperties":false},"PublicContentRootAssigneeDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"email":{"type":"string"},"displayName":{"nullable":true,"type":"string"},"avatarUrl":{"nullable":true,"type":"string"}},"required":["id","email","displayName","avatarUrl"],"additionalProperties":false},"PublicContentCreateIntent":{"description":"Create behavior. Omitted intent defaults to draft. Use schedule with scheduledAt, or publish_now for explicit immediate publishing.","type":"string","enum":["draft","schedule","publish_now"]},"CaptionsDto":{"type":"object","properties":{"canonical":{"nullable":true,"maxLength":25000,"type":"string"},"overrides":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/CaptionOverridesDto"}]}},"additionalProperties":false},"CaptionOverridesDto":{"type":"object","properties":{"x":{"nullable":true,"maxLength":25000,"type":"string"},"linkedin":{"nullable":true,"maxLength":25000,"type":"string"},"linkedin-page":{"nullable":true,"maxLength":25000,"type":"string"},"youtube":{"nullable":true,"maxLength":25000,"type":"string"},"instagram":{"nullable":true,"maxLength":25000,"type":"string"},"facebook":{"nullable":true,"maxLength":25000,"type":"string"},"threads":{"nullable":true,"maxLength":25000,"type":"string"},"tiktok":{"nullable":true,"maxLength":25000,"type":"string"},"pinterest":{"nullable":true,"maxLength":25000,"type":"string"},"google-business-profile":{"nullable":true,"maxLength":25000,"type":"string"}},"additionalProperties":false},"PublicContentMediaDto":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"order":{"nullable":true,"type":"integer","minimum":0,"maximum":9007199254740991},"crops":{"nullable":true,"type":"object","additionalProperties":{}},"userTags":{"nullable":true,"type":"array","items":{}},"productTags":{"nullable":true,"type":"array","items":{}},"cover":{"nullable":true,"type":"object","additionalProperties":{}}},"required":["mediaId"],"additionalProperties":false},"LinkedInPollDto":{"type":"object","properties":{"question":{"maxLength":140,"type":"string","minLength":1},"options":{"minItems":2,"maxItems":4,"type":"array","items":{"$ref":"#/components/schemas/LinkedInPollOptionDto"}},"duration":{"type":"string","enum":["ONE_DAY","THREE_DAYS","SEVEN_DAYS","FOURTEEN_DAYS"]},"voteSelectionType":{"nullable":true,"type":"string","enum":["SINGLE_VOTE"]},"isVoterVisibleToAuthor":{"nullable":true,"type":"boolean"}},"required":["question","options","duration"],"additionalProperties":false},"LinkedInPollOptionDto":{"type":"object","properties":{"text":{"maxLength":30,"type":"string","minLength":1}},"required":["text"],"additionalProperties":false},"PublicProviderSettingsDto":{"type":"object","properties":{"mentions":{"description":"LinkedIn mentions of companies, schools or members in this edition's caption. Ranges must not overlap and must cover the caption this edition publishes.","nullable":true,"maxItems":50,"type":"array","items":{"$ref":"#/components/schemas/PublicLinkedInMentionDto"}},"collaborators":{"description":"Instagram collaborator usernames or IDs.","nullable":true,"type":"array","items":{"type":"string"}},"locationId":{"description":"Instagram or Threads location ID.","nullable":true,"type":"string"},"trialReel":{"description":"Whether to publish a single-video Instagram Reel as a trial reel.","nullable":true,"type":"boolean"},"trialReelGraduationStrategy":{"description":"Instagram trial Reel graduation strategy. Defaults to manual.","nullable":true,"type":"string","enum":["manual","automatic"]},"audio_id":{"description":"Instagram audio asset ID for Reels.","nullable":true,"type":"string"},"audio_volume":{"description":"Instagram Reel audio asset volume, from 0 to 100.","nullable":true,"type":"number","minimum":0,"maximum":100},"video_volume":{"description":"Original video audio volume for Instagram Reels, from 0 to 100.","nullable":true,"type":"number","minimum":0,"maximum":100},"tiktok_music":{"description":"Selected TikTok Commercial Music Library clip for direct Business video and photo posts. Validated strictly at publish time.","nullable":true,"type":"object","additionalProperties":{}},"facebookLinkUrl":{"description":"Facebook Page feed link post URL.","nullable":true,"type":"string"},"facebookCtaType":{"description":"Facebook Page feed link post CTA button type.","nullable":true,"allOf":[{"$ref":"#/components/schemas/FacebookPagePostCtaType"}]},"facebookLocationId":{"description":"Facebook Page location ID.","nullable":true,"type":"string"},"xCommunityUrl":{"description":"X community URL.","nullable":true,"type":"string"},"topicTag":{"description":"Threads topic tag.","nullable":true,"type":"string"},"linkAttachment":{"description":"Threads link attachment URL.","nullable":true,"type":"string"},"replyControl":{"description":"Threads reply control for who can reply to the root post.","nullable":true,"allOf":[{"$ref":"#/components/schemas/ThreadsReplyControl"}]},"privacy_level":{"description":"TikTok privacy level from creator info options.","nullable":true,"type":"string"},"disable_comment":{"description":"Disable TikTok comments.","nullable":true,"type":"boolean"},"disable_duet":{"description":"Disable TikTok duets for video posts.","nullable":true,"type":"boolean"},"disable_stitch":{"description":"Disable TikTok stitch for video posts.","nullable":true,"type":"boolean"},"brand_content_toggle":{"description":"Mark TikTok post as branded content.","nullable":true,"type":"boolean"},"brand_organic_toggle":{"description":"Mark TikTok post as brand organic content.","nullable":true,"type":"boolean"},"is_aigc":{"description":"Mark TikTok post as AI-generated content.","nullable":true,"type":"boolean"},"tiktok_post_to_drafts":{"description":"Send to TikTok drafts where supported.","nullable":true,"type":"boolean"},"photo_cover_index":{"description":"TikTok photo cover index.","nullable":true,"type":"number"},"auto_add_music":{"description":"Auto-add music for TikTok photo posts.","nullable":true,"type":"boolean"},"privacyStatus":{"description":"YouTube privacy status.","nullable":true,"allOf":[{"$ref":"#/components/schemas/YouTubePrivacyStatus"}]},"categoryId":{"description":"YouTube video category ID.","nullable":true,"type":"string"},"tags":{"description":"YouTube video tags.","nullable":true,"type":"array","items":{"type":"string"}},"madeForKids":{"description":"Whether the YouTube video is made for kids.","nullable":true,"type":"boolean"},"notifySubscribers":{"description":"Whether YouTube should notify subscribers.","nullable":true,"type":"boolean"},"embeddable":{"description":"Whether the YouTube video can be embedded.","nullable":true,"type":"boolean"},"license":{"description":"YouTube license.","nullable":true,"allOf":[{"$ref":"#/components/schemas/YouTubeLicense"}]},"boardId":{"description":"Pinterest board ID.","nullable":true,"type":"string"},"link":{"description":"Pinterest outbound link.","nullable":true,"type":"string"},"altText":{"description":"Pinterest media alt text.","nullable":true,"type":"string"},"googlePostType":{"description":"Google Business Profile Local Post type. Defaults to standard.","nullable":true,"allOf":[{"$ref":"#/components/schemas/GoogleBusinessProfilePostType"}]},"googleCallToActionType":{"description":"Google Business Profile CTA button type. Not supported on offer posts.","nullable":true,"allOf":[{"$ref":"#/components/schemas/GoogleBusinessProfileCtaType"}]},"googleCallToActionUrl":{"description":"Google Business Profile CTA URL. Required for every CTA type except call.","nullable":true,"type":"string"},"googleEventTitle":{"description":"Google Business Profile event or offer title.","nullable":true,"type":"string"},"googleEventStartAt":{"description":"Google Business Profile event or offer start (ISO 8601 local timestamp).","nullable":true,"type":"string"},"googleEventEndAt":{"description":"Google Business Profile event or offer end (ISO 8601 local timestamp).","nullable":true,"type":"string"},"googleOfferCouponCode":{"description":"Google Business Profile offer coupon code.","nullable":true,"type":"string"},"googleOfferRedeemOnlineUrl":{"description":"Google Business Profile offer online redemption URL.","nullable":true,"type":"string"},"googleOfferTerms":{"description":"Google Business Profile offer terms and conditions.","nullable":true,"type":"string"},"googleLanguageCode":{"description":"Google Business Profile Local Post language code override (BCP-47).","nullable":true,"type":"string"}},"additionalProperties":false},"PublicLinkedInMentionDto":{"type":"object","properties":{"urn":{"description":"urn:li:organization:<id> for a company or school, or urn:li:person:<id> for a member.","type":"string","pattern":"^urn:li:(organization:\\d{1,20}|person:[A-Za-z0-9_-]{1,100})$"},"displayName":{"description":"The exact name LinkedIn returned. A name LinkedIn cannot match publishes as plain text.","type":"string","minLength":1,"maxLength":200},"start":{"description":"Where \"@\" plus displayName starts in the caption, in UTF-16 code units.","type":"integer","minimum":0,"maximum":9007199254740991},"length":{"description":"The length of \"@\" plus displayName.","type":"integer","minimum":2,"maximum":9007199254740991}},"required":["urn","displayName","start","length"],"additionalProperties":false},"FacebookPagePostCtaType":{"description":"Facebook Page feed link post CTA button type.","type":"string","enum":["LEARN_MORE","SIGN_UP","DOWNLOAD","WATCH_MORE","BOOK_TRAVEL","LISTEN_MUSIC","USE_APP","INSTALL_APP","NO_BUTTON"]},"ThreadsReplyControl":{"description":"Threads reply control for who can reply to the root post.","type":"string","enum":["everyone","accounts_you_follow","mentioned_only","parent_post_author_only","followers_only"]},"YouTubePrivacyStatus":{"description":"YouTube privacy status.","type":"string","enum":["public","unlisted","private"]},"YouTubeLicense":{"description":"YouTube license.","type":"string","enum":["youtube","creativeCommon"]},"GoogleBusinessProfilePostType":{"description":"Google Business Profile Local Post type. Defaults to standard.","type":"string","enum":["standard","event","offer"]},"GoogleBusinessProfileCtaType":{"description":"Google Business Profile CTA button type. Not supported on offer posts.","type":"string","enum":["book","order","shop","learn_more","sign_up","call"]},"PublicContentPostType":{"type":"string","enum":["post","reel","story","thread","poll"]},"PublicContentThreadMessageDto":{"type":"object","properties":{"captions":{"description":"Use canonical for this account's reply text. Nonempty overrides are rejected.","allOf":[{"$ref":"#/components/schemas/CaptionsDto"}]},"contentMedia":{"description":"Canonical media relationship input for this thread reply.","nullable":true,"maxItems":10,"type":"array","items":{"$ref":"#/components/schemas/PublicContentMediaDto"}}},"required":["captions"],"additionalProperties":false},"CreatePublicPostDto":{"type":"object","properties":{"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"intent":{"description":"Create behavior. Omitted intent defaults to draft. Use schedule with scheduledAt, or publish_now for explicit immediate publishing.","default":"draft","nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicContentCreateIntent"}]},"internalTitle":{"description":"Internal planning title. Not sent to publishing providers.","nullable":true,"maxLength":500,"type":"string"},"publishTitle":{"description":"Provider-facing title for platforms that support or require one.","nullable":true,"maxLength":500,"type":"string"},"notes":{"description":"Free-form rich-text notes attached to the content (HTML). Not published — internal only.","maxLength":100000,"type":"string"},"captions":{"allOf":[{"$ref":"#/components/schemas/CaptionsDto"}]},"contentMedia":{"description":"Canonical media relationship input. This is the only public media mutation shape. Accepts up to 20 items for linkedin and linkedin-page and 10 for every other platform.","maxItems":20,"type":"array","items":{"$ref":"#/components/schemas/PublicContentMediaDto"}},"poll":{"description":"LinkedIn poll content. Required when postType is poll.","nullable":true,"allOf":[{"$ref":"#/components/schemas/LinkedInPollDto"}]},"scheduledAt":{"description":"Schedule at an ISO-8601 timestamp with timezone. Required only when intent is schedule.","nullable":true,"type":"string"},"settings":{"description":"Strict platform-specific publishing settings. Unknown keys and deprecated promoted keys are rejected.","nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicProviderSettingsDto"}]},"postType":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicContentPostType"}]},"firstComment":{"nullable":true,"type":"string"},"shareToFeed":{"nullable":true,"type":"boolean"},"pillarIds":{"description":"Workspace content pillar IDs to attach to this content.","nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"formatIds":{"description":"Workspace content format IDs to attach to this content.","nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"campaignId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"campaignPhaseId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"labelIds":{"description":"Workspace label IDs to attach to this content.","nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"priority":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/WorkbenchPriority"}]},"assigneeIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"threadMessages":{"nullable":true,"maxItems":20,"type":"array","items":{"$ref":"#/components/schemas/PublicContentThreadMessageDto"}}},"required":["integrationId"],"additionalProperties":false},"PublicContentMutationResultDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"$ref":"#/components/schemas/ContentLibraryStatus"},"appUrl":{"description":"Authenticated Maeve app link for reviewing this content. Use this URL exactly as returned.","format":"uri","type":"string"},"groupId":{"description":"Shared group id for split/batched content, such as multi-media Stories.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"contentIds":{"description":"All content ids created by this mutation. Present for split/batched content.","type":"array","items":{"type":"string"}}},"required":["id","status"],"additionalProperties":false},"ContentLibraryStatus":{"type":"string","enum":["draft","pending_approval","rejected","scheduled","sent","failed","cancelled"]},"PublicContentStatus":{"type":"string","enum":["draft","scheduled","sent","failed"]},"ContentWorkflowStatus":{"type":"string","enum":["drafting","review","approved","scheduled","published"]},"ReviewLifecyclePhase":{"type":"string","enum":["none","team","client"]},"ReviewLifecycleState":{"type":"string","enum":["none","pending","changes_requested","needs_schedule","approved","overridden","cancelled","expired"]},"ReviewLifecycleActor":{"type":"string","enum":["none","agency","author","approver","client","system"]},"ReviewLifecycleNextAction":{"type":"string","enum":["request_review","send","decide","address_changes","schedule","publish","none"]},"ReviewLifecycleBlockerCode":{"type":"string","enum":["missing_schedule","schedule_expired","review_pending","changes_requested","review_cancelled","review_expired"]},"PublicContentSortField":{"type":"string","enum":["createdAt","updatedAt","scheduledAt","priority"]},"PublicContentSortDirection":{"type":"string","enum":["asc","desc"]},"PublicContentListItemDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deliveryMode":{"description":"TikTok delivery destination. tiktok_drafts requires finishing in TikTok even when status is sent.","type":"string","enum":["direct","tiktok_drafts"]},"groupId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationalTitle":{"description":"Organizational title shown inside Maeve. Never published.","nullable":true,"type":"string"},"internalTitle":{"nullable":true,"type":"string"},"publishTitle":{"nullable":true,"type":"string"},"origin":{"description":"Content origin. platform_import rows are imported reference records and have restricted actions.","type":"string","enum":["user_created","platform_import"]},"allowedActions":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicContentAllowedActionsDto"}]},"notes":{"description":"Free-form rich-text notes (HTML). Internal — never published. Empty string when none set.","type":"string"},"captions":{"allOf":[{"$ref":"#/components/schemas/CaptionsDto"}]},"resolvedCaption":{"type":"string"},"status":{"$ref":"#/components/schemas/ContentLibraryStatus"},"workflowStatus":{"$ref":"#/components/schemas/ContentWorkflowStatus"},"reviewLifecycle":{"description":"Optional review lifecycle on list responses. Present only when includeReviewLifecycle is true or reviewLifecycle filters are used.","nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicReviewLifecycleDto"}]},"publishingState":{"$ref":"#/components/schemas/PublicPublishingStateDto"},"scheduledAt":{"nullable":true,"type":"string"},"sentAt":{"nullable":true,"type":"string"},"calendarAt":{"description":"Timestamp used for calendar display: sentAt for published content, scheduledAt for planned content.","nullable":true,"type":"string"},"archivedAt":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"error":{"nullable":true,"type":"string"},"failureCategory":{"description":"Backend-owned failed-post category. Null unless status is failed.","nullable":true,"type":"string","enum":["connection_expired","account_action_required","credits_depleted","platform_rejected","missed_window","publishing_outcome_unknown","temporary_service_issue","unknown"]},"recommendedAction":{"description":"Backend-recommended recovery action for failed content. Null unless status is failed.","nullable":true,"type":"string","enum":["reconnect_account","retry_after_account_action","retry_now","edit_and_reschedule","reschedule_only","confirm_result","upgrade_billing","delete_only"]},"platformDeletedAt":{"nullable":true,"type":"string"},"platformDeletedByUserId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"platform":{"type":"string"},"platformUsername":{"type":"string"},"avatarUrl":{"nullable":true,"type":"string"},"platformName":{"nullable":true,"type":"string"},"facebookLinkUrl":{"description":"Facebook Page feed link URL for Facebook link posts.","nullable":true,"type":"string"},"facebookCtaType":{"description":"Facebook Page feed link post CTA button type.","nullable":true,"type":"string"},"postType":{"type":"string"},"poll":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/LinkedInPollDto"}]},"firstComment":{"nullable":true,"type":"string"},"shareToFeed":{"type":"boolean"},"contentMedia":{"type":"array","items":{"$ref":"#/components/schemas/PublicContentMediaAttachmentDto"}},"media":{"type":"array","items":{"$ref":"#/components/schemas/PublicContentMediaItemDto"}},"threadSize":{"type":"number"},"labelIds":{"description":"Workspace label IDs attached to this content.","type":"array","items":{"type":"string"}},"labels":{"description":"Workspace labels attached to this content.","type":"array","items":{"$ref":"#/components/schemas/PublicContentLabelDto"}},"pillarIds":{"description":"Content pillar IDs attached to this content.","type":"array","items":{"type":"string"}},"pillars":{"description":"Content pillars attached to this content.","type":"array","items":{"$ref":"#/components/schemas/PublicContentPillarDto"}},"formatIds":{"description":"Content format IDs attached to this content.","type":"array","items":{"type":"string"}},"formats":{"description":"Content formats attached to this content.","type":"array","items":{"$ref":"#/components/schemas/PublicContentFormatDto"}},"campaignId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"campaignPhaseId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"priority":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/WorkbenchPriority"}]},"assigneeIds":{"type":"array","items":{"type":"string"}},"assignees":{"type":"array","items":{"$ref":"#/components/schemas/PublicContentAssigneeDto"}},"recurringMetadata":{"description":"Recurring series linkage when this content was generated from a recurring occurrence. Null for non-recurring content. Use seriesId and occurrenceId with the recurring cancel endpoints.","nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicRecurringMetadataDto"}]}},"required":["id","organizationalTitle","internalTitle","publishTitle","origin","allowedActions","notes","resolvedCaption","status","workflowStatus","publishingState","scheduledAt","sentAt","calendarAt","archivedAt","createdAt","updatedAt","error","failureCategory","recommendedAction","platformDeletedAt","platformDeletedByUserId","integrationId","platform","platformUsername","avatarUrl","platformName","postType","firstComment","shareToFeed","contentMedia","media","threadSize","labelIds","labels","pillarIds","pillars","formatIds","formats","campaignId","campaignPhaseId","assigneeIds","assignees"],"additionalProperties":false},"PublicContentAllowedActionsDto":{"type":"object","properties":{"canEdit":{"type":"boolean"},"canReschedule":{"type":"boolean"},"canRetry":{"type":"boolean"},"canPublishNow":{"type":"boolean"},"canDelete":{"type":"boolean"},"canReuseAsDraft":{"type":"boolean"},"canUpdatePublishedCaption":{"type":"boolean"}},"required":["canEdit","canReschedule","canRetry","canPublishNow","canDelete","canReuseAsDraft","canUpdatePublishedCaption"],"additionalProperties":false},"PublicReviewLifecycleDto":{"type":"object","properties":{"phase":{"type":"string","enum":["none","team","client"]},"state":{"type":"string","enum":["none","pending","changes_requested","needs_schedule","approved","overridden","cancelled","expired"]},"actor":{"type":"string","enum":["none","agency","author","approver","client","system"]},"nextAction":{"type":"string","enum":["request_review","send","decide","address_changes","schedule","publish","none"]},"blocksPublishing":{"type":"boolean"},"blockers":{"type":"array","items":{"$ref":"#/components/schemas/PublicReviewLifecycleBlockerDto"}},"progress":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicReviewLifecycleProgressDto"}]}},"required":["phase","state","actor","nextAction","blocksPublishing","blockers"],"additionalProperties":false},"PublicReviewLifecycleBlockerDto":{"type":"object","properties":{"code":{"type":"string","enum":["missing_schedule","schedule_expired","review_pending","changes_requested","review_cancelled","review_expired"]},"message":{"type":"string"},"details":{"type":"object","additionalProperties":{}}},"required":["code"],"additionalProperties":false},"PublicReviewLifecycleProgressDto":{"type":"object","properties":{"reviewId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"itemId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"label":{"nullable":true,"type":"string"},"stageKind":{"nullable":true,"type":"string","enum":["team","client"]},"stagePosition":{"nullable":true,"type":"number"},"stageCount":{"type":"number"},"rule":{"type":"string","enum":["any","all"]},"inOrder":{"type":"boolean"},"waitingOn":{"type":"array","items":{"type":"object","additionalProperties":{}}},"version":{"type":"number"}},"required":["reviewId","itemId","stageCount","rule","inOrder","waitingOn","version"],"additionalProperties":false},"PublicPublishingStateDto":{"type":"object","properties":{"code":{"type":"string"},"phase":{"type":"string"},"label":{"type":"string"},"description":{"type":"string"},"severity":{"type":"string"},"isTerminal":{"type":"boolean"},"isEditable":{"type":"boolean"},"isActionLocked":{"type":"boolean"},"scheduledAt":{"nullable":true,"type":"string"},"sentAt":{"nullable":true,"type":"string"},"lastAttemptAt":{"nullable":true,"type":"string"},"nextAttemptAt":{"nullable":true,"type":"string"},"overdueSeconds":{"nullable":true,"type":"number"},"trigger":{"nullable":true,"type":"string"},"message":{"nullable":true,"type":"string"}},"required":["code","phase","label","description","severity","isTerminal","isEditable","isActionLocked","scheduledAt","sentAt","lastAttemptAt","nextAttemptAt","overdueSeconds","trigger","message"],"additionalProperties":false},"PublicContentMediaAttachmentDto":{"type":"object","properties":{"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"order":{"type":"number"},"type":{"nullable":true,"type":"string"},"url":{"nullable":true,"type":"string"},"thumbnailUrl":{"nullable":true,"type":"string"},"filename":{"nullable":true,"type":"string"},"crops":{"type":"object","additionalProperties":{}},"userTags":{"type":"array","items":{"type":"object","additionalProperties":{}}},"productTags":{"type":"array","items":{"type":"object","additionalProperties":{}}},"cover":{"nullable":true,"type":"object","additionalProperties":{}}},"required":["mediaId","order","type","url","thumbnailUrl","filename","crops","userTags","productTags","cover"],"additionalProperties":false},"PublicContentMediaItemDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string"},"type":{"type":"string"}},"required":["id","url","type"],"additionalProperties":false},"PublicContentLabelDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"color":{"nullable":true,"type":"string"},"groupId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"archivedAt":{"nullable":true,"type":"string"},"mergedIntoLabelId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mergedAt":{"nullable":true,"type":"string"},"mergedByUserId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","name","color"],"additionalProperties":false},"PublicContentPillarDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"color":{"nullable":true,"type":"string"},"description":{"nullable":true,"type":"string"},"sortOrder":{"type":"number"},"archivedAt":{"nullable":true,"type":"string"}},"required":["id","name","color","sortOrder"],"additionalProperties":false},"PublicContentFormatDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"color":{"nullable":true,"type":"string"},"description":{"nullable":true,"type":"string"},"sortOrder":{"type":"number"},"isSeeded":{"type":"boolean"},"archivedAt":{"nullable":true,"type":"string"}},"required":["id","name","color","sortOrder"],"additionalProperties":false},"PublicContentAssigneeDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"displayName":{"type":"string"},"email":{"type":"string"},"avatarUrl":{"nullable":true,"type":"string"}},"required":["id","displayName","email","avatarUrl"],"additionalProperties":false},"PublicRecurringMetadataDto":{"type":"object","properties":{"seriesId":{"description":"Recurring series this content belongs to.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"occurrenceId":{"description":"Recurring occurrence this content was generated from.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"occurrenceIndex":{"description":"Zero-based position of the occurrence within the series.","type":"number"},"seriesVersion":{"description":"Series version the occurrence was generated against.","type":"number"},"seriesStatus":{"$ref":"#/components/schemas/RecurringSeriesStatus"},"occurrenceStatus":{"$ref":"#/components/schemas/RecurringOccurrenceStatus"},"localDate":{"example":"2026-07-09","description":"Occurrence date in the series timezone (YYYY-MM-DD).","type":"string"},"localTime":{"example":"09:30","description":"Occurrence time of day in the series timezone (HH:mm).","type":"string"},"timezone":{"example":"Australia/Melbourne","description":"IANA timezone of the recurring series.","type":"string"},"isDetached":{"description":"True when the occurrence has been detached from the series.","type":"boolean"},"currentVersion":{"description":"Current version of the series.","type":"number"},"errorCode":{"nullable":true,"type":"string"},"errorMessage":{"nullable":true,"type":"string"}},"required":["seriesId","occurrenceId","occurrenceIndex","seriesVersion","seriesStatus","occurrenceStatus","localDate","localTime","timezone","isDetached","currentVersion"],"additionalProperties":false},"RecurringSeriesStatus":{"type":"string","enum":["active","cancelled","completed"]},"RecurringOccurrenceStatus":{"type":"string","enum":["pending_generation","scheduled","in_review","published","failed","cancelled","skipped","blocked"]},"OffsetPaginationMetaDto":{"type":"object","properties":{"limit":{"example":20,"type":"number"},"offset":{"example":0,"type":"number"},"total":{"example":125,"type":"number"},"hasMore":{"example":true,"type":"boolean"}},"required":["limit","offset","total","hasMore"],"additionalProperties":false},"PublicContentCountDto":{"type":"object","properties":{"count":{"type":"number"}},"required":["count"],"additionalProperties":false},"PublicContentVersionEntryDto":{"type":"object","properties":{"version":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"createdBy":{"nullable":true,"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"}},"required":["id","name"],"additionalProperties":false},"snapshot":{"$ref":"#/components/schemas/PublicReviewContentSnapshotDto"}},"required":["version","createdAt","createdBy","snapshot"],"additionalProperties":false},"PublicReviewContentSnapshotDto":{"type":"object","properties":{"contentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"integrationId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"platform":{"type":"string"},"platformLabel":{"nullable":true,"type":"string"},"platformUsername":{"nullable":true,"type":"string"},"avatarUrl":{"nullable":true,"type":"string"},"title":{"nullable":true,"type":"string"},"body":{"type":"string"},"articleBodyHtml":{"type":"string"},"postType":{"nullable":true,"type":"string"},"firstComment":{"nullable":true,"type":"string"},"shareToFeed":{"nullable":true,"type":"boolean"},"settings":{"type":"object","additionalProperties":{}},"scheduledAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"media":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string"},"type":{"type":"string"},"thumbnailUrl":{"nullable":true,"type":"string"},"durationSeconds":{"nullable":true,"type":"number"},"order":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"crops":{"type":"object","additionalProperties":{}},"cover":{"nullable":true,"type":"object","additionalProperties":{}},"userTags":{"type":"array","items":{}},"productTags":{"type":"array","items":{}}},"required":["id","url","type","thumbnailUrl","durationSeconds","order","crops","cover","userTags","productTags"],"additionalProperties":false}},"threadMessages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"title":{"nullable":true,"type":"string"},"body":{"type":"string"},"integrationId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"postType":{"nullable":true,"type":"string"},"firstComment":{"nullable":true,"type":"string"},"shareToFeed":{"nullable":true,"type":"boolean"},"settings":{"type":"object","additionalProperties":{}},"media":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string"},"type":{"type":"string"},"thumbnailUrl":{"nullable":true,"type":"string"},"durationSeconds":{"nullable":true,"type":"number"},"order":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"crops":{"type":"object","additionalProperties":{}},"cover":{"nullable":true,"type":"object","additionalProperties":{}},"userTags":{"type":"array","items":{}},"productTags":{"type":"array","items":{}}},"required":["id","url","type","thumbnailUrl","durationSeconds","order","crops","cover","userTags","productTags"],"additionalProperties":false}}},"required":["id","title","body","integrationId","postType","firstComment","shareToFeed","settings","media"],"additionalProperties":false}},"capturedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["contentId","integrationId","platform","platformLabel","platformUsername","avatarUrl","title","body","postType","firstComment","shareToFeed","settings","scheduledAt","media","threadMessages","capturedAt"],"additionalProperties":false},"RestoreContentVersionDto":{"type":"object","properties":{"expectedVersionId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"expectedUpdatedAt":{"type":"string"}},"required":["expectedVersionId","expectedUpdatedAt"],"additionalProperties":false},"PublicContentVersionRestoreResultDto":{"type":"object","properties":{"contentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"fromVersion":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"version":{"description":"The version now current. Unchanged when the restore was a no-op.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"createdVersion":{"description":"True when the restore produced a new version with the old version's content.","type":"boolean"},"scheduledAt":{"description":"The live schedule after the restore, which is not part of the snapshot.","nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"scheduleChanged":{"type":"boolean"},"updatedAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["contentId","fromVersion","version","createdVersion","scheduledAt","scheduleChanged","updatedAt"],"additionalProperties":false},"PublicContentDetailDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"appUrl":{"description":"Authenticated Maeve app link for reviewing this content. Use this URL exactly as returned.","format":"uri","type":"string"},"permalink":{"description":"Published provider URL when Maeve has a validated HTTPS permalink. Null before publication.","nullable":true,"format":"uri","type":"string"},"platformPostId":{"description":"Saved provider identity for X, Google Business Profile, or LinkedIn personal and Page content. LinkedIn returns a share/ugcPost URN or null when no valid identity was captured. This is not proof of native visibility.","nullable":true,"type":"string"},"groupId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationalTitle":{"description":"Organizational title shown inside Maeve. Never published.","nullable":true,"type":"string"},"internalTitle":{"nullable":true,"type":"string"},"publishTitle":{"nullable":true,"type":"string"},"origin":{"description":"Content origin. platform_import rows are imported reference records and have restricted actions.","type":"string","enum":["user_created","platform_import"]},"allowedActions":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicContentAllowedActionsDto"}]},"notes":{"description":"Free-form rich-text notes (HTML). Internal — never published. Empty string when none set.","type":"string"},"captions":{"allOf":[{"$ref":"#/components/schemas/CaptionsDto"}]},"resolvedCaption":{"type":"string"},"status":{"$ref":"#/components/schemas/ContentLibraryStatus"},"deliveryMode":{"description":"TikTok delivery destination. tiktok_drafts requires finishing in TikTok even when status is sent.","type":"string","enum":["direct","tiktok_drafts"]},"workflowStatus":{"$ref":"#/components/schemas/ContentWorkflowStatus"},"reviewLifecycle":{"description":"Optional review lifecycle. Present on detail responses once resolver-backed surfaces are enabled; use state, blockers, and nextAction instead of content.status alone for review workflow decisions.","nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicReviewLifecycleDto"}]},"scheduledAt":{"nullable":true,"type":"string"},"sentAt":{"nullable":true,"type":"string"},"calendarAt":{"description":"Timestamp used for calendar display: sentAt for published content, scheduledAt for planned content.","nullable":true,"type":"string"},"archivedAt":{"nullable":true,"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"error":{"nullable":true,"type":"string"},"failureCategory":{"description":"Backend-owned failed-post category. Null unless status is failed.","nullable":true,"type":"string","enum":["connection_expired","account_action_required","credits_depleted","platform_rejected","missed_window","publishing_outcome_unknown","temporary_service_issue","unknown"]},"recommendedAction":{"description":"Backend-recommended recovery action for failed content. Null unless status is failed.","nullable":true,"type":"string","enum":["reconnect_account","retry_after_account_action","retry_now","edit_and_reschedule","reschedule_only","confirm_result","upgrade_billing","delete_only"]},"platformDeletedAt":{"nullable":true,"type":"string"},"platformDeletedByUserId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"postType":{"type":"string"},"poll":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/LinkedInPollDto"}]},"firstComment":{"nullable":true,"type":"string"},"shareToFeed":{"type":"boolean"},"labelIds":{"description":"Workspace label IDs attached to this content.","type":"array","items":{"type":"string"}},"pillarIds":{"description":"Content pillar IDs attached to this content.","type":"array","items":{"type":"string"}},"pillars":{"description":"Content pillars attached to this content.","type":"array","items":{"$ref":"#/components/schemas/PublicContentPillarDto"}},"formatIds":{"description":"Content format IDs attached to this content.","type":"array","items":{"type":"string"}},"formats":{"description":"Content formats attached to this content.","type":"array","items":{"$ref":"#/components/schemas/PublicContentFormatDto"}},"campaignId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"campaignPhaseId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"priority":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/WorkbenchPriority"}]},"assigneeIds":{"type":"array","items":{"type":"string"}},"assignees":{"type":"array","items":{"$ref":"#/components/schemas/PublicContentAssigneeDto"}},"labels":{"description":"Workspace labels attached to this content.","type":"array","items":{"$ref":"#/components/schemas/PublicContentLabelDto"}},"integration":{"$ref":"#/components/schemas/PublicContentIntegrationDto"},"contentMedia":{"type":"array","items":{"$ref":"#/components/schemas/PublicContentMediaAttachmentDto"}},"threadMessages":{"type":"array","items":{"$ref":"#/components/schemas/PublicContentThreadMessageResponseDto"}},"settings":{"description":"Sanitized strict provider settings for this content item's integration platform.","nullable":true,"type":"object","additionalProperties":{}}},"required":["id","permalink","organizationalTitle","internalTitle","publishTitle","origin","allowedActions","notes","resolvedCaption","status","workflowStatus","scheduledAt","sentAt","calendarAt","archivedAt","createdAt","updatedAt","error","failureCategory","recommendedAction","platformDeletedAt","platformDeletedByUserId","integrationId","postType","firstComment","shareToFeed","labelIds","pillarIds","pillars","formatIds","formats","campaignId","campaignPhaseId","assigneeIds","assignees","labels","integration","contentMedia","threadMessages"],"additionalProperties":false},"PublicContentIntegrationDto":{"type":"object","properties":{"platform":{"type":"string"},"username":{"type":"string"},"avatarUrl":{"nullable":true,"type":"string"},"name":{"nullable":true,"type":"string"}},"required":["platform","username","avatarUrl","name"],"additionalProperties":false},"PublicContentThreadMessageResponseDto":{"type":"object","properties":{"platformPostId":{"description":"Native X reply ID. Historical replies may have no captured ID.","nullable":true,"type":"string"},"permalink":{"description":"Validated HTTPS link for an X reply, when captured.","nullable":true,"format":"uri","type":"string"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"captions":{"$ref":"#/components/schemas/CaptionsDto"},"resolvedCaption":{"type":"string"},"contentMedia":{"type":"array","items":{"$ref":"#/components/schemas/PublicContentMediaAttachmentDto"}}},"required":["id","captions","resolvedCaption","contentMedia"],"additionalProperties":false},"ExpectedReviewItemDto":{"type":"object","properties":{"contentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"expectedVersionId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"expectedUpdatedAt":{"format":"date-time","type":"string"}},"required":["contentId","expectedVersionId","expectedUpdatedAt"],"additionalProperties":false},"RescheduleContentDto":{"type":"object","properties":{"scheduledAt":{"nullable":true,"type":"string"},"expectedItems":{"nullable":true,"type":"array","items":{"$ref":"#/components/schemas/ExpectedReviewItemDto"}},"expectedRootPostId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"expectedRootEditionIds":{"uniqueItems":true,"minItems":1,"maxItems":100,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}},"required":["scheduledAt"],"additionalProperties":false},"RevertContentToDraftDto":{"type":"object","properties":{"expectedRootPostId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"expectedRootEditionIds":{"uniqueItems":true,"minItems":1,"maxItems":100,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}},"additionalProperties":false},"PublicContentRevertedDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","enum":["draft"]},"affectedRootEditionIds":{"description":"Present when the expected root scope was applied.","type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}},"required":["id","status"],"additionalProperties":false},"PublicIntendedPublishTimeResultDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"$ref":"#/components/schemas/ContentLibraryStatus"},"scheduledAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","status","scheduledAt"],"additionalProperties":false},"UpdatePublishedCaptionDto":{"type":"object","properties":{"message":{"maxLength":25000,"type":"string"}},"required":["message"],"additionalProperties":false},"PublicContentCaptionResultDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"captions":{"$ref":"#/components/schemas/CaptionsDto"},"resolvedCaption":{"type":"string"}},"required":["id","captions","resolvedCaption"],"additionalProperties":false},"UpdateContentMetadataDto":{"type":"object","properties":{"organizationalTitle":{"description":"Organizational title shown inside Maeve. Never sent to a social platform.","nullable":true,"maxLength":240,"type":"string"},"labelIds":{"description":"Replacement workspace content label IDs.","nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"pillarIds":{"description":"Replacement content pillar IDs.","nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"formatIds":{"description":"Replacement content format IDs.","nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"assigneeIds":{"description":"Replacement assignee user IDs.","nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"priority":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/WorkbenchPriority"}]},"campaignId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"campaignPhaseId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"additionalProperties":false},"PublicContentMetadataResultDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"workspaceId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"$ref":"#/components/schemas/ContentLibraryStatus"},"workflowStatus":{"$ref":"#/components/schemas/ContentWorkflowStatus"},"organizationalTitle":{"description":"Organizational title shown inside Maeve. Never published.","nullable":true,"type":"string"},"labelIds":{"description":"Workspace label IDs attached to this content.","type":"array","items":{"type":"string"}},"labels":{"description":"Workspace labels attached to this content.","type":"array","items":{"$ref":"#/components/schemas/PublicContentLabelDto"}},"pillarIds":{"description":"Content pillar IDs attached to this content.","type":"array","items":{"type":"string"}},"pillars":{"description":"Content pillars attached to this content.","type":"array","items":{"$ref":"#/components/schemas/PublicContentPillarDto"}},"formatIds":{"description":"Content format IDs attached to this content.","type":"array","items":{"type":"string"}},"formats":{"description":"Content formats attached to this content.","type":"array","items":{"$ref":"#/components/schemas/PublicContentFormatDto"}},"assigneeIds":{"type":"array","items":{"type":"string"}},"assignees":{"type":"array","items":{"$ref":"#/components/schemas/PublicContentAssigneeDto"}},"priority":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/WorkbenchPriority"}]},"campaignId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"campaignPhaseId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"updatedAt":{"type":"string"}},"required":["id","workspaceId","status","workflowStatus","organizationalTitle","labelIds","labels","pillarIds","pillars","formatIds","formats","assigneeIds","assignees","campaignId","campaignPhaseId","updatedAt"],"additionalProperties":false},"UpdatePublicPostDto":{"type":"object","properties":{"integrationId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"internalTitle":{"description":"Internal planning title. Not sent to publishing providers.","nullable":true,"maxLength":500,"type":"string"},"publishTitle":{"description":"Provider-facing title for platforms that support or require one.","nullable":true,"maxLength":500,"type":"string"},"notes":{"description":"Free-form rich-text notes attached to the content (HTML). Not published — internal only.","maxLength":100000,"type":"string"},"captions":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/CaptionsDto"}]},"contentMedia":{"description":"Canonical media relationship input. This is the only public media mutation shape. Accepts up to 20 items for linkedin and linkedin-page and 10 for every other platform.","maxItems":20,"type":"array","items":{"$ref":"#/components/schemas/PublicContentMediaDto"}},"poll":{"description":"LinkedIn poll content. Required when postType is poll.","nullable":true,"allOf":[{"$ref":"#/components/schemas/LinkedInPollDto"}]},"scheduledAt":{"nullable":true,"type":"string"},"settings":{"description":"Strict platform-specific publishing settings. Unknown keys and deprecated promoted keys are rejected.","nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicProviderSettingsDto"}]},"postType":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicContentPostType"}]},"firstComment":{"nullable":true,"type":"string"},"shareToFeed":{"nullable":true,"type":"boolean"},"pillarIds":{"description":"Workspace content pillar IDs to attach to this content.","nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"formatIds":{"description":"Workspace content format IDs to attach to this content.","nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"campaignId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"campaignPhaseId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"labelIds":{"description":"Workspace label IDs to attach to this content.","nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"priority":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/WorkbenchPriority"}]},"assigneeIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"threadMessages":{"nullable":true,"maxItems":20,"type":"array","items":{"$ref":"#/components/schemas/PublicContentThreadMessageDto"}}},"additionalProperties":false},"UpdatePublicPostNotesDto":{"type":"object","properties":{"notes":{"maxLength":100000,"description":"Free-form rich-text notes (HTML). Replaces the entire notes body. Not published — internal only.","type":"string"}},"required":["notes"],"additionalProperties":false},"PublicContentNotesResultDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"notes":{"description":"Free-form rich-text notes (HTML). Internal — never published. Empty string when cleared.","type":"string"}},"required":["id","notes"],"additionalProperties":false},"PublicApprovalWorkflowDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"mode":{"type":"string","enum":["required","suggested"]},"position":{"type":"number"},"enabled":{"type":"boolean"},"stages":{"type":"array","items":{"$ref":"#/components/schemas/PublicApprovalWorkflowStageDto"}},"conditions":{"description":"Empty for a required catch-all.","type":"array","items":{"$ref":"#/components/schemas/PublicApprovalWorkflowConditionDto"}},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","name","mode","position","enabled","stages","conditions","createdAt","updatedAt"],"additionalProperties":false},"PublicApprovalWorkflowStageDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"position":{"type":"number"},"kind":{"type":"string","enum":["team","client"]},"rule":{"type":"string","enum":["any","all"]},"inOrder":{"type":"boolean"},"deadlineDays":{"nullable":true,"type":"number"},"participants":{"type":"array","items":{"$ref":"#/components/schemas/PublicApprovalWorkflowParticipantDto"}}},"required":["id","position","kind","rule","inOrder","deadlineDays","participants"],"additionalProperties":false},"PublicApprovalWorkflowParticipantDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string","enum":["member","role","contact"]},"userId":{"description":"Present for a member.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"role":{"description":"Present for a role.","type":"string","enum":["manager","editor","creator"]},"name":{"type":"string"},"email":{"description":"Present for a client contact.","type":"string"},"available":{"description":"Present for a member; false once they have left the workspace.","type":"boolean"}},"required":["id","kind","name"],"additionalProperties":false},"PublicApprovalWorkflowConditionDto":{"type":"object","properties":{"kind":{"type":"string","enum":["channel","platform","post_type","author","author_role","label","pillar","format","campaign"]},"value":{"type":"string"}},"required":["kind","value"],"additionalProperties":false},"ResolveReviewDto":{"type":"object","properties":{"contentIds":{"nullable":true,"maxItems":50,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"postId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"channels":{"nullable":true,"maxItems":50,"type":"array","items":{"$ref":"#/components/schemas/ResolveReviewChannelDto"}},"labelIds":{"nullable":true,"maxItems":200,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"pillarIds":{"nullable":true,"maxItems":200,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"formatIds":{"nullable":true,"maxItems":200,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"campaignId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"additionalProperties":false},"ResolveReviewChannelDto":{"type":"object","properties":{"contentId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"integrationId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"postType":{"nullable":true,"maxLength":32,"type":"string"}},"additionalProperties":false},"PublicReviewResolutionDto":{"type":"object","properties":{"contentId":{"description":"Null for a channel that is not saved yet.","nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"platform":{"type":"string"},"workflow":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicReviewResolutionWorkflowDto"}]},"matched":{"description":"Empty for the catch-all.","type":"array","items":{"$ref":"#/components/schemas/PublicReviewResolutionMatchDto"}},"updatedAt":{"description":"Saved content as stored now; submit it back as expectedUpdatedAt.","nullable":true,"type":"string"},"versionId":{"description":"The version a current review binds; submit it back as expectedVersionId.","nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["contentId","integrationId","platform","workflow","matched","updatedAt","versionId"],"additionalProperties":false},"PublicReviewResolutionWorkflowDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"mode":{"type":"string","enum":["required","suggested"]},"stages":{"type":"array","items":{"$ref":"#/components/schemas/PublicApprovalWorkflowStageDto"}}},"required":["id","name","mode","stages"],"additionalProperties":false},"PublicReviewResolutionMatchDto":{"type":"object","properties":{"kind":{"type":"string","enum":["channel","platform","post_type","author","author_role","label","pillar","format","campaign"]},"value":{"type":"string"},"label":{"example":"Instagram","type":"string"}},"required":["kind","value","label"],"additionalProperties":false},"ReviewSubmitItemDto":{"type":"object","properties":{"contentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"expectedVersionId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"expectedUpdatedAt":{"format":"date-time","type":"string"},"choice":{"$ref":"#/components/schemas/ReviewSubmitChoiceDto"},"action":{"type":"string","enum":["submit","save_draft","schedule","publish_now"]}},"required":["contentId","expectedUpdatedAt","choice","action"],"additionalProperties":false},"ReviewSubmitChoiceDto":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","enum":["workflow"]},"workflowId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"stages":{"description":"Ignored for this kind."}},"required":["kind","workflowId"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","enum":["custom"]},"workflowId":{"description":"Ignored for this kind."},"stages":{"minItems":1,"type":"array","items":{"$ref":"#/components/schemas/ReviewStageInputDto"}}},"required":["kind","stages"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","enum":["none"]},"workflowId":{"description":"Ignored for this kind."},"stages":{"description":"Ignored for this kind."}},"required":["kind"],"additionalProperties":false}]},"ReviewStageInputDto":{"type":"object","properties":{"id":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string","enum":["team","client"]},"rule":{"type":"string","enum":["any","all"]},"inOrder":{"nullable":true,"type":"boolean"},"deadlineDays":{"nullable":true,"type":"integer","minimum":1,"maximum":30},"participants":{"type":"array","items":{"$ref":"#/components/schemas/ReviewParticipantInputDto"}}},"required":["kind","rule","deadlineDays","participants"],"additionalProperties":false},"ReviewParticipantInputDto":{"type":"object","properties":{"id":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"userId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"nullable":true,"type":"string"},"email":{"nullable":true,"format":"email","type":"string"}},"additionalProperties":false},"ReviewSubmitGroupDto":{"type":"object","properties":{"contentIds":{"minItems":1,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"label":{"nullable":true,"type":"string"},"expiresAt":{"nullable":true,"type":"string"},"inviteNote":{"nullable":true,"type":"string"}},"required":["contentIds"],"additionalProperties":false},"SubmitReviewsDto":{"type":"object","properties":{"requestId":{"maxLength":255,"type":"string","minLength":1},"items":{"minItems":1,"type":"array","items":{"$ref":"#/components/schemas/ReviewSubmitItemDto"}},"groups":{"type":"array","items":{"$ref":"#/components/schemas/ReviewSubmitGroupDto"}}},"required":["requestId","items","groups"],"additionalProperties":false},"PublicReviewSubmitResultDto":{"type":"object","properties":{"results":{"type":"array","items":{"$ref":"#/components/schemas/PublicReviewSubmitItemResultDto"}}},"required":["results"],"additionalProperties":false},"PublicReviewSubmitItemResultDto":{"type":"object","properties":{"contentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"action":{"type":"string","enum":["submit","save_draft","schedule","publish_now"]},"reviewId":{"description":"Present when action is submit.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"reviewItemId":{"description":"Present when action is submit.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","enum":["draft","scheduled"]},"scheduledAt":{"description":"Present when action is schedule or publish_now.","type":"string"}},"required":["contentId","action"],"additionalProperties":false},"ReviewItemInputDto":{"type":"object","properties":{"contentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["contentId"],"additionalProperties":false},"CreateReviewDto":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ReviewItemInputDto"}},"stages":{"type":"array","items":{"$ref":"#/components/schemas/ReviewStageInputDto"}},"label":{"nullable":true,"type":"string"},"expiresAt":{"nullable":true,"type":"string"},"inviteNote":{"nullable":true,"type":"string"},"workflowId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"sendNow":{"nullable":true,"type":"boolean"}},"required":["items","stages"],"additionalProperties":false},"PublicReviewCreatedDto":{"type":"object","properties":{"reviewId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["reviewId"],"additionalProperties":false},"PreviewReviewDto":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ReviewItemInputDto"}},"stages":{"nullable":true,"type":"array","items":{"$ref":"#/components/schemas/ReviewStageInputDto"}}},"required":["items"],"additionalProperties":false},"PublicReviewEligibilityDto":{"type":"object","properties":{"eligibleContentIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"blockers":{"type":"array","items":{"type":"object","properties":{"contentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"code":{"type":"string"},"message":{"type":"string"}},"required":["contentId","code","message"],"additionalProperties":false}}},"required":["eligibleContentIds","blockers"],"additionalProperties":false},"PublicReviewListItemDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"label":{"nullable":true,"type":"string"},"status":{"$ref":"#/components/schemas/ReviewStatus"},"configRevision":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"expiresAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"sentAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"completedAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"cancelledAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"stages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"kind":{"type":"string","enum":["team","client"]},"rule":{"type":"string","enum":["any","all"]},"inOrder":{"type":"boolean"},"deadlineDays":{"nullable":true,"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"userId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"}},"required":["id","position","userId","name"],"additionalProperties":false}}},"required":["id","position","kind","rule","inOrder","deadlineDays","participants"],"additionalProperties":false}},"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"contentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","enum":["pending","approved","changes_requested","overridden","cancelled"]},"currentVersionId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"currentStageId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"finalizedAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","contentId","status","currentVersionId","currentStageId","position","finalizedAt","updatedAt"],"additionalProperties":false}}},"required":["id","label","status","configRevision","expiresAt","sentAt","completedAt","cancelledAt","createdAt","updatedAt","stages","items"],"additionalProperties":false},"ReviewStatus":{"type":"string","enum":["draft","active","completed","cancelled","expired"]},"PublicReviewInboxItemDto":{"type":"object","properties":{"reviewId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"itemId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"contentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"label":{"nullable":true,"type":"string"},"lifecycle":{"$ref":"#/components/schemas/PublicReviewLifecycleDto"},"group":{"type":"string","enum":["your_turn","in_progress","done"]},"platform":{"type":"string"},"preview":{"type":"object","properties":{"title":{"nullable":true,"type":"string"},"body":{"type":"string"},"platformUsername":{"nullable":true,"type":"string"},"avatarUrl":{"nullable":true,"type":"string"},"scheduledAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["title","body","platformUsername","avatarUrl","scheduledAt"],"additionalProperties":false},"expiresAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["reviewId","itemId","contentId","label","lifecycle","group","platform","preview","expiresAt","createdAt"],"additionalProperties":false},"PublicReviewSummaryCountsDto":{"type":"object","properties":{"yourTurn":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"inProgress":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"done":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["yourTurn","inProgress","done"],"additionalProperties":false},"PublicReviewContentHistoryItemDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"reviewId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"contentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","enum":["pending","approved","changes_requested","overridden","cancelled"]},"currentVersionId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"finalizedAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"isCurrent":{"type":"boolean"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"review":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"label":{"nullable":true,"type":"string"},"status":{"$ref":"#/components/schemas/ReviewStatus"},"expiresAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"sentAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"completedAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"cancelledAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","label","status","expiresAt","sentAt","completedAt","cancelledAt"],"additionalProperties":false},"currentVersion":{"nullable":true,"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","version","createdAt"],"additionalProperties":false}},"required":["id","reviewId","contentId","status","currentVersionId","position","finalizedAt","isCurrent","createdAt","updatedAt","review","currentVersion"],"additionalProperties":false},"PublicReviewWithItemsDto":{"type":"object","properties":{"review":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicReviewDto"}]},"items":{"type":"array","items":{"$ref":"#/components/schemas/PublicReviewViewDto"}}},"required":["review","items"],"additionalProperties":false},"PublicReviewDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"workspaceId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"label":{"nullable":true,"type":"string"},"status":{"$ref":"#/components/schemas/ReviewStatus"},"workflowId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"workflowName":{"nullable":true,"type":"string"},"workflowMode":{"nullable":true,"type":"string","enum":["required","suggested"]},"configRevision":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"expiresAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"inviteNote":{"nullable":true,"type":"string"},"createdById":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"createdByName":{"description":"Team viewers only; clients never see who sent a review.","nullable":true,"type":"string"},"workspaceTimezone":{"type":"string"},"sentAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"completedAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"cancelledAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","workspaceId","label","status","workflowId","workflowName","workflowMode","configRevision","expiresAt","inviteNote","createdById","createdByName","workspaceTimezone","sentAt","completedAt","cancelledAt","createdAt","updatedAt"],"additionalProperties":false},"PublicReviewViewDto":{"type":"object","properties":{"review":{"$ref":"#/components/schemas/PublicReviewDto"},"stages":{"type":"array","items":{"$ref":"#/components/schemas/PublicReviewStageDto"}},"item":{"$ref":"#/components/schemas/PublicReviewItemDto"},"versions":{"type":"array","items":{"$ref":"#/components/schemas/PublicContentVersionEntryDto"}},"decisions":{"type":"array","items":{"$ref":"#/components/schemas/PublicReviewDecisionRecordDto"}},"activity":{"type":"array","items":{"$ref":"#/components/schemas/PublicReviewActivityDto"}},"versionShares":{"type":"array","items":{"type":"object","properties":{"itemId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"versionId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"sharedStageIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["itemId","versionId","sharedStageIds","createdAt"],"additionalProperties":false}},"viewer":{"type":"object","properties":{"audience":{"type":"string","enum":["team","client"]},"userId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"participantIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"lastViewedAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"lastApprovedVersion":{"nullable":true,"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"actions":{"type":"object","properties":{"canSend":{"type":"boolean"},"canRemind":{"type":"boolean"},"canEditStages":{"type":"boolean"},"canAddItem":{"type":"boolean"},"canRemoveItem":{"type":"boolean"},"canDecide":{"type":"boolean"},"canOverride":{"type":"boolean"},"canRevoke":{"type":"boolean"},"canWithdraw":{"type":"boolean"},"canComment":{"type":"boolean"},"canReact":{"type":"boolean"},"canRestore":{"type":"boolean"},"canSchedule":{"type":"boolean"},"canPublish":{"type":"boolean"},"canClearIntendedTime":{"type":"boolean"}},"required":["canSend","canRemind","canEditStages","canAddItem","canRemoveItem","canDecide","canOverride","canRevoke","canWithdraw","canComment","canReact","canRestore","canSchedule","canPublish","canClearIntendedTime"],"additionalProperties":false}},"required":["audience","userId","participantIds","lastViewedAt","lastApprovedVersion","actions"],"additionalProperties":false},"lockedStageIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"lockReasons":{"type":"object","additionalProperties":{"type":"string"}}},"required":["review","stages","item","versions","decisions","activity","versionShares","viewer","lockedStageIds","lockReasons"],"additionalProperties":false},"PublicReviewStageDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"kind":{"type":"string","enum":["team","client"]},"rule":{"type":"string","enum":["any","all"]},"inOrder":{"type":"boolean"},"deadlineDays":{"nullable":true,"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"participants":{"type":"array","items":{"$ref":"#/components/schemas/PublicReviewParticipantDto"}},"state":{"type":"string","enum":["done","current","changes_requested","overridden","upcoming","cancelled"]},"waitingOn":{"type":"array","items":{"type":"object","properties":{"participantId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"userId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"available":{"type":"boolean"}},"required":["participantId","userId","name"],"additionalProperties":false}}},"required":["id","position","kind","rule","inOrder","deadlineDays","participants"],"additionalProperties":false},"PublicReviewParticipantDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"userId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"email":{"nullable":true,"type":"string"},"available":{"type":"boolean"},"removedAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","position","userId","name","available","removedAt"],"additionalProperties":false},"PublicReviewItemDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"contentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","enum":["pending","approved","changes_requested","overridden","cancelled"]},"currentVersionId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"currentVersion":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"currentStageId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"stageEnteredAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"liveScheduledAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updatedAt":{"description":"Optimistic-concurrency token for live content mutations and restores.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"finalizedAt":{"nullable":true,"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","contentId","status","currentVersionId","currentVersion","currentStageId","stageEnteredAt","liveScheduledAt","updatedAt","position","finalizedAt"],"additionalProperties":false},"PublicReviewDecisionRecordDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"itemId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"stageId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"participantId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"actorUserId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"versionId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"decision":{"type":"string","enum":["approved","changes_requested","overridden","revoked"]},"reason":{"nullable":true,"type":"string"},"sequence":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"revokesDecisionId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","itemId","stageId","participantId","actorUserId","versionId","version","decision","reason","sequence","revokesDecisionId","createdAt"],"additionalProperties":false},"PublicReviewActivityDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"action":{"type":"string"},"visibility":{"type":"string","enum":["internal","external","all"]},"actor":{"type":"object","properties":{"type":{"type":"string","enum":["user","participant","system","agent"]},"id":{"nullable":true,"type":"string"},"name":{"type":"string"},"onBehalfOf":{"nullable":true,"type":"object","properties":{"id":{"nullable":true,"type":"string"},"name":{"type":"string"}},"required":["id","name"],"additionalProperties":false},"agentSessionId":{"nullable":true,"type":"string"},"agentTurnId":{"nullable":true,"type":"string"},"agentToolCallId":{"nullable":true,"type":"string"}},"required":["type","id","name"],"additionalProperties":false},"payload":{"type":"object","properties":{"body":{"type":"string"},"attachments":{"type":"array","items":{"$ref":"#/components/schemas/PublicReviewActivityAttachmentDto"}}},"additionalProperties":{}},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"reactions":{"type":"array","items":{"type":"object","properties":{"emoji":{"type":"string","enum":["👍","❤️","😂","🎉","👀"]},"count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"reactors":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["user","participant"]},"id":{"type":"string"},"name":{"type":"string"}},"required":["type","id","name"],"additionalProperties":false}},"viewerHasReacted":{"type":"boolean"}},"required":["emoji","count","reactors","viewerHasReacted"],"additionalProperties":false}}},"required":["id","action","visibility","actor","payload","createdAt","reactions"],"additionalProperties":false},"PublicReviewActivityAttachmentDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string"},"thumbnailUrl":{"nullable":true,"type":"string"},"type":{"type":"string","enum":["image"]},"mimeType":{"type":"string"},"filename":{"type":"string"},"sizeBytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"width":{"nullable":true,"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"height":{"nullable":true,"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["id","url","thumbnailUrl","type","mimeType","filename","sizeBytes"],"additionalProperties":false},"UpdateReviewDto":{"type":"object","properties":{"label":{"nullable":true,"type":"string"},"expiresAt":{"nullable":true,"type":"string"},"inviteNote":{"nullable":true,"type":"string"},"expectedConfigRevision":{"type":"integer","minimum":1,"maximum":9007199254740991}},"required":["expectedConfigRevision"],"additionalProperties":false},"PublicReviewConfigRevisionDto":{"type":"object","properties":{"configRevision":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["configRevision"],"additionalProperties":false},"ReplaceReviewStagesDto":{"type":"object","properties":{"expectedConfigRevision":{"type":"integer","minimum":1,"maximum":9007199254740991},"stages":{"type":"array","items":{"type":"object","properties":{"id":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string","enum":["team","client"]},"rule":{"type":"string","enum":["any","all"]},"inOrder":{"nullable":true,"type":"boolean"},"deadlineDays":{"nullable":true,"type":"integer","minimum":1,"maximum":30},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"userId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"nullable":true,"type":"string"},"email":{"nullable":true,"format":"email","type":"string"}}}}},"required":["kind","rule","deadlineDays","participants"]}}},"required":["expectedConfigRevision","stages"]},"PublicReviewStagesReplacedDto":{"type":"object","properties":{"configRevision":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"changed":{"type":"boolean"}},"required":["configRevision","changed"],"additionalProperties":false},"PublicGenericResultDto":{"type":"object","properties":{"success":{"example":true,"type":"boolean","enum":[true]},"message":{"type":"string"},"status":{"type":"string"}},"required":["success"],"additionalProperties":false},"RemindReviewDto":{"type":"object","properties":{"itemIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}}},"AddReviewItemDto":{"type":"object","properties":{"contentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["contentId"]},"PublicReviewItemAddedDto":{"type":"object","properties":{"itemId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["itemId"],"additionalProperties":false},"BulkReviewDecisionItemDto":{"type":"object","properties":{"decision":{"type":"string","enum":["approved","changes_requested"]},"reason":{"nullable":true,"maxLength":2000,"type":"string"},"expectedVersionId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"expectedStageId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"expectedConfigRevision":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"mutationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"itemId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["decision","expectedVersionId","expectedConfigRevision","mutationId","itemId"],"additionalProperties":false},"BulkReviewDecisionDto":{"type":"object","properties":{"decisions":{"minItems":1,"type":"array","items":{"$ref":"#/components/schemas/BulkReviewDecisionItemDto"}}},"required":["decisions"],"additionalProperties":false},"PublicReviewDecisionResultDto":{"type":"object","properties":{"decisionId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"itemId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"itemStatus":{"type":"string","enum":["pending","approved","changes_requested","overridden","cancelled"]},"currentStageId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"reviewStatus":{"$ref":"#/components/schemas/ReviewStatus"}},"required":["decisionId","itemId","itemStatus","currentStageId","reviewStatus"],"additionalProperties":false},"ReviewDecisionDto":{"type":"object","properties":{"decision":{"type":"string","enum":["approved","changes_requested"]},"reason":{"nullable":true,"maxLength":2000,"type":"string"},"expectedVersionId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"expectedStageId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"expectedConfigRevision":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"mutationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["decision","expectedVersionId","expectedConfigRevision","mutationId"]},"ReviewOverrideDto":{"type":"object","properties":{"reason":{"maxLength":2000,"type":"string"},"expectedVersionId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"expectedStageId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"expectedConfigRevision":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"mutationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["reason","expectedVersionId","expectedConfigRevision","mutationId"]},"PublicReviewDecisionIdDto":{"type":"object","properties":{"decisionId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["decisionId"],"additionalProperties":false},"ReviewRevokeDto":{"type":"object","properties":{"decisionId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"reason":{"nullable":true,"maxLength":2000,"type":"string"},"requestChanges":{"nullable":true,"type":"boolean"},"expectedVersionId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"expectedStageId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"expectedConfigRevision":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"mutationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["decisionId","expectedVersionId","expectedConfigRevision","mutationId"]},"ReviewCommentDto":{"type":"object","properties":{"reviewItemId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"expectedVersionId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"audience":{"type":"string","enum":["team","client"]},"body":{"nullable":true,"maxLength":2000,"type":"string"},"attachmentId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["reviewItemId","expectedVersionId","audience"]},"PublicReviewCommentCreatedDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id"],"additionalProperties":false},"ReviewReactionDto":{"type":"object","properties":{"emoji":{"type":"string","enum":["👍","❤️","😂","🎉","👀"]}},"required":["emoji"]},"InitApprovalAttachmentUploadDto":{"type":"object","properties":{"contentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"reviewId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"reviewItemId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"expectedVersionId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"audience":{"type":"string","enum":["team","client"]},"filename":{"maxLength":255,"type":"string","minLength":1},"contentType":{"type":"string","enum":["image/jpeg","image/png","image/gif","image/webp"]},"fileSize":{"type":"integer","minimum":1,"maximum":9007199254740991}},"required":["contentId","reviewId","reviewItemId","expectedVersionId","audience","filename","contentType","fileSize"],"additionalProperties":false},"PublicReviewAttachmentUploadDto":{"type":"object","properties":{"attachmentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"uploadUrl":{"type":"string"},"expiresIn":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["attachmentId","uploadUrl","expiresIn"],"additionalProperties":false},"ResolvePublishingResultDto":{"type":"object","properties":{"outcome":{"type":"string","enum":["published","not_published"]},"permalink":{"nullable":true,"format":"uri","maxLength":2048,"type":"string"},"platformPostId":{"nullable":true,"maxLength":512,"type":"string"}},"required":["outcome"],"additionalProperties":false},"PublicPublishingResultResolutionDto":{"type":"object","properties":{"contentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","enum":["sent","failed"]},"publishingState":{"$ref":"#/components/schemas/PublicPublishingStateDto"}},"required":["contentId","status","publishingState"],"additionalProperties":false},"PublicCancelRecurringOccurrenceDto":{"type":"object","properties":{},"additionalProperties":false},"PublicRecurringOccurrenceCancelResultDto":{"type":"object","properties":{"occurrenceId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"seriesId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"seriesVersion":{"type":"number"},"occurrenceStatus":{"type":"string"},"rootContentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"rootPostId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"scheduledAt":{"type":"string"},"localDate":{"example":"2026-07-09","type":"string"},"localTime":{"example":"09:30","type":"string"},"timezone":{"example":"Australia/Melbourne","type":"string"},"isDetached":{"type":"boolean"},"detachedReason":{"nullable":true,"type":"string"}},"required":["occurrenceId","seriesId","seriesVersion","occurrenceStatus","rootContentId","rootPostId","scheduledAt","localDate","localTime","timezone","isDetached","detachedReason"],"additionalProperties":false},"PublicCancelRecurringSeriesDto":{"type":"object","properties":{"scope":{"description":"Only future-scope cancellation is supported.","type":"string","enum":["future"]},"effectiveOccurrenceId":{"description":"Occurrence the cancellation takes effect from. This occurrence and everything after it is cancelled.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"expectedVersion":{"description":"Optimistic concurrency check. Fails if the series version has moved on.","type":"integer","minimum":1,"maximum":9007199254740991}},"required":["scope","effectiveOccurrenceId"],"additionalProperties":false},"PublicRecurringSeriesCancelResultDto":{"type":"object","properties":{"seriesId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","enum":["cancelled"]},"cancelledOccurrenceIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}},"required":["seriesId","status","cancelledOccurrenceIds"],"additionalProperties":false},"InitUploadDto":{"type":"object","properties":{"filename":{"maxLength":255,"type":"string","minLength":1,"pattern":"\\S"},"contentType":{"type":"string","enum":["image/jpeg","image/png","image/gif","image/webp","image/avif","video/mp4","video/quicktime","application/pdf","application/vnd.ms-powerpoint","application/vnd.openxmlformats-officedocument.presentationml.presentation","application/msword","application/vnd.openxmlformats-officedocument.wordprocessingml.document"]},"fileSize":{"type":"integer","minimum":1,"maximum":9007199254740991}},"required":["filename","contentType","fileSize"],"additionalProperties":false},"PublicMediaUploadSessionDto":{"type":"object","properties":{"sessionId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"uploadUrl":{"type":"string"},"expiresIn":{"type":"number"}},"required":["sessionId","uploadUrl","expiresIn"],"additionalProperties":false},"CompleteUploadBodyDto":{"type":"object","properties":{"thumbnailBase64":{"nullable":true,"maxLength":699052,"type":"string"},"folderId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"width":{"nullable":true,"type":"integer","minimum":1,"maximum":9007199254740991},"height":{"nullable":true,"type":"integer","minimum":1,"maximum":9007199254740991},"durationSeconds":{"nullable":true,"type":"integer","minimum":1,"maximum":9007199254740991}},"additionalProperties":false},"PublicMediaUploadCompleteDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string"},"thumbnailUrl":{"nullable":true,"type":"string"},"folderId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"width":{"type":"number"},"height":{"type":"number"},"durationSeconds":{"nullable":true,"type":"number"}},"required":["id","url","thumbnailUrl","folderId","width","height","durationSeconds"],"additionalProperties":false},"PublicMediaListItemDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string"},"thumbnailUrl":{"nullable":true,"type":"string"},"type":{"type":"string"},"filename":{"type":"string"},"altText":{"nullable":true,"type":"string"},"notes":{"nullable":true,"type":"string"},"fileSize":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"},"durationSeconds":{"nullable":true,"type":"number"},"folderId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"isFavorite":{"type":"boolean"},"isArchived":{"type":"boolean"},"deletedAt":{"description":"Set when the item is in the media Bin.","nullable":true,"type":"string"},"deleteAfter":{"description":"Scheduled permanent deletion time for Bin items.","nullable":true,"type":"string"},"usageCount":{"type":"number"},"labels":{"description":"Workspace labels attached to this media item.","type":"array","items":{"$ref":"#/components/schemas/PublicMediaLabelDto"}},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","url","thumbnailUrl","type","filename","altText","notes","fileSize","width","height","durationSeconds","folderId","isFavorite","isArchived","deletedAt","deleteAfter","usageCount","labels","createdAt","updatedAt"],"additionalProperties":false},"PublicMediaLabelDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"color":{"nullable":true,"type":"string"},"groupId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"archivedAt":{"nullable":true,"type":"string"},"mergedIntoLabelId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mergedAt":{"nullable":true,"type":"string"},"mergedByUserId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","name","color","createdAt","updatedAt"],"additionalProperties":false},"CursorPaginationMetaDto":{"type":"object","properties":{"limit":{"example":50,"type":"number"},"hasMore":{"example":true,"type":"boolean"},"nextCursor":{"example":"next-cursor-token","nullable":true,"type":"string"}},"required":["limit","hasMore","nextCursor"],"additionalProperties":false},"CreateFolderDto":{"type":"object","properties":{"name":{"maxLength":255,"type":"string","minLength":1,"pattern":"\\S"},"parentId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["name"],"additionalProperties":false},"PublicMediaFolderDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"parentId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"parent":{"allOf":[{"$ref":"#/components/schemas/PublicMediaFolderDto"}]},"children":{"type":"array","items":{"$ref":"#/components/schemas/PublicMediaFolderDto"}},"childrenPagination":{"allOf":[{"$ref":"#/components/schemas/PublicMediaFolderChildrenPaginationDto"}]}},"required":["id","name","parentId","createdAt","updatedAt"],"additionalProperties":false},"PublicMediaFolderChildrenPaginationDto":{"type":"object","properties":{"limit":{"example":50,"type":"number"},"hasMore":{"example":true,"type":"boolean"},"nextCursor":{"example":"next-cursor-token","nullable":true,"type":"string"}},"required":["limit","hasMore","nextCursor"],"additionalProperties":false},"UpdateFolderDto":{"type":"object","properties":{"name":{"maxLength":255,"type":"string","minLength":1,"pattern":"\\S"}},"required":["name"],"additionalProperties":false},"MoveFolderDto":{"type":"object","properties":{"parentId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"additionalProperties":false},"PublicMediaMutationSuccessDto":{"type":"object","properties":{"success":{"example":true,"type":"boolean","enum":[true]},"deleted":{"type":"number"},"deleteAfter":{"description":"Scheduled permanent deletion time for Bin mutations.","nullable":true,"type":"string"},"restored":{"type":"number"},"moved":{"type":"number"},"labeled":{"type":"number"},"unlabeled":{"type":"number"},"deletedLabels":{"type":"number"},"ungroupedLabels":{"type":"number"}},"required":["success"],"additionalProperties":false},"CreateLabelDto":{"type":"object","properties":{"name":{"maxLength":50,"type":"string","minLength":1,"pattern":"\\S"},"color":{"nullable":true,"pattern":"^(?:#?(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8}))$","type":"string"},"groupId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"source":{"nullable":true,"type":"string","enum":["labels","media_room","workbench","strategy","picker","inspiration","hashtags","public_api","mcp","unknown"]}},"required":["name"],"additionalProperties":false},"PublicMediaLabelUsageDto":{"type":"object","properties":{"labelId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mediaCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"contentCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"workbenchItemCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"totalUsageCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["labelId","mediaCount","contentCount","workbenchItemCount","totalUsageCount"],"additionalProperties":false},"PublicMediaLabelHealthDto":{"type":"object","properties":{"labelsWithoutUsage":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"}},"required":["id","name"],"additionalProperties":false}},"deletedLabelsStillInUse":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"usage":{"$ref":"#/components/schemas/PublicMediaLabelUsageDto"}},"required":["id","name","usage"],"additionalProperties":false}},"mergedLabelsStillReferenced":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"mergedIntoLabelId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"usage":{"$ref":"#/components/schemas/PublicMediaLabelUsageDto"}},"required":["id","name","mergedIntoLabelId","usage"],"additionalProperties":false}},"ungroupedLabelCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"labelGroupsWithoutLabels":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"}},"required":["id","name"],"additionalProperties":false}}},"required":["labelsWithoutUsage","deletedLabelsStillInUse","mergedLabelsStillReferenced","ungroupedLabelCount","labelGroupsWithoutLabels"],"additionalProperties":false},"UpdateLabelDto":{"type":"object","properties":{"name":{"maxLength":50,"type":"string","minLength":1,"pattern":"\\S"},"color":{"nullable":true,"pattern":"^(?:#?(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8}))$","type":"string"},"groupId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"additionalProperties":false},"MergeLabelsDto":{"type":"object","properties":{"targetLabelId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["targetLabelId"],"additionalProperties":false},"CreateLabelGroupDto":{"type":"object","properties":{"name":{"maxLength":100,"type":"string","minLength":1,"pattern":"\\S"},"color":{"nullable":true,"pattern":"^(?:#?(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8}))$","type":"string"},"sortOrder":{"nullable":true,"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"source":{"nullable":true,"type":"string","enum":["labels","media_room","workbench","strategy","picker","inspiration","hashtags","public_api","mcp","unknown"]}},"required":["name"],"additionalProperties":false},"PublicLabelGroupDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"color":{"nullable":true,"type":"string"},"sortOrder":{"type":"number"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","name","color","sortOrder","createdAt","updatedAt"],"additionalProperties":false},"ReorderLabelGroupsDto":{"type":"object","properties":{"groupIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},"required":["groupIds"],"additionalProperties":false},"MoveLabelsToGroupDto":{"type":"object","properties":{"labelIds":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},"required":["labelIds"],"additionalProperties":false},"PublicLabelGroupMoveResultDto":{"type":"object","properties":{"success":{"example":true,"type":"boolean","enum":[true]},"moved":{"description":"Labels moved.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["success","moved"],"additionalProperties":false},"UpdateLabelGroupDto":{"type":"object","properties":{"name":{"maxLength":100,"type":"string","minLength":1,"pattern":"\\S"},"color":{"nullable":true,"pattern":"^(?:#?(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8}))$","type":"string"},"sortOrder":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"additionalProperties":false},"DeleteLabelGroupDto":{"type":"object","properties":{"mode":{"type":"string","enum":["delete-labels","ungroup-labels"]}},"required":["mode"],"additionalProperties":false},"BulkMediaIdsDto":{"type":"object","properties":{"mediaIds":{"uniqueItems":true,"minItems":1,"maxItems":100,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},"required":["mediaIds"],"additionalProperties":false},"BulkMoveDto":{"type":"object","properties":{"mediaIds":{"uniqueItems":true,"minItems":1,"maxItems":100,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"folderId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["mediaIds"],"additionalProperties":false},"BulkLabelDto":{"type":"object","properties":{"mediaIds":{"uniqueItems":true,"minItems":1,"maxItems":100,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"labelIds":{"nullable":true,"minItems":1,"maxItems":50,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},"required":["mediaIds"],"additionalProperties":false},"PublicMediaUsageHistoryItemDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"action":{"type":"string"},"resourceType":{"type":"string"},"resourceId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"contentId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"contentParentId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"contentStatus":{"nullable":true,"type":"string"},"scheduledAt":{"nullable":true,"type":"string"},"sentAt":{"nullable":true,"type":"string"},"archivedAt":{"nullable":true,"type":"string"},"gridPlanItemId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"source":{"nullable":true,"type":"string"},"actorUser":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicMediaUsageActorDto"}]},"mediaOrder":{"nullable":true,"type":"number"},"display":{"$ref":"#/components/schemas/PublicMediaUsageDisplayDto"},"createdAt":{"type":"string"}},"required":["id","action","resourceType","resourceId","contentId","contentParentId","contentStatus","scheduledAt","sentAt","archivedAt","gridPlanItemId","source","actorUser","mediaOrder","display","createdAt"],"additionalProperties":false},"PublicMediaUsageActorDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"nullable":true,"type":"string"}},"required":["id","name"],"additionalProperties":false},"PublicMediaUsageDisplayDto":{"type":"object","properties":{"title":{"type":"string"},"subtitle":{"nullable":true,"type":"string"},"platform":{"nullable":true,"type":"string"}},"required":["title"],"additionalProperties":false},"PublicMediaPresignedUrlDto":{"type":"object","properties":{"url":{"type":"string"},"expiresIn":{"type":"number"}},"required":["url"],"additionalProperties":false},"UpdateMediaDto":{"type":"object","properties":{"filename":{"maxLength":255,"type":"string","pattern":"\\S"},"altText":{"nullable":true,"maxLength":500,"type":"string"},"notes":{"nullable":true,"maxLength":2000,"type":"string"},"isFavorite":{"type":"boolean"},"folderId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"additionalProperties":false},"AttachLabelsDto":{"type":"object","properties":{"labelIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},"additionalProperties":false},"DetachLabelsDto":{"type":"object","properties":{"labelIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},"additionalProperties":false},"PublicMediaAudioInspectionDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"hasAudio":{"nullable":true,"type":"boolean"},"durationSeconds":{"nullable":true,"type":"number"},"videoCodec":{"nullable":true,"type":"string"},"videoBitrate":{"nullable":true,"type":"number"},"videoFrameRate":{"nullable":true,"type":"number"},"inspected":{"type":"boolean"}},"required":["id","hasAudio","durationSeconds","videoCodec","videoBitrate","videoFrameRate","inspected"],"additionalProperties":false},"PublicIntegrationListItemDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"platform":{"type":"string"},"username":{"nullable":true,"type":"string"},"name":{"nullable":true,"type":"string"},"displayName":{"nullable":true,"type":"string"},"status":{"type":"string","enum":["connected","requires_reauth","disabled","auth_incomplete"]}},"required":["id","platform","username","name","displayName","status"],"additionalProperties":false},"PublicIntegrationCapabilitiesDto":{"type":"object","properties":{"integration":{"$ref":"#/components/schemas/PublicIntegrationListItemDto"},"content":{"type":"object","properties":{"postTypes":{"type":"array","items":{"type":"string"}},"mediaTypes":{"type":"array","items":{"type":"string"}},"maxMedia":{"type":"number"},"supportsThreads":{"type":"boolean"},"maxThreadMessages":{"type":"number"},"maxThreadMedia":{"type":"number"},"requiresMedia":{"type":"boolean"},"requiresTitle":{"type":"boolean"},"canPublishArticles":{"type":"boolean"}},"required":["postTypes","mediaTypes","maxMedia","supportsThreads","maxThreadMessages","maxThreadMedia","requiresMedia","requiresTitle"],"additionalProperties":false},"rules":{"type":"string"},"settings":{"type":"object","properties":{"fields":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"type":{"type":"string"},"required":{"type":"boolean"},"description":{"type":"string"},"enum":{"type":"array","items":{"type":"string"}},"optionKey":{"type":"string"},"min":{"type":"number"},"max":{"type":"number"}},"required":["key","type","description"],"additionalProperties":false}}},"required":["fields"],"additionalProperties":false},"options":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"description":{"type":"string"},"input":{"type":"object","additionalProperties":{"type":"string"}}},"required":["key","description"],"additionalProperties":false}},"capabilities":{"type":"object","properties":{"canSearchLocations":{"type":"boolean"},"canInviteCollaborators":{"type":"boolean"},"canTagProducts":{"type":"boolean"},"inboxEnabled":{"type":"boolean"},"supportsInboxComments":{"type":"boolean"},"canManageInboxComments":{"type":"boolean"},"supportsInboxMentions":{"type":"boolean"},"canLikeComments":{"type":"boolean"},"canPublishFirstComment":{"type":"boolean"},"canMentionLinkedInPeople":{"type":"boolean"}},"required":["canSearchLocations","canInviteCollaborators","canTagProducts","inboxEnabled","supportsInboxComments","canManageInboxComments","supportsInboxMentions","canLikeComments","canPublishFirstComment","canMentionLinkedInPeople"],"additionalProperties":false}},"required":["integration","content","rules","settings","options","capabilities"],"additionalProperties":false},"PublicPinterestCreateBoardDto":{"type":"object","properties":{"name":{"type":"string","minLength":1},"privacy":{"nullable":true,"type":"string","enum":["PUBLIC","SECRET"]}},"required":["name"],"additionalProperties":false},"PublicIntegrationOptionsBodyDto":{"type":"object","properties":{"countryCode":{"nullable":true,"type":"string","pattern":"^[A-Za-z]{2}$"},"genre":{"nullable":true,"maxLength":128,"type":"string"},"dateRange":{"nullable":true,"type":"string","enum":["1DAY","7DAY","30DAY","90DAY"]},"regionCode":{"nullable":true,"maxLength":2,"type":"string"},"query":{"nullable":true,"maxLength":255,"type":"string"},"catalogId":{"nullable":true,"maxLength":255,"type":"string"},"audioType":{"nullable":true,"type":"string","enum":["music","original_sound"]}},"additionalProperties":false},"PublicIntegrationOptionsResponseDto":{"anyOf":[{"description":"pinterest-boards","type":"object","properties":{"boards":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"privacy":{"type":"string"}},"required":["id","name","privacy"],"additionalProperties":false}}},"required":["boards"],"additionalProperties":false},{"description":"youtube-video-categories","type":"object","properties":{"categories":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"}},"required":["id","title"],"additionalProperties":false}}},"required":["categories"],"additionalProperties":false},{"description":"tiktok-creator-info","type":"object","properties":{"creatorInfo":{"type":"object","properties":{"privacyLevelOptions":{"type":"array","items":{"type":"string","enum":["PUBLIC_TO_EVERYONE","MUTUAL_FOLLOW_FRIENDS","FOLLOWER_OF_CREATOR","SELF_ONLY"]}},"commentDisabled":{"type":"boolean"},"duetDisabled":{"type":"boolean"},"stitchDisabled":{"type":"boolean"},"maxVideoPostDurationSec":{"nullable":true,"type":"number"},"creatorNickname":{"nullable":true,"type":"string"},"creatorUsername":{"nullable":true,"type":"string"},"creatorAvatarUrl":{"nullable":true,"type":"string"},"isAudited":{"type":"boolean"},"canDirectPost":{"type":"boolean"}},"required":["privacyLevelOptions","commentDisabled","duetDisabled","stitchDisabled","maxVideoPostDurationSec","creatorNickname","creatorUsername","creatorAvatarUrl","isAudited","canDirectPost"],"additionalProperties":false}},"required":["creatorInfo"],"additionalProperties":false},{"description":"tiktok-cml-tracks","type":"object","properties":{"tracks":{"type":"array","items":{"type":"object","properties":{"commercialMusicId":{"type":"string"},"name":{"type":"string"},"artist":{"type":"string"},"durationSeconds":{"nullable":true,"type":"number"},"thumbnailUrl":{"nullable":true,"type":"string"},"previewUrl":{"nullable":true,"type":"string"},"genres":{"type":"array","items":{"type":"string"}},"rankPosition":{"nullable":true,"type":"number"},"rankDelta":{"nullable":true,"type":"number"},"fullDurationSongClip":{"nullable":true,"type":"object","properties":{"songClipId":{"nullable":true,"type":"string"},"previewUrl":{"nullable":true,"type":"string"},"durationSeconds":{"nullable":true,"type":"number"}},"required":["songClipId","previewUrl","durationSeconds"],"additionalProperties":false},"trendingSongClip":{"nullable":true,"type":"object","properties":{"songClipId":{"nullable":true,"type":"string"},"previewUrl":{"nullable":true,"type":"string"},"durationSeconds":{"nullable":true,"type":"number"}},"required":["songClipId","previewUrl","durationSeconds"],"additionalProperties":false}},"required":["commercialMusicId","name","artist","durationSeconds","thumbnailUrl","previewUrl","genres","rankPosition","rankDelta","fullDurationSongClip","trendingSongClip"],"additionalProperties":false}},"countryCode":{"type":"string"},"genre":{"type":"string","enum":["ALL","ROCK","POP","LATIN","METAL","ELECTRONIC","HIP_HOP/RAP","ALTERNATIVE/INDIE","FOLK","R&B/SOUL","COUNTRY","CLASSICAL","JAZZ","REGGAE","CHILDHOOD","BLUES","EASY_LISTENING","NEW_AGE","WORLD_MUSIC","EXPERIMENTAL","DEVOTIONAL","CHINESE_TRADITION","8_BIT","A_CAPPELLA","AFRO-POP","ALTERNATIVE_HIP_HOP","ALTERNATIVE_ROCK","AMBIENT","ARABIC_POP","BASS_HOUSE","BGM","BOOMBAP","BOSSA_NOVA","BRAZILIAN_FUNK_STYLE","BUDDHIST_MUSIC","CANTOPOP","CELTIC_POP","CHAMBER_MUSIC","CHILL_BEATS","CHILLOUT","CHINESE_FOLK","CHINESE_OPERA","CHINESE_POP","CHINESE_STYLE","CHINOISERIE_ELECTRONIC","CHINOISERIE_RAP","CHRISTIAN_MUSIC","CONTEMPORARY_R&B","COUNTRY_POP","DANCE_POP","DISCO","DJ","DRUM&BASS","DUBSTEP","EDM","EDM_TRAP","ELECTRO_POP","EPIC","FOLK_POP","FUNK","FUTURE_BASS","GOSPEL","GUFENG_MUSIC","HARD_ROCK","HIP_HOUSE","HOLIDAY_MUSIC","HOUSE","INDIAN_POP","INDIE_FOLK","INDIE_POP","INDIE_ROCK","INSTRUMENTAL_HIP_HOP","INSTRUMENTAL_ROCK","IRISH_FOLK","J_ROCK","JAPANESE_TRADITIONAL_MUSIC","JAZZ_FUSION","JAZZ_HIP_HOP","JAZZ_POP","J-POP","K-POP","LATIN_POP","LO-FI","MC","NOISE","OLD_SCHOOL","OTHERS","POP_RAP","POP_ROCK","POP_SOUL","PSYCHEDELIC_ROCK","PUNK","R&B_RAP","REGGAETON","RUSSIAN_POP","SERTANEJO","SON_CUBANO","SOUL","SOUNDTRACK","SYMPHONY","SYNTH_POP","TANGO","TECHNO","TEEN_POP","TRADITIONAL_CHINESE_FOLK","TRANCE","TRAP_RAP","TRIP_HOP","TROPICAL_HOUSE","TURKISH_POP"]},"dateRange":{"type":"string","enum":["1DAY","7DAY","30DAY","90DAY"]}},"required":["tracks","countryCode","genre","dateRange"],"additionalProperties":false},{"description":"locations","type":"object","properties":{"locations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"address":{"type":"string"},"latitude":{"type":"number"},"longitude":{"type":"number"}},"required":["id","name","address"],"additionalProperties":false}}},"required":["locations"],"additionalProperties":false},{"description":"instagram-collaborators","type":"object","properties":{"user":{"type":"object","properties":{"id":{"type":"string"},"username":{"type":"string"},"name":{"type":"string"},"thumbnailUrl":{"type":"string"}},"required":["id","username","name","thumbnailUrl"],"additionalProperties":false}},"required":["user"],"additionalProperties":false},{"description":"instagram-audio","type":"object","properties":{"audio":{"type":"array","items":{"type":"object","properties":{"audio_id":{"type":"string"},"cover_artwork_thumbnail_uri":{"nullable":true,"type":"string"},"cover_artwork_thumbnail_url":{"nullable":true,"type":"string"},"display_artist":{"nullable":true,"type":"string"},"duration_in_ms":{"nullable":true,"type":"number"},"audio_type":{"type":"string"},"title":{"nullable":true,"type":"string"},"download_url":{"nullable":true,"type":"string"},"ig_username":{"nullable":true,"type":"string"},"profile_picture_url":{"nullable":true,"type":"string"},"is_ads_eligible":{"nullable":true,"type":"boolean"},"on_platform_audio_preview_link":{"nullable":true,"type":"string"}},"required":["audio_id"],"additionalProperties":{}}},"paging":{}},"required":["audio"],"additionalProperties":false}]},"PublicWorkspaceDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"slug":{"description":"URL slug for the workspace. Unique within its organization. Use `id` for API workspace context.","type":"string"},"organizationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"organizationName":{"description":"Name of the organization that owns this workspace.","type":"string"},"organizationSlug":{"description":"URL slug of the organization that owns this workspace.","type":"string"},"role":{"description":"Effective workspace role returned to clients.","example":"manager","allOf":[{"$ref":"#/components/schemas/AssignableWorkspaceRole"}]},"timezone":{"example":"Australia/Melbourne","description":"IANA timezone of the workspace. Scheduling and local-day grouping use this calendar.","type":"string"}},"required":["id","name","slug","organizationId","organizationName","organizationSlug","role","timezone"],"additionalProperties":false},"AssignableWorkspaceRole":{"description":"Effective workspace role returned to clients.","type":"string","enum":["manager","editor","creator","viewer"]},"PublicWorkspaceMemberDto":{"type":"object","properties":{"id":{"description":"User id. Use as an approver id when requesting review.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"displayName":{"description":"Display name, falling back to the email address when none is set.","type":"string"},"email":{"type":"string"},"avatarUrl":{"nullable":true,"type":"string"},"role":{"description":"Effective workspace role. Organization owners and admins appear as manager.","example":"editor","allOf":[{"$ref":"#/components/schemas/WorkspaceRole"}]}},"required":["id","displayName","email","avatarUrl","role"],"additionalProperties":false},"WorkspaceRole":{"description":"Effective workspace role. Organization owners and admins appear as manager.","type":"string","enum":["manager","editor","creator","viewer"]},"CreateWorkbenchPageDto":{"type":"object","properties":{"templateVersionId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"spaceId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"folderId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"title":{"maxLength":255,"type":"string","minLength":1},"visibility":{"nullable":true,"type":"string","enum":["internal","private"]}},"required":["templateVersionId"],"additionalProperties":false},"WorkbenchReorderEntryDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"sortOrder":{"type":"integer","minimum":0,"maximum":9007199254740991},"expectedVersion":{"type":"string","minLength":1}},"required":["id","sortOrder","expectedVersion"],"additionalProperties":false},"WorkbenchReorderDto":{"type":"object","properties":{"entries":{"minItems":1,"maxItems":200,"type":"array","items":{"$ref":"#/components/schemas/WorkbenchReorderEntryDto"}}},"required":["entries"],"additionalProperties":false},"UpdateWorkbenchPageDto":{"type":"object","properties":{"expectedVersion":{"type":"string","minLength":1},"title":{"maxLength":255,"type":"string"},"description":{"nullable":true,"maxLength":2000,"type":"string"},"visibility":{"type":"string","enum":["internal","private"]},"spaceId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"folderId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["expectedVersion"],"additionalProperties":false},"WorkbenchExpectedVersionDto":{"type":"object","properties":{"expectedVersion":{"type":"string","minLength":1}},"required":["expectedVersion"],"additionalProperties":false},"ReplaceWorkbenchDocumentBodyDto":{"type":"object","properties":{"bodyHtml":{"type":"string"},"expectedDocumentVersion":{"type":"string","minLength":1}},"required":["bodyHtml","expectedDocumentVersion"],"additionalProperties":false},"CreateWorkbenchSpaceDto":{"type":"object","properties":{"name":{"maxLength":120,"type":"string","minLength":1}},"required":["name"],"additionalProperties":false},"UpdateWorkbenchSpaceDto":{"type":"object","properties":{"expectedVersion":{"type":"string","minLength":1},"name":{"maxLength":120,"type":"string","minLength":1}},"required":["expectedVersion","name"],"additionalProperties":false},"CreateWorkbenchFolderDto":{"type":"object","properties":{"name":{"maxLength":120,"type":"string","minLength":1},"spaceId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"visibility":{"nullable":true,"type":"string","enum":["internal","private"]},"memberUserIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}},"required":["name"],"additionalProperties":false},"UpdateWorkbenchFolderDto":{"type":"object","properties":{"expectedVersion":{"type":"string","minLength":1},"name":{"maxLength":120,"type":"string","minLength":1},"spaceId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"visibility":{"nullable":true,"type":"string","enum":["internal","private"]},"memberUserIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}},"required":["expectedVersion"],"additionalProperties":false},"ReplaceWorkbenchContentTableConfigDto":{"type":"object","properties":{"expectedVersion":{"type":"string","minLength":1},"config":{"description":"Full semantic validation is owned by the version-2 config validator.","type":"object","additionalProperties":{}}},"required":["expectedVersion","config"],"additionalProperties":false},"CreateWorkbenchPlacementDto":{"type":"object","properties":{"postId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"draft":{"nullable":true,"type":"object","additionalProperties":{}},"sortOrder":{"type":"integer","minimum":0,"maximum":9007199254740991}},"additionalProperties":false},"UpdateWorkbenchPlacementCellsDto":{"type":"object","properties":{"expectedVersion":{"type":"string","minLength":1},"cellsVersion":{"type":"number","enum":[1]},"cells":{"description":"The complete custom-cell map; per-cell rules are config-driven.","type":"object","additionalProperties":{}}},"required":["expectedVersion","cellsVersion","cells"],"additionalProperties":false},"MoveWorkbenchPlacementDto":{"type":"object","properties":{"destinationPageId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"expectedVersion":{"type":"string","minLength":1}},"required":["destinationPageId","expectedVersion"],"additionalProperties":false},"PublicWorkbenchContentBoardConfigDto":{"type":"object","properties":{"id":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"settings":{"type":"object","additionalProperties":{}},"createdAt":{"nullable":true,"type":"string"},"updatedAt":{"nullable":true,"type":"string"}},"required":["id","settings","createdAt","updatedAt"],"additionalProperties":false},"UpdateWorkbenchContentBoardConfigSettingsDto":{"type":"object","properties":{"version":{"type":"number","enum":[3]},"hiddenColumnIds":{"type":"array","items":{"type":"string","enum":["idea","drafting","review","scheduled","published"]}},"publishedWindowDays":{"nullable":true,"type":"number","enum":[7,30,90]}},"required":["version","hiddenColumnIds"],"additionalProperties":false},"UpdateWorkbenchContentBoardConfigDto":{"type":"object","properties":{"settings":{"$ref":"#/components/schemas/UpdateWorkbenchContentBoardConfigSettingsDto"}},"required":["settings"],"additionalProperties":false},"PublicLabelDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"color":{"nullable":true,"type":"string"},"groupId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mergedIntoLabelId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mergedAt":{"nullable":true,"type":"string"},"mergedByUserId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","name","color","createdAt","updatedAt"],"additionalProperties":false},"PublicPillarDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"color":{"nullable":true,"type":"string"},"description":{"nullable":true,"type":"string"},"sortOrder":{"type":"number"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","name","color","sortOrder","createdAt","updatedAt"],"additionalProperties":false},"PublicFormatDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"color":{"nullable":true,"type":"string"},"description":{"nullable":true,"type":"string"},"sortOrder":{"type":"number"},"isSeeded":{"type":"boolean"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","name","color","sortOrder","createdAt","updatedAt"],"additionalProperties":false},"BoostTargetingDto":{"type":"object","properties":{"countries":{"default":["US"],"uniqueItems":true,"minItems":1,"maxItems":25,"type":"array","items":{"type":"string","pattern":"^[A-Za-z]{2}$"}},"ageMin":{"default":18,"type":"integer","minimum":18,"maximum":65},"ageMax":{"default":65,"type":"integer","minimum":18,"maximum":65},"genders":{"default":[0],"nullable":true,"uniqueItems":true,"maxItems":3,"type":"array","items":{"type":"number","enum":[0,1,2]}}},"additionalProperties":false},"CreateBoostDto":{"type":"object","properties":{"contentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"budgetType":{"type":"string","enum":["daily","lifetime"]},"budgetCents":{"type":"integer","minimum":100,"maximum":9007199254740991},"currency":{"nullable":true,"type":"string","pattern":"^[A-Z]{3}$"},"startDate":{"type":"string"},"endDate":{"type":"string"},"adAccountId":{"nullable":true,"type":"string"},"targeting":{"default":{"countries":["US"],"ageMin":18,"ageMax":65,"genders":[0]},"allOf":[{"$ref":"#/components/schemas/BoostTargetingDto"}]},"approvalId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["contentId","budgetType","budgetCents","startDate","endDate"],"additionalProperties":false},"PublicBoostDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"contentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"adAccountId":{"type":"string"},"budgetType":{"type":"string","enum":["daily","lifetime"]},"budgetCents":{"type":"number"},"currency":{"type":"string"},"startDate":{"type":"string"},"endDate":{"type":"string"},"targeting":{"type":"object","additionalProperties":{}},"status":{"type":"string","enum":["creating","created","active","paused","completed","error"]},"error":{"nullable":true,"type":"string"},"impressions":{"type":"number"},"reach":{"type":"number"},"spendCents":{"type":"number"},"clicks":{"type":"number"},"engagements":{"type":"number"},"frequency":{"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","contentId","integrationId","adAccountId","budgetType","budgetCents","currency","startDate","endDate","targeting","status","error","impressions","reach","spendCents","clicks","engagements","frequency","createdAt","updatedAt"],"additionalProperties":false},"PublicBoostedPostDto":{"type":"object","properties":{"contentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","enum":["active","paused"]}},"required":["contentId","status"],"additionalProperties":false},"PublicBoostAdAccountDto":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"currency":{"type":"string"}},"required":["id","name","currency"],"additionalProperties":false},"ReachEstimateDto":{"type":"object","properties":{"adAccountId":{"type":"string"},"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"targeting":{"$ref":"#/components/schemas/BoostTargetingDto"}},"required":["adAccountId","integrationId","targeting"],"additionalProperties":false},"PublicBoostReachEstimateDto":{"type":"object","properties":{"usersLowerBound":{"type":"number"},"usersUpperBound":{"type":"number"}},"required":["usersLowerBound","usersUpperBound"],"additionalProperties":false},"PublicBoostCancelDto":{"type":"object","properties":{"success":{"example":true,"type":"boolean","enum":[true]}},"required":["success"],"additionalProperties":false},"PublicAnalyticsMetricsResponseDto":{"type":"object","properties":{"metrics":{"type":"array","items":{"$ref":"#/components/schemas/PublicAnalyticsMetricDto"}},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/PublicAnalyticsWarningDto"}},"dataQuality":{"allOf":[{"$ref":"#/components/schemas/PublicAnalyticsDataQualityDto"}]}},"required":["metrics"],"additionalProperties":false},"PublicAnalyticsMetricDto":{"type":"object","properties":{"key":{"type":"string"},"label":{"type":"string"},"currentValue":{"type":"number"},"percentageChange":{"type":"number"},"history":{"type":"array","items":{"$ref":"#/components/schemas/PublicAnalyticsHistoryPointDto"}},"previousHistory":{"description":"Daily series for the comparison period that percentageChange is measured against.","type":"array","items":{"$ref":"#/components/schemas/PublicAnalyticsHistoryPointDto"}},"historyStatus":{"type":"string","enum":["available","partial","unavailable"]},"historyMessage":{"type":"string"},"valueSemantics":{"description":"lifetime: the total to date. windowed: counted within the requested period only.","type":"string","enum":["lifetime","windowed"]}},"required":["key","label","currentValue","history"],"additionalProperties":false},"PublicAnalyticsHistoryPointDto":{"type":"object","properties":{"date":{"example":"2026-04-26","type":"string"},"value":{"type":"number"}},"required":["date","value"],"additionalProperties":false},"PublicAnalyticsWarningDto":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"severity":{"type":"string","enum":["info","warning","error"]},"metadata":{"type":"object","additionalProperties":{}}},"required":["code","message","severity"],"additionalProperties":false},"PublicAnalyticsDataQualityDto":{"type":"object","properties":{"status":{"type":"string","enum":["complete","partial","stale","cached_error","refreshing"]},"lastSuccessfulFetch":{"type":"string"},"cacheAge":{"type":"number"},"missingMetrics":{"type":"array","items":{"type":"string"}}},"required":["status"],"additionalProperties":false},"PublicAnalyticsHealthDto":{"type":"object","properties":{"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"platform":{"type":"string"},"status":{"type":"string","enum":["active","partial","syncing","error","requires_reauth","auth_incomplete","disabled","unknown","unsupported"]},"requiresReauth":{"type":"boolean"},"authIncomplete":{"type":"boolean"},"disabled":{"type":"boolean"},"code":{"nullable":true,"type":"string"},"message":{"nullable":true,"type":"string"},"lastCheck":{"nullable":true,"type":"string"},"lastSuccessfulFetch":{"nullable":true,"type":"string"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/PublicAnalyticsWarningDto"}}},"required":["integrationId","platform","status","requiresReauth","authIncomplete","disabled","code","message","lastCheck","lastSuccessfulFetch","warnings"],"additionalProperties":false},"PublicAnalyticsPostsResponseDto":{"type":"object","properties":{"posts":{"type":"array","items":{"$ref":"#/components/schemas/PublicAnalyticsPostDto"}},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/PublicAnalyticsWarningDto"}},"dataQuality":{"allOf":[{"$ref":"#/components/schemas/PublicAnalyticsDataQualityDto"}]}},"required":["posts"],"additionalProperties":false},"PublicAnalyticsPostDto":{"type":"object","properties":{"id":{"type":"string"},"contentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"postId":{"description":"Root post UUID used by root-post reuse actions. contentId remains the analytics edition UUID.","nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"origin":{"description":"Canonical content origin. platform_import posts are imported reference records and cannot be reused as normal drafts.","type":"string","enum":["user_created","platform_import"]},"platformId":{"type":"string"},"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"platform":{"type":"string"},"type":{"description":"Analytics type: story for a Story, otherwise the attachment shape. A gif reports image.","type":"string","enum":["image","video","carousel","story","text"]},"postType":{"description":"Platform surface, such as post, reel, short (YouTube Short), story, document or event.","type":"string","enum":["post","reel","short","story","thread","article","poll","document","event","offer"]},"mediaFormat":{"description":"Attachment shape: text, image, gif, video, or carousel for two or more items.","type":"string","enum":["text","image","gif","video","carousel"]},"thumbnailUrl":{"type":"string"},"permalink":{"type":"string"},"caption":{"type":"string"},"postedAt":{"type":"string"},"impressions":{"type":"number"},"reach":{"type":"number"},"likes":{"type":"number"},"comments":{"type":"number"},"shares":{"type":"number"},"saves":{"type":"number"},"engagementRate":{"type":"number"},"metrics":{"type":"object","additionalProperties":{}},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/PublicAnalyticsWarningDto"}},"valueSemantics":{"description":"lifetime: the total to date. windowed: counted within the requested period only.","type":"string","enum":["lifetime","windowed"]},"allowedActions":{"description":"Conservative display hint for analytics row actions. The root-post reuse endpoint still validates the request.","allOf":[{"$ref":"#/components/schemas/PublicAnalyticsPostAllowedActionsDto"}]}},"required":["id","platformId","type","thumbnailUrl","permalink","caption","postedAt","impressions","reach","likes","comments","shares","saves","engagementRate"],"additionalProperties":false},"PublicAnalyticsPostAllowedActionsDto":{"type":"object","properties":{"canReuseAsDraft":{"type":"boolean"}},"required":["canReuseAsDraft"],"additionalProperties":false},"PublicSinglePostAnalyticsDto":{"type":"object","properties":{"impressions":{"type":"number"},"reach":{"type":"number"},"likes":{"type":"number"},"comments":{"type":"number"},"shares":{"type":"number"},"saves":{"type":"number"},"engagementRate":{"type":"number"},"metrics":{"type":"object","additionalProperties":{}},"lastFetchedAt":{"nullable":true,"type":"string"}},"required":["impressions","reach","likes","comments","shares","saves","engagementRate","metrics","lastFetchedAt"],"additionalProperties":false},"PublicAnalyticsDemographicsResponseDto":{"type":"object","properties":{"demographics":{"type":"object","additionalProperties":{}}},"required":["demographics"],"additionalProperties":false},"GenerateReportDto":{"type":"object","properties":{"startDate":{"nullable":true,"type":"string"},"endDate":{"nullable":true,"type":"string"},"integrationId":{"description":"Compatibility field for launched single-account clients. New callers should send `integrationIds`; controllers merge both forms before service calls.","nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"integrationIds":{"description":"Multi-account aggregate path. All ids must belong to the same platform; the service rejects mixed-platform requests.","nullable":true,"uniqueItems":true,"minItems":1,"maxItems":20,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"adAccountId":{"description":"Paid TikTok data is selected explicitly because advertiser accounts are deliberately separate from organic publishing integrations.","nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"adsCompare":{"nullable":true,"type":"string","enum":["none","previous_period"]},"days":{"default":30,"anyOf":[{"type":"string","enum":["all"]},{"type":"integer","minimum":1,"maximum":90}]},"titlePage":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/TitlePageOptionsDto"}]},"sections":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/SectionOptionsDto"}]},"analysis":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/AnalysisOptionsDto"}]}},"additionalProperties":false},"TitlePageOptionsDto":{"type":"object","properties":{"enabled":{"type":"boolean"},"title":{"nullable":true,"maxLength":200,"type":"string"},"description":{"nullable":true,"maxLength":1000,"type":"string"}},"required":["enabled"],"additionalProperties":false},"SectionOptionsDto":{"type":"object","properties":{"demographics":{"default":true,"nullable":true,"type":"boolean"},"topPosts":{"default":true,"nullable":true,"type":"boolean"},"labels":{"default":true,"nullable":true,"type":"boolean"},"ads":{"default":false,"nullable":true,"type":"boolean"}},"additionalProperties":false},"AnalysisOptionsDto":{"type":"object","properties":{"heading":{"description":"Section heading, defaults to \"Analysis\". Rename to taste (e.g. \"Notes\").","nullable":true,"maxLength":60,"type":"string"},"body":{"description":"The analyst's written commentary, rendered as the closing section.","nullable":true,"maxLength":2000,"type":"string"}},"additionalProperties":false},"CreateHashtagGroupDto":{"type":"object","properties":{"name":{"maxLength":100,"example":"Launch campaign","type":"string","minLength":1,"pattern":"\\S"},"content":{"example":"#launch #social","type":"string","minLength":1,"pattern":"\\S"}},"required":["name","content"],"additionalProperties":false},"PublicHashtagGroupDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"content":{"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","name","content","createdAt","updatedAt"],"additionalProperties":false},"UpdateHashtagGroupDto":{"type":"object","properties":{"name":{"maxLength":100,"example":"Launch campaign","type":"string","minLength":1,"pattern":"\\S"},"content":{"example":"#launch #social","type":"string","minLength":1,"pattern":"\\S"}},"required":["name","content"],"additionalProperties":false},"PublicInboxThreadDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"platform":{"type":"string"},"messageType":{"type":"string","enum":["comment","dm","review","mention"]},"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"accountName":{"nullable":true,"type":"string"},"accountAvatarUrl":{"nullable":true,"type":"string"},"platformPermalink":{"nullable":true,"type":"string"},"postPreviewCaption":{"nullable":true,"type":"string"},"postPreviewMediaUrl":{"nullable":true,"type":"string"},"participant":{"$ref":"#/components/schemas/PublicInboxParticipantDto"},"status":{"type":"string","enum":["open"]},"isRead":{"type":"boolean"},"isResolved":{"type":"boolean"},"resolvedAt":{"nullable":true,"type":"string"},"resolvedBy":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicInboxResolvedByDto"}]},"resolvedReason":{"nullable":true,"type":"string"},"resolvedNote":{"nullable":true,"type":"string"},"assignedTo":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicInboxResolvedByDto"}]},"lastMessageAt":{"nullable":true,"type":"string"},"messageCount":{"type":"number"},"lastMessagePreview":{"nullable":true,"type":"string"},"replyWindowExpiresAt":{"nullable":true,"type":"string"},"isReplyable":{"type":"boolean"},"capabilities":{"$ref":"#/components/schemas/PublicInboxCapabilitiesDto"},"tags":{"type":"array","items":{"$ref":"#/components/schemas/PublicInboxTagDto"}}},"required":["id","platform","messageType","integrationId","accountName","accountAvatarUrl","platformPermalink","postPreviewCaption","postPreviewMediaUrl","participant","status","isRead","isResolved","resolvedAt","resolvedBy","resolvedReason","resolvedNote","assignedTo","lastMessageAt","messageCount","lastMessagePreview","replyWindowExpiresAt","isReplyable","capabilities","tags"],"additionalProperties":false},"PublicInboxParticipantDto":{"type":"object","properties":{"name":{"nullable":true,"type":"string"},"handle":{"nullable":true,"type":"string"},"avatarUrl":{"nullable":true,"type":"string"}},"required":["name","handle","avatarUrl"],"additionalProperties":false},"PublicInboxResolvedByDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"initials":{"type":"string"}},"required":["id","name","initials"],"additionalProperties":false},"PublicInboxCapabilitiesDto":{"type":"object","properties":{"canReply":{"type":"boolean"},"canHide":{"type":"boolean"},"canDelete":{"type":"boolean"},"canAttachMedia":{"type":"boolean"}},"required":["canReply","canHide","canDelete","canAttachMedia"],"additionalProperties":false},"PublicInboxTagDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"color":{"nullable":true,"type":"string"},"sortOrder":{"type":"number"},"createdAt":{"nullable":true,"type":"string"},"updatedAt":{"nullable":true,"type":"string"}},"required":["id","name","color"],"additionalProperties":false},"PublicInboxTagsDto":{"type":"object","properties":{"tags":{"type":"array","items":{"$ref":"#/components/schemas/PublicInboxTagDto"}}},"required":["tags"],"additionalProperties":false},"CreateInboxTagDto":{"type":"object","properties":{"name":{"maxLength":50,"type":"string"},"color":{"nullable":true,"pattern":"^(?:#?(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|)$","type":"string"},"sortOrder":{"nullable":true,"type":"integer","minimum":0,"maximum":10000}},"required":["name"],"additionalProperties":false},"PublicInboxTagResultDto":{"type":"object","properties":{"tag":{"$ref":"#/components/schemas/PublicInboxTagDto"}},"required":["tag"],"additionalProperties":false},"UpdateInboxTagDto":{"type":"object","properties":{"name":{"maxLength":50,"type":"string"},"color":{"nullable":true,"pattern":"^(?:#?(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|)$","type":"string"},"sortOrder":{"type":"integer","minimum":0,"maximum":10000}},"additionalProperties":false},"ReorderInboxTagsDto":{"type":"object","properties":{"tagIds":{"maxItems":100,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},"required":["tagIds"],"additionalProperties":false},"SetThreadTagsDto":{"type":"object","properties":{"tagIds":{"maxItems":20,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},"required":["tagIds"],"additionalProperties":false},"PublicInboxThreadMessagesDto":{"type":"object","properties":{"thread":{"$ref":"#/components/schemas/PublicInboxThreadDetailDto"},"messages":{"type":"array","items":{"$ref":"#/components/schemas/PublicInboxMessageDto"}},"hasMore":{"description":"True when older messages exist beyond this page","type":"boolean"},"nextBefore":{"description":"Message id to pass as `before` for the next older page","nullable":true,"type":"string"}},"required":["thread","messages","hasMore","nextBefore"],"additionalProperties":false},"PublicInboxThreadDetailDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"platform":{"type":"string"},"messageType":{"type":"string","enum":["comment","dm","review","mention"]},"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"accountName":{"nullable":true,"type":"string"},"accountAvatarUrl":{"nullable":true,"type":"string"},"platformPermalink":{"nullable":true,"type":"string"},"postPreviewCaption":{"nullable":true,"type":"string"},"postPreviewMediaUrl":{"nullable":true,"type":"string"},"participant":{"$ref":"#/components/schemas/PublicInboxParticipantDto"},"status":{"type":"string","enum":["open"]},"isResolved":{"type":"boolean"},"resolvedAt":{"nullable":true,"type":"string"},"resolvedBy":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicInboxResolvedByDto"}]},"resolvedReason":{"nullable":true,"type":"string"},"resolvedNote":{"nullable":true,"type":"string"},"assignedTo":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicInboxResolvedByDto"}]},"replyWindowExpiresAt":{"nullable":true,"type":"string"},"isReplyable":{"type":"boolean"},"capabilities":{"$ref":"#/components/schemas/PublicInboxCapabilitiesDto"},"tags":{"type":"array","items":{"$ref":"#/components/schemas/PublicInboxTagDto"}},"relatedPost":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicInboxRelatedPostDto"}]}},"required":["id","platform","messageType","integrationId","accountName","accountAvatarUrl","platformPermalink","postPreviewCaption","postPreviewMediaUrl","participant","status","isResolved","resolvedAt","resolvedBy","resolvedReason","resolvedNote","assignedTo","replyWindowExpiresAt","isReplyable","capabilities","tags","relatedPost"],"additionalProperties":false},"PublicInboxRelatedPostDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"origin":{"description":"Canonical content origin. platform_import posts are imported reference records and cannot be reused as normal drafts.","type":"string","enum":["user_created","platform_import"]},"platformPostId":{"nullable":true,"type":"string"},"permalink":{"nullable":true,"type":"string"},"caption":{"nullable":true,"type":"string"},"sentAt":{"nullable":true,"type":"string"},"calendarAt":{"description":"Timestamp used for calendar display: sentAt for published content, scheduledAt for planned content.","nullable":true,"type":"string"},"media":{"type":"array","items":{"$ref":"#/components/schemas/PublicInboxRelatedPostMediaDto"}}},"required":["id","origin","platformPostId","permalink","caption","sentAt","calendarAt","media"],"additionalProperties":false},"PublicInboxRelatedPostMediaDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string"},"thumbnailUrl":{"nullable":true,"type":"string"},"type":{"type":"string"},"assetOrigin":{"type":"string","enum":["user_upload","platform_mirror","conversation"]},"visibility":{"type":"string","enum":["media_room","reference_only","hidden"]}},"required":["id","url","thumbnailUrl","type","assetOrigin","visibility"],"additionalProperties":false},"PublicInboxMessageDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"parentMessageId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"direction":{"type":"string","enum":["incoming","outgoing","internal_note"]},"content":{"type":"string"},"author":{"$ref":"#/components/schemas/PublicInboxAuthorDto"},"isHidden":{"type":"boolean"},"isDeleted":{"type":"boolean"},"isResolved":{"type":"boolean"},"resolvedAt":{"nullable":true,"type":"string"},"resolvedBy":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicInboxResolvedByDto"}]},"resolvedReason":{"nullable":true,"type":"string"},"resolvedNote":{"nullable":true,"type":"string"},"sentByUserId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"sendStatus":{"nullable":true,"type":"string","enum":["sending","sent","failed"]},"sendError":{"nullable":true,"type":"string"},"capabilities":{"allOf":[{"$ref":"#/components/schemas/PublicInboxPartialCapabilitiesDto"}]},"attachments":{"type":"array","items":{"$ref":"#/components/schemas/PublicInboxAttachmentDto"}},"conversationMedia":{"type":"array","items":{"$ref":"#/components/schemas/PublicConversationMediaDto"}},"platformCreatedAt":{"nullable":true,"type":"string"},"createdAt":{"nullable":true,"type":"string"}},"required":["id","parentMessageId","direction","content","author","isHidden","isDeleted","isResolved","resolvedAt","resolvedBy","resolvedReason","resolvedNote","sentByUserId","sendStatus","sendError","attachments","conversationMedia","platformCreatedAt","createdAt"],"additionalProperties":false},"PublicInboxAuthorDto":{"type":"object","properties":{"name":{"nullable":true,"type":"string"},"handle":{"nullable":true,"type":"string"},"avatarUrl":{"nullable":true,"type":"string"},"isExternal":{"type":"boolean"}},"required":["name","handle","avatarUrl","isExternal"],"additionalProperties":false},"PublicInboxPartialCapabilitiesDto":{"type":"object","properties":{"canReply":{"type":"boolean"},"canHide":{"type":"boolean"},"canDelete":{"type":"boolean"},"canAttachMedia":{"type":"boolean"}},"additionalProperties":false},"PublicInboxAttachmentDto":{"type":"object","properties":{"type":{"type":"string"},"url":{"type":"string"}},"required":["type","url"],"additionalProperties":false},"PublicConversationMediaDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string"},"thumbnailUrl":{"nullable":true,"type":"string"},"type":{"type":"string"}},"required":["id","url","thumbnailUrl","type"],"additionalProperties":false},"MarkAllReadDto":{"type":"object","properties":{"platform":{"nullable":true,"type":"string","enum":["instagram","facebook","threads","google-business-profile","youtube","linkedin","linkedin-page","tiktok"]},"status":{"nullable":true,"type":"string","enum":["open","all"]},"integrationId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"messageType":{"nullable":true,"type":"string","enum":["comment","dm","review","mention"]},"search":{"nullable":true,"maxLength":200,"type":"string"},"read":{"nullable":true,"type":"string","enum":["read","unread","all"]},"resolution":{"nullable":true,"type":"string","enum":["resolved","unresolved","all"]},"tagIds":{"maxItems":20,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"tagMatch":{"nullable":true,"type":"string","enum":["any","all"]}},"additionalProperties":false},"PublicMarkedReadResultDto":{"type":"object","properties":{"success":{"example":true,"type":"boolean","enum":[true]},"markedCount":{"type":"number"}},"required":["success"],"additionalProperties":false},"ResolveAllThreadsDto":{"type":"object","properties":{"platform":{"nullable":true,"type":"string","enum":["instagram","facebook","threads","google-business-profile","youtube","linkedin","linkedin-page","tiktok"]},"status":{"default":"open","nullable":true,"type":"string","enum":["open","all"]},"integrationId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"messageType":{"nullable":true,"type":"string","enum":["comment","dm","review","mention"]},"search":{"nullable":true,"maxLength":200,"type":"string"},"read":{"default":"all","nullable":true,"type":"string","enum":["read","unread","all"]},"resolution":{"default":"all","nullable":true,"type":"string","enum":["resolved","unresolved","all"]},"tagIds":{"maxItems":20,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"tagMatch":{"default":"any","nullable":true,"type":"string","enum":["any","all"]},"page":{"nullable":true,"default":1,"type":"integer","minimum":1,"maximum":200},"limit":{"nullable":true,"default":20,"type":"integer","minimum":1,"maximum":50},"threadIds":{"nullable":true,"maxItems":50,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"reason":{"nullable":true,"type":"string","enum":["manual","reply_sent","moderated","handled_natively","handled_offline","no_response_needed"]},"note":{"nullable":true,"maxLength":1000,"type":"string"}},"additionalProperties":false},"PublicResolveAllThreadsResultDto":{"type":"object","properties":{"success":{"example":true,"type":"boolean","enum":[true]},"resolvedCount":{"type":"number"}},"required":["success","resolvedCount"],"additionalProperties":false},"ResolveThreadDto":{"type":"object","properties":{"reason":{"nullable":true,"type":"string","enum":["manual","reply_sent","moderated","handled_natively","handled_offline","no_response_needed"]},"note":{"nullable":true,"maxLength":1000,"type":"string"}},"additionalProperties":false},"PublicInboxThreadResultDto":{"type":"object","properties":{"thread":{"$ref":"#/components/schemas/PublicInboxThreadDto"}},"required":["thread"],"additionalProperties":false},"PublicInboxMessageResolveResultDto":{"type":"object","properties":{"message":{"$ref":"#/components/schemas/PublicInboxMessageDto"},"thread":{"$ref":"#/components/schemas/PublicInboxThreadDto"}},"required":["message","thread"],"additionalProperties":false},"SendReplyDto":{"type":"object","properties":{"content":{"nullable":true,"maxLength":10000,"type":"string"},"parentMessageId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"attachment":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/AttachmentDto"}]},"replyControl":{"nullable":true,"type":"string","enum":["everyone","accounts_you_follow","mentioned_only","parent_post_author_only","followers_only"]}},"additionalProperties":false},"AttachmentDto":{"type":"object","properties":{"type":{"type":"string","enum":["image","video","audio","file"]},"url":{"format":"uri","type":"string"}},"required":["type","url"],"additionalProperties":false},"PublicInboxReplyResultDto":{"type":"object","properties":{"message":{"$ref":"#/components/schemas/PublicInboxMessageDto"},"sendSucceeded":{"type":"boolean"}},"required":["message","sendSucceeded"],"additionalProperties":false},"SendNoteDto":{"type":"object","properties":{"content":{"maxLength":5000,"type":"string","minLength":1}},"required":["content"],"additionalProperties":false},"ModerateMessageDto":{"type":"object","properties":{"action":{"type":"string","enum":["hide","unhide","delete"]}},"required":["action"],"additionalProperties":false},"RetryInboxMessageDto":{"type":"object","properties":{"confirmUnconfirmed":{"nullable":true,"type":"boolean"}},"additionalProperties":false},"PublicInboxStatsDto":{"type":"object","properties":{"unreadCount":{"type":"number"},"openCount":{"type":"number"},"unresolvedCount":{"description":"Open threads with at least one unresolved actionable incoming message.","type":"number"},"needsActionCount":{"description":"Unresolved actionable incoming messages across open inbox threads.","type":"number"},"resolvedCount":{"type":"number"}},"required":["unreadCount","openCount","unresolvedCount","needsActionCount","resolvedCount"],"additionalProperties":false},"PublicInboxAutomationRulesDto":{"type":"object","properties":{"rules":{"type":"array","items":{"$ref":"#/components/schemas/PublicInboxAutomationRuleDto"}}},"required":["rules"],"additionalProperties":false},"PublicInboxAutomationRuleDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"trigger":{"type":"string","enum":["comment_keyword","dm_keyword","dm_welcome"]},"matchMode":{"type":"string","enum":["any","contains","exact"]},"keywords":{"type":"array","items":{"type":"string"}},"postScope":{"type":"string","enum":["all","specific"]},"postIds":{"type":"array","items":{"type":"string"}},"publicReplyBody":{"nullable":true,"type":"string"},"privateReplyBody":{"nullable":true,"type":"string"},"dmReplyBody":{"nullable":true,"type":"string"},"applyTagIds":{"type":"array","items":{"type":"string"}},"assignToUserId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"disclosureEnabled":{"type":"boolean"},"cooldownHours":{"description":"Per-participant cooldown in hours (0-168).","type":"number"},"dailyCap":{"description":"Maximum executions per day (1-1000).","type":"number"},"enabled":{"type":"boolean"},"pausedAt":{"description":"Set when the rule was auto-paused after repeated failures.","nullable":true,"type":"string"},"pausedReason":{"nullable":true,"type":"string"},"consecutiveFailures":{"type":"number"},"createdByUserId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"createdAt":{"nullable":true,"type":"string"},"updatedAt":{"nullable":true,"type":"string"},"executionCount":{"type":"number"}},"required":["id","integrationId","name","trigger","matchMode","keywords","postScope","postIds","publicReplyBody","privateReplyBody","dmReplyBody","applyTagIds","assignToUserId","disclosureEnabled","cooldownHours","dailyCap","enabled","pausedAt","pausedReason","consecutiveFailures","createdByUserId","createdAt","updatedAt","executionCount"],"additionalProperties":false},"CreateAutomationRuleDto":{"type":"object","properties":{"name":{"maxLength":120,"type":"string","minLength":1},"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"trigger":{"type":"string","enum":["comment_keyword","dm_keyword","dm_welcome"]},"matchMode":{"type":"string","enum":["any","contains","exact"]},"keywords":{"maxItems":20,"type":"array","items":{"maxLength":80,"type":"string"}},"postScope":{"type":"string","enum":["all","specific"]},"postIds":{"maxItems":50,"type":"array","items":{"maxLength":255,"type":"string"}},"publicReplyBody":{"nullable":true,"maxLength":10000,"type":"string"},"privateReplyBody":{"nullable":true,"maxLength":10000,"type":"string"},"dmReplyBody":{"nullable":true,"maxLength":10000,"type":"string"},"applyTagIds":{"maxItems":20,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"assignToUserId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"disclosureEnabled":{"type":"boolean"},"cooldownHours":{"type":"integer","minimum":0,"maximum":168},"dailyCap":{"type":"integer","minimum":1,"maximum":1000},"enabled":{"type":"boolean"}},"required":["name","integrationId","trigger"],"additionalProperties":false},"PublicInboxAutomationRuleResultDto":{"type":"object","properties":{"rule":{"$ref":"#/components/schemas/PublicInboxAutomationRuleDto"}},"required":["rule"],"additionalProperties":false},"UpdateAutomationRuleDto":{"type":"object","properties":{"name":{"maxLength":120,"type":"string","minLength":1},"trigger":{"type":"string","enum":["comment_keyword","dm_keyword","dm_welcome"]},"matchMode":{"type":"string","enum":["any","contains","exact"]},"keywords":{"maxItems":20,"type":"array","items":{"maxLength":80,"type":"string"}},"postScope":{"type":"string","enum":["all","specific"]},"postIds":{"maxItems":50,"type":"array","items":{"maxLength":255,"type":"string"}},"publicReplyBody":{"nullable":true,"maxLength":10000,"type":"string"},"privateReplyBody":{"nullable":true,"maxLength":10000,"type":"string"},"dmReplyBody":{"nullable":true,"maxLength":10000,"type":"string"},"applyTagIds":{"maxItems":20,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"assignToUserId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"disclosureEnabled":{"type":"boolean"},"cooldownHours":{"type":"integer","minimum":0,"maximum":168},"dailyCap":{"type":"integer","minimum":1,"maximum":1000},"enabled":{"type":"boolean"}},"additionalProperties":false},"PublicInboxAutomationExecutionDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"ruleId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"threadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"triggerMessageId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"participantPlatformId":{"nullable":true,"type":"string"},"platformCommentId":{"nullable":true,"type":"string"},"privateReplyPlanned":{"type":"boolean"},"status":{"type":"string","enum":["pending","completed","partial","failed","skipped","expired"]},"actionsPlanned":{"type":"array","items":{"type":"string"}},"actionsCompleted":{"description":"Per-action outcome map keyed by action (public_reply, private_reply, dm_reply, apply_tags, assign).","type":"object","additionalProperties":{}},"error":{"nullable":true,"type":"string"},"deferredUntil":{"description":"Earliest pacing slot a parked execution is waiting on.","nullable":true,"type":"string"},"deferCount":{"type":"number"},"createdAt":{"nullable":true,"type":"string"},"completedAt":{"nullable":true,"type":"string"}},"required":["id","ruleId","threadId","triggerMessageId","participantPlatformId","platformCommentId","privateReplyPlanned","status","actionsPlanned","actionsCompleted","error","deferredUntil","deferCount","createdAt","completedAt"],"additionalProperties":false},"PublicGridPlannerItemsDto":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/PublicGridPlannerItemDto"}}},"required":["items"],"additionalProperties":false},"PublicGridPlannerItemDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string","enum":["visual_only","linked_post","placeholder"]},"position":{"type":"number"},"linkedPostId":{"description":"Linked content edition ID (content.id), kept as linkedPostId for API compatibility.","nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"note":{"nullable":true,"type":"string"},"settings":{"type":"object","additionalProperties":{}},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"coverMedia":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicGridPlannerMediaDto"}]},"media":{"type":"array","items":{"$ref":"#/components/schemas/PublicGridPlannerMediaDto"}},"post":{"description":"Linked content edition summary, exposed as post for API compatibility.","nullable":true,"allOf":[{"$ref":"#/components/schemas/PublicGridPlannerLinkedPostDto"}]}},"required":["id","integrationId","kind","position","linkedPostId","note","settings","createdAt","updatedAt","coverMedia","media","post"],"additionalProperties":false},"PublicGridPlannerMediaDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string"},"thumbnailUrl":{"nullable":true,"type":"string"},"type":{"type":"string"}},"required":["id","url","thumbnailUrl","type"],"additionalProperties":false},"PublicGridPlannerLinkedPostDto":{"type":"object","properties":{"id":{"description":"Linked content edition ID (content.id). Grid planner linked items intentionally remain edition-level.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string"},"scheduledAt":{"nullable":true,"type":"string"},"sentAt":{"nullable":true,"type":"string"},"captions":{"$ref":"#/components/schemas/CaptionsDto"},"resolvedCaption":{"type":"string"},"postType":{"type":"string"},"firstComment":{"nullable":true,"type":"string"},"shareToFeed":{"type":"boolean"},"contentMedia":{"type":"array","items":{"$ref":"#/components/schemas/PublicContentMediaAttachmentDto"}},"media":{"type":"array","items":{"$ref":"#/components/schemas/PublicGridPlannerMediaDto"}},"campaignId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"campaignPhaseId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"priority":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/WorkbenchPriority"}]}},"required":["id","status","scheduledAt","sentAt","captions","resolvedCaption","postType","firstComment","shareToFeed","contentMedia","media","campaignId","campaignPhaseId"],"additionalProperties":false},"GridPlannerItemSettingsDto":{"type":"object","properties":{"aspectRatio":{"nullable":true,"type":"number","minimum":0.1,"maximum":10},"placeholder":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/GridPlannerPlaceholderSettingsDto"}]}},"additionalProperties":false},"GridPlannerPlaceholderSettingsDto":{"type":"object","properties":{"title":{"nullable":true,"maxLength":40,"type":"string"},"color":{"type":"string","pattern":"^#[0-9a-fA-F]{6}$"}},"required":["color"],"additionalProperties":false},"CreateGridPlannerItemDto":{"anyOf":[{"type":"object","properties":{"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"coverMediaId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"note":{"nullable":true,"type":"string"},"position":{"nullable":true,"type":"integer","minimum":0,"maximum":35},"settings":{"allOf":[{"$ref":"#/components/schemas/GridPlannerItemSettingsDto"}]},"kind":{"type":"string","enum":["visual_only"]},"mediaIds":{"uniqueItems":true,"minItems":1,"maxItems":10,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"linkedContentId":{}},"required":["integrationId","kind","mediaIds"],"additionalProperties":false},{"type":"object","properties":{"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"coverMediaId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"note":{"nullable":true,"type":"string"},"position":{"nullable":true,"type":"integer","minimum":0,"maximum":35},"settings":{"allOf":[{"$ref":"#/components/schemas/GridPlannerItemSettingsDto"}]},"kind":{"type":"string","enum":["linked_post"]},"mediaIds":{},"linkedContentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"required":["integrationId","kind","linkedContentId"],"additionalProperties":false},{"type":"object","properties":{"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"coverMediaId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"note":{"nullable":true,"type":"string"},"position":{"nullable":true,"type":"integer","minimum":0,"maximum":35},"settings":{"$ref":"#/components/schemas/GridPlannerItemSettingsDto"},"kind":{"type":"string","enum":["placeholder"]},"mediaIds":{},"linkedContentId":{}},"required":["integrationId","settings","kind"],"additionalProperties":false}]},"ReorderGridPlannerItemPositionDto":{"type":"object","properties":{"itemId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"position":{"type":"integer","minimum":0,"maximum":35}},"required":["itemId","position"],"additionalProperties":false},"ReorderGridPlannerItemsDto":{"type":"object","properties":{"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"itemIds":{"nullable":true,"uniqueItems":true,"minItems":1,"maxItems":36,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"items":{"nullable":true,"minItems":1,"maxItems":36,"type":"array","items":{"$ref":"#/components/schemas/ReorderGridPlannerItemPositionDto"}}},"required":["integrationId"],"additionalProperties":false},"ReplaceGridPlannerItemMediaDto":{"type":"object","properties":{"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"mediaIds":{"uniqueItems":true,"minItems":1,"maxItems":10,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},"required":["integrationId","mediaIds"],"additionalProperties":false},"SetGridPlannerItemCoverDto":{"type":"object","properties":{"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"mediaId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"required":["integrationId","mediaId"],"additionalProperties":false},"PromoteGridPlannerItemDto":{"type":"object","properties":{"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"required":["integrationId"],"additionalProperties":false},"PublicGridPlannerPromoteResultDto":{"type":"object","properties":{"item":{"$ref":"#/components/schemas/PublicGridPlannerItemDto"},"draft":{"description":"Content-library-compatible draft summary.","type":"object","additionalProperties":{}}},"required":["item","draft"],"additionalProperties":false},"UpdateGridPlannerItemDto":{"type":"object","properties":{"integrationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"},"settings":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/GridPlannerItemSettingsDto"}]},"note":{"nullable":true,"type":"string"}},"required":["integrationId"],"additionalProperties":false},"PublicStrategyFoundationDto":{"type":"object","properties":{"id":{"example":"11111111-1111-4111-8111-111111111111","nullable":true,"type":"string"},"workspaceId":{"example":"22222222-2222-4222-8222-222222222222","type":"string"},"audience":{"$ref":"#/components/schemas/PublicStrategyFoundationAudienceDto"},"objective":{"$ref":"#/components/schemas/PublicStrategyFoundationObjectiveDto"},"positioning":{"$ref":"#/components/schemas/PublicStrategyFoundationPositioningDto"},"voice":{"$ref":"#/components/schemas/PublicStrategyFoundationVoiceDto"},"completion":{"$ref":"#/components/schemas/PublicStrategyFoundationCompletionDto"},"createdAt":{"example":"2026-06-17T00:00:00.000Z","nullable":true,"type":"string"},"updatedAt":{"example":"2026-06-17T01:00:00.000Z","nullable":true,"type":"string"}},"required":["id","workspaceId","audience","objective","positioning","voice","completion","createdAt","updatedAt"],"additionalProperties":false},"PublicStrategyFoundationAudienceDto":{"type":"object","properties":{"who":{"example":"Independent creators","type":"string"},"pains":{"example":["Inconsistent content planning"],"type":"array","items":{"type":"string"}},"wants":{"example":["Clear weekly priorities"],"type":"array","items":{"type":"string"}}},"required":["who","pains","wants"],"additionalProperties":false},"PublicStrategyFoundationObjectiveDto":{"type":"object","properties":{"categories":{"type":"array","items":{"$ref":"#/components/schemas/PublicStrategyFoundationObjectiveCategoryDto"}},"smart":{"example":"Increase qualified inbound leads by 20% by September.","type":"string"}},"required":["categories","smart"],"additionalProperties":false},"PublicStrategyFoundationObjectiveCategoryDto":{"type":"object","properties":{"id":{"example":"growth","type":"string"},"label":{"example":"Growth","type":"string"}},"required":["id","label"],"additionalProperties":false},"PublicStrategyFoundationPositioningDto":{"type":"object","properties":{"format":{"example":"classic","type":"string","enum":["classic","we-help","only","dunford","custom"]},"fields":{"example":{"target":"Independent creators","category":"content strategy platform","benefit":"turn ideas into consistent publishing"},"type":"object","additionalProperties":{"type":"string"}}},"required":["format","fields"],"additionalProperties":false},"PublicStrategyFoundationVoiceDto":{"type":"object","properties":{"adjectives":{"example":["direct","practical"],"type":"array","items":{"type":"string"}},"soundsLike":{"example":"A senior operator","type":"string"},"avoid":{"example":"Hype","type":"string"}},"required":["adjectives","soundsLike","avoid"],"additionalProperties":false},"PublicStrategyFoundationCompletionDto":{"type":"object","properties":{"audience":{"example":true,"type":"boolean"},"objective":{"example":true,"type":"boolean"},"positioning":{"example":true,"type":"boolean"},"voice":{"example":true,"type":"boolean"},"doneCount":{"example":4,"type":"number"},"total":{"example":4,"type":"number","enum":[4]}},"required":["audience","objective","positioning","voice","doneCount","total"],"additionalProperties":false},"PublicStrategyPlatformDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"platform":{"type":"string"},"strategy":{"type":"string"},"goal":{"type":"string"},"audience":{"type":"string"},"source":{"type":"string","enum":["original","repurposed","mixed"]},"repurposedFrom":{"nullable":true,"type":"string"},"pillarIds":{"type":"array","items":{"type":"string"}},"formatIds":{"type":"array","items":{"type":"string"}},"cadenceCount":{"type":"number"},"cadencePeriod":{"type":"string","enum":["week","month"]},"startedOn":{"type":"string"},"endedOn":{"nullable":true,"type":"string"},"runningUntil":{"nullable":true,"type":"string"},"playbook":{"type":"array","items":{"type":"string"}},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"historyCount":{"type":"number"},"actual":{"type":"object","additionalProperties":{}}},"required":["id","platform","strategy","goal","audience","source","repurposedFrom","pillarIds","formatIds","cadenceCount","cadencePeriod","startedOn","endedOn","runningUntil","playbook","createdAt","updatedAt"],"additionalProperties":false},"UpsertPlatformStrategyDto":{"type":"object","properties":{"strategy":{"type":"string"},"goal":{"type":"string"},"audience":{"type":"string"},"source":{"type":"string","enum":["original","repurposed","mixed"]},"repurposedFrom":{"nullable":true,"type":"string","enum":["x","linkedin","linkedin-page","youtube","instagram","facebook","threads","tiktok","pinterest","google-business-profile"]},"pillarIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"formatIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"cadenceCount":{"type":"integer","minimum":1,"maximum":2147483647},"cadencePeriod":{"type":"string","enum":["week","month"]},"runningUntil":{"nullable":true,"format":"date","type":"string"},"playbook":{"type":"array","items":{"type":"string"}}},"required":["strategy","goal","audience","source","formatIds","cadenceCount","cadencePeriod","playbook"],"additionalProperties":false},"PublicStrategyPlatformRemovedDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"platform":{"type":"string"}},"required":["id","platform"],"additionalProperties":false},"PublicStrategyGoalDto":{"type":"object","properties":{"id":{"example":"11111111-1111-4111-8111-111111111111","type":"string"},"workspaceId":{"example":"22222222-2222-4222-8222-222222222222","type":"string"},"metricId":{"example":"reach","type":"string"},"metric":{"$ref":"#/components/schemas/PublicStrategyGoalMetricDto"},"startDate":{"example":"2026-06-01","type":"string"},"endDate":{"example":"2026-06-30","type":"string"},"baseline":{"example":32000,"type":"number"},"target":{"example":50000,"type":"number"},"current":{"example":43000,"type":"number"},"tracking":{"example":"auto","type":"string","enum":["auto","manual"]},"color":{"example":"#2F6BFF","nullable":true,"type":"string"},"customLabel":{"example":null,"nullable":true,"type":"string"},"customUnit":{"example":null,"nullable":true,"type":"string","enum":["count","rate","currency","boolean"]},"channelIds":{"type":"array","items":{"type":"string"}},"pillarIds":{"type":"array","items":{"type":"string"}},"formatIds":{"type":"array","items":{"type":"string"}},"campaignIds":{"type":"array","items":{"type":"string"}},"labelIds":{"type":"array","items":{"type":"string"}},"computed":{"$ref":"#/components/schemas/PublicStrategyGoalComputedDto"},"baselineStartDate":{"example":"2026-05-02","nullable":true,"type":"string"},"baselineEndDate":{"example":"2026-05-31","nullable":true,"type":"string"},"lastRefreshedAt":{"example":"2026-06-17T00:00:00.000Z","nullable":true,"type":"string"},"completedAt":{"example":"2026-06-20T00:00:00.000Z","nullable":true,"type":"string"},"completedByUserId":{"example":"33333333-3333-4333-8333-333333333333","nullable":true,"type":"string"},"createdAt":{"example":"2026-06-17T00:00:00.000Z","type":"string"},"updatedAt":{"example":"2026-06-17T00:00:00.000Z","type":"string"}},"required":["id","workspaceId","metricId","metric","startDate","endDate","baseline","target","current","tracking","color","customLabel","customUnit","channelIds","pillarIds","formatIds","campaignIds","labelIds","computed","baselineStartDate","baselineEndDate","lastRefreshedAt","completedAt","completedByUserId","createdAt","updatedAt"],"additionalProperties":false},"PublicStrategyGoalMetricDto":{"type":"object","properties":{"id":{"example":"reach","type":"string"},"label":{"example":"Reach","type":"string"},"stage":{"example":"awareness","type":"string","enum":["cadence","awareness","engagement","traffic","conversion"]},"unit":{"example":"count","type":"string","enum":["count","rate","currency","boolean"]},"help":{"example":"Unique people who saw you","type":"string"},"tracking":{"example":"auto","type":"string","enum":["auto","manual"]},"aggregation":{"example":"period_total","type":"string","enum":["period_total","period_delta","latest_value","rate"]},"suggestedLift":{"example":0.35,"type":"number"},"countable":{"example":true,"type":"boolean"},"platforms":{"example":["instagram","facebook"],"type":"array","items":{"type":"string"}},"allChannels":{"example":true,"type":"boolean"},"dayBounded":{"description":"Target is capped at the days in the goal window","example":true,"type":"boolean"}},"required":["id","label","stage","unit","help","tracking","aggregation","suggestedLift"],"additionalProperties":false},"PublicStrategyGoalComputedDto":{"type":"object","properties":{"phase":{"example":"active","type":"string","enum":["upcoming","active","ended"]},"startDate":{"example":"2026-06-01","type":"string"},"endDate":{"example":"2026-06-30","type":"string"},"totalDays":{"example":29,"type":"number"},"elapsedPct":{"example":0.5,"type":"number"},"daysLeft":{"example":14,"type":"number"},"daysToStart":{"example":0,"type":"number"},"decreasing":{"example":false,"type":"boolean"},"pct":{"example":0.62,"type":"number"},"expectedPct":{"example":0.5,"type":"number"},"projected":{"example":52000,"type":"number"},"fresh":{"example":false,"type":"boolean"},"statusKey":{"example":"ontrack","type":"string","enum":["hit","ahead","ontrack","risk","behind","upcoming","missed"]}},"required":["phase","startDate","endDate","totalDays","elapsedPct","daysLeft","daysToStart","decreasing","pct","expectedPct","projected","fresh","statusKey"],"additionalProperties":false},"StrategyGoalDraftEstimateDto":{"type":"object","properties":{"metricId":{"type":"string"},"customLabel":{"nullable":true,"type":"string"},"customUnit":{"nullable":true,"type":"string"},"startDate":{"format":"date","type":"string"},"endDate":{"format":"date","type":"string"},"channelIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"pillarIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"formatIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"campaignIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"labelIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},"required":["metricId","startDate","endDate"],"additionalProperties":false},"PublicStrategyGoalDraftEstimateDto":{"type":"object","properties":{"baseline":{"type":"number"},"current":{"type":"number"},"baselineStartDate":{"nullable":true,"type":"string"},"baselineEndDate":{"nullable":true,"type":"string"},"windowDays":{"type":"number"},"paceBaseline":{"type":"number"},"suggestedTarget":{"nullable":true,"type":"number"}},"required":["baseline","current","baselineStartDate","baselineEndDate","windowDays","paceBaseline","suggestedTarget"],"additionalProperties":false},"CreateStrategyGoalDto":{"anyOf":[{"type":"object","properties":{"metricId":{"type":"string","enum":["custom"]},"customLabel":{"type":"string"},"customUnit":{"type":"string"},"startDate":{"format":"date","type":"string"},"endDate":{"format":"date","type":"string"},"target":{"type":"number","minimum":-99999999999999.98,"maximum":99999999999999.98},"current":{"nullable":true,"type":"number","minimum":-99999999999999.98,"maximum":99999999999999.98},"color":{"nullable":true,"type":"string","pattern":"^#[0-9A-Fa-f]{6}$"},"channelIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"pillarIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"formatIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"campaignIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"labelIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},"required":["metricId","customLabel","customUnit","startDate","endDate","target"],"additionalProperties":false},{"type":"object","properties":{"metricId":{"not":{"enum":["custom"]},"type":"string"},"customLabel":{"description":"Ignored unless metricId is custom."},"customUnit":{"description":"Ignored unless metricId is custom."},"startDate":{"format":"date","type":"string"},"endDate":{"format":"date","type":"string"},"target":{"type":"number","minimum":-99999999999999.98,"maximum":99999999999999.98},"current":{"nullable":true,"type":"number","minimum":-99999999999999.98,"maximum":99999999999999.98},"color":{"nullable":true,"type":"string","pattern":"^#[0-9A-Fa-f]{6}$"},"channelIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"pillarIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"formatIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"campaignIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"labelIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},"required":["metricId","startDate","endDate","target"],"additionalProperties":false}]},"UpdateStrategyGoalDto":{"type":"object","properties":{"metricId":{"nullable":true,"type":"string"},"customLabel":{"nullable":true,"type":"string"},"customUnit":{"nullable":true,"type":"string"},"startDate":{"nullable":true,"format":"date","type":"string"},"endDate":{"nullable":true,"format":"date","type":"string"},"target":{"nullable":true,"type":"number","minimum":-99999999999999.98,"maximum":99999999999999.98},"current":{"nullable":true,"type":"number","minimum":-99999999999999.98,"maximum":99999999999999.98},"color":{"nullable":true,"type":"string","pattern":"^#[0-9A-Fa-f]{6}$"},"channelIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"pillarIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"formatIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"campaignIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"labelIds":{"nullable":true,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}}},"additionalProperties":false},"PublicStrategyDeletedDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id"],"additionalProperties":false},"LogStrategyGoalProgressDto":{"type":"object","properties":{"value":{"type":"number","minimum":-99999999999999.98,"maximum":99999999999999.98},"loggedAt":{"nullable":true,"format":"date-time","type":"string"},"note":{"nullable":true,"type":"string"}},"required":["value"],"additionalProperties":false},"PublicStrategyGoalProgressDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"goalId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"value":{"type":"number"},"eventType":{"type":"string"},"loggedAt":{"type":"string"},"loggedByUserId":{"nullable":true,"type":"string"},"note":{"nullable":true,"type":"string"},"createdAt":{"type":"string"}},"required":["id","goalId","value","eventType","loggedAt","loggedByUserId","note","createdAt"],"additionalProperties":false},"PublicStrategyBetDto":{"type":"object","properties":{"id":{"example":"11111111-1111-4111-8111-111111111111","type":"string"},"workspaceId":{"example":"22222222-2222-4222-8222-222222222222","type":"string"},"kind":{"example":"threshold","type":"string","enum":["vs","threshold","manual"]},"metricId":{"example":"reach","nullable":true,"type":"string"},"metric":{"description":"Resolved metric definition for vs/threshold bets; null for manual bets.","nullable":true,"type":"object","additionalProperties":{}},"unit":{"example":"count","nullable":true,"type":"string"},"a":{"description":"Subject A for vs bets.","nullable":true,"type":"object","additionalProperties":{}},"b":{"description":"Subject B for vs bets.","nullable":true,"type":"object","additionalProperties":{}},"subject":{"description":"Subject for threshold bets.","nullable":true,"type":"object","additionalProperties":{}},"comparator":{"example":"above","nullable":true,"type":"string"},"claim":{"example":"Reels beat carousels on reach","nullable":true,"type":"string"},"valueA":{"example":42000,"nullable":true,"type":"number"},"valueB":{"example":38000,"nullable":true,"type":"number"},"targetValue":{"example":50000,"nullable":true,"type":"number"},"startDate":{"example":"2026-06-01","type":"string"},"resolveDate":{"example":"2026-06-30","type":"string"},"reason":{"example":"Reels have been trending up all month.","type":"string"},"color":{"example":"#2F6BFF","nullable":true,"type":"string"},"outcome":{"example":null,"nullable":true,"type":"string","enum":["won","lost"]},"resolvedAt":{"example":null,"nullable":true,"type":"string"},"predictionSummary":{"description":"Aggregate prediction counts across the workspace.","allOf":[{"$ref":"#/components/schemas/PublicStrategyBetPredictionSummaryDto"}]},"predictions":{"description":"Per-user predictions on this bet.","type":"array","items":{"type":"object","additionalProperties":{}}},"computed":{"$ref":"#/components/schemas/PublicStrategyBetComputedDto"},"lastRefreshedAt":{"example":"2026-06-17T00:00:00.000Z","nullable":true,"type":"string"},"createdAt":{"example":"2026-06-17T00:00:00.000Z","type":"string"},"updatedAt":{"example":"2026-06-17T00:00:00.000Z","type":"string"}},"required":["id","workspaceId","kind","metricId","metric","unit","a","b","subject","comparator","claim","valueA","valueB","targetValue","startDate","resolveDate","reason","color","outcome","resolvedAt","predictionSummary","predictions","computed","lastRefreshedAt","createdAt","updatedAt"],"additionalProperties":false},"PublicStrategyBetPredictionSummaryDto":{"type":"object","properties":{"yes":{"example":3,"type":"number"},"no":{"example":1,"type":"number"},"total":{"example":4,"type":"number"}},"required":["yes","no","total"],"additionalProperties":false},"PublicStrategyBetComputedDto":{"type":"object","properties":{"phase":{"example":"live","type":"string","enum":["live","ready","won","lost"]},"startDate":{"example":"2026-06-01","type":"string"},"resolveDate":{"example":"2026-06-30","type":"string"},"totalDays":{"example":29,"type":"number"},"elapsedPct":{"example":0.5,"type":"number"},"daysLeft":{"example":14,"type":"number"},"winning":{"example":true,"nullable":true,"type":"boolean"},"lean":{"$ref":"#/components/schemas/PublicStrategyBetLeanDto"},"fresh":{"example":false,"type":"boolean"}},"required":["phase","startDate","resolveDate","totalDays","elapsedPct","daysLeft","winning","lean","fresh"],"additionalProperties":false},"PublicStrategyBetLeanDto":{"type":"object","properties":{"key":{"example":"winning","type":"string","enum":["winning","losing","close","early","manual"]},"label":{"example":"Winning","type":"string"},"tone":{"example":"good","type":"string","enum":["good","bad","muted"]}},"required":["key","label","tone"],"additionalProperties":false},"PublicStrategyBetMetricDto":{"type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"},"unit":{"type":"string","enum":["count","rate"]},"supportedSubjectTypes":{"type":"array","items":{"type":"string"}},"platforms":{"type":"array","items":{"type":"string"}},"resolvers":{"type":"array","items":{"type":"string"}}},"required":["id","label","unit","supportedSubjectTypes","resolvers"],"additionalProperties":false},"PublicStrategyBetLeaderboardRowDto":{"type":"object","properties":{"userId":{"nullable":true,"type":"string"},"name":{"type":"string"},"initials":{"type":"string"},"color":{"type":"string"},"calls":{"type":"number"},"wins":{"type":"number"},"losses":{"type":"number"},"hitRate":{"type":"number"},"streak":{"type":"number"},"isYou":{"type":"boolean"}},"required":["userId","name","initials","color","calls","wins","losses","hitRate","streak","isYou"],"additionalProperties":false},"StrategyBetSubjectDto":{"type":"object","properties":{"type":{"type":"string","enum":["channel","pillar","format","campaign","label","workspace"]},"id":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["type"],"additionalProperties":false},"StrategyBetDraftEstimateDto":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","enum":["vs"]},"metricId":{"type":"string"},"startDate":{"format":"date","type":"string"},"resolveDate":{"format":"date","type":"string"},"reason":{"nullable":true,"type":"string"},"color":{"nullable":true,"type":"string","pattern":"^#[0-9A-Fa-f]{6}$"},"subjectType":{"type":"string","enum":["format","pillar","channel"]},"a":{"$ref":"#/components/schemas/StrategyBetSubjectDto"},"b":{"$ref":"#/components/schemas/StrategyBetSubjectDto"},"subject":{"description":"Ignored for this kind."},"comparator":{"description":"Ignored for this kind."},"targetValue":{"description":"Ignored for this kind."},"claim":{"description":"Ignored for this kind."},"side":{"type":"string","enum":["yes","no"]}},"required":["kind","metricId","startDate","resolveDate","subjectType","a","b","side"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","enum":["threshold"]},"metricId":{"type":"string"},"startDate":{"format":"date","type":"string"},"resolveDate":{"format":"date","type":"string"},"reason":{"nullable":true,"type":"string"},"color":{"nullable":true,"type":"string","pattern":"^#[0-9A-Fa-f]{6}$"},"subjectType":{"description":"Ignored for this kind."},"a":{"description":"Ignored for this kind."},"b":{"description":"Ignored for this kind."},"subject":{"$ref":"#/components/schemas/StrategyBetSubjectDto"},"comparator":{"type":"string","enum":["above","below"]},"targetValue":{"type":"number","minimum":-99999999999999.98,"maximum":99999999999999.98},"claim":{"description":"Ignored for this kind."},"side":{"type":"string","enum":["yes","no"]}},"required":["kind","metricId","startDate","resolveDate","subject","comparator","targetValue","side"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","enum":["manual"]},"metricId":{"description":"Ignored for this kind."},"startDate":{"format":"date","type":"string"},"resolveDate":{"format":"date","type":"string"},"reason":{"nullable":true,"type":"string"},"color":{"nullable":true,"type":"string","pattern":"^#[0-9A-Fa-f]{6}$"},"subjectType":{"description":"Ignored for this kind."},"a":{"description":"Ignored for this kind."},"b":{"description":"Ignored for this kind."},"subject":{"description":"Ignored for this kind."},"comparator":{"description":"Ignored for this kind."},"targetValue":{"description":"Ignored for this kind."},"claim":{"type":"string"},"side":{"type":"string","enum":["yes","no"]}},"required":["kind","startDate","resolveDate","claim","side"],"additionalProperties":false}]},"PublicStrategyBetDraftEstimateDto":{"type":"object","properties":{"valueA":{"nullable":true,"type":"number"},"valueB":{"nullable":true,"type":"number"},"targetValue":{"nullable":true,"type":"number"},"fresh":{"type":"boolean"}},"required":["valueA","valueB","targetValue","fresh"],"additionalProperties":false},"CreateStrategyBetDto":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","enum":["vs"]},"metricId":{"type":"string"},"startDate":{"format":"date","type":"string"},"resolveDate":{"format":"date","type":"string"},"reason":{"nullable":true,"type":"string"},"color":{"nullable":true,"type":"string","pattern":"^#[0-9A-Fa-f]{6}$"},"subjectType":{"type":"string","enum":["format","pillar","channel"]},"a":{"$ref":"#/components/schemas/StrategyBetSubjectDto"},"b":{"$ref":"#/components/schemas/StrategyBetSubjectDto"},"subject":{"description":"Ignored for this kind."},"comparator":{"description":"Ignored for this kind."},"targetValue":{"description":"Ignored for this kind."},"claim":{"description":"Ignored for this kind."},"side":{"type":"string","enum":["yes","no"]}},"required":["kind","metricId","startDate","resolveDate","subjectType","a","b","side"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","enum":["threshold"]},"metricId":{"type":"string"},"startDate":{"format":"date","type":"string"},"resolveDate":{"format":"date","type":"string"},"reason":{"nullable":true,"type":"string"},"color":{"nullable":true,"type":"string","pattern":"^#[0-9A-Fa-f]{6}$"},"subjectType":{"description":"Ignored for this kind."},"a":{"description":"Ignored for this kind."},"b":{"description":"Ignored for this kind."},"subject":{"$ref":"#/components/schemas/StrategyBetSubjectDto"},"comparator":{"type":"string","enum":["above","below"]},"targetValue":{"type":"number","minimum":-99999999999999.98,"maximum":99999999999999.98},"claim":{"description":"Ignored for this kind."},"side":{"type":"string","enum":["yes","no"]}},"required":["kind","metricId","startDate","resolveDate","subject","comparator","targetValue","side"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","enum":["manual"]},"metricId":{"description":"Ignored for this kind."},"startDate":{"format":"date","type":"string"},"resolveDate":{"format":"date","type":"string"},"reason":{"nullable":true,"type":"string"},"color":{"nullable":true,"type":"string","pattern":"^#[0-9A-Fa-f]{6}$"},"subjectType":{"description":"Ignored for this kind."},"a":{"description":"Ignored for this kind."},"b":{"description":"Ignored for this kind."},"subject":{"description":"Ignored for this kind."},"comparator":{"description":"Ignored for this kind."},"targetValue":{"description":"Ignored for this kind."},"claim":{"type":"string"},"side":{"type":"string","enum":["yes","no"]}},"required":["kind","startDate","resolveDate","claim","side"],"additionalProperties":false}]},"UpdateStrategyBetDto":{"type":"object","properties":{"kind":{"nullable":true,"type":"string","enum":["vs","threshold","manual"]},"metricId":{"nullable":true,"type":"string"},"startDate":{"nullable":true,"format":"date","type":"string"},"resolveDate":{"nullable":true,"format":"date","type":"string"},"subjectType":{"nullable":true,"type":"string","enum":["format","pillar","channel"]},"a":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/StrategyBetSubjectDto"}]},"b":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/StrategyBetSubjectDto"}]},"subject":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/StrategyBetSubjectDto"}]},"comparator":{"nullable":true,"type":"string","enum":["above","below"]},"targetValue":{"nullable":true,"type":"number","minimum":-99999999999999.98,"maximum":99999999999999.98},"claim":{"nullable":true,"type":"string"},"reason":{"nullable":true,"type":"string"},"color":{"nullable":true,"type":"string","pattern":"^#[0-9A-Fa-f]{6}$"}},"additionalProperties":false},"ResolveStrategyBetDto":{"type":"object","properties":{"outcome":{"nullable":true,"type":"string","enum":["won","lost"]}},"additionalProperties":false},"UpsertStrategyBetPredictionDto":{"type":"object","properties":{"side":{"type":"string","enum":["yes","no"]}},"required":["side"],"additionalProperties":false},"PublicStrategyRetrosListDto":{"type":"object","properties":{"current":{"description":"The current (open or not-started) retro.","allOf":[{"$ref":"#/components/schemas/PublicStrategyRetroSessionDto"}]},"past":{"description":"Past retro sessions, newest first.","type":"array","items":{"$ref":"#/components/schemas/PublicStrategyRetroSessionSummaryDto"}}},"required":["current","past"],"additionalProperties":false},"PublicStrategyRetroSessionDto":{"type":"object","properties":{"id":{"example":"33333333-3333-4333-8333-333333333333","nullable":true,"type":"string"},"status":{"example":"open","type":"string","enum":["not_started","open","completed"]},"periodStartDate":{"example":"2026-06-01","type":"string"},"periodEndDateExclusive":{"example":"2026-06-15","type":"string"},"periodLabel":{"example":"Jun 1 - Jun 14","type":"string"},"isStale":{"example":false,"type":"boolean"},"completedAt":{"example":null,"nullable":true,"type":"string"},"postTotal":{"example":18,"type":"number"},"cardCount":{"example":6,"type":"number"},"openActionCount":{"example":2,"type":"number"},"resolvedBetCount":{"example":1,"type":"number"},"readyBetCount":{"example":1,"type":"number"},"leadMetric":{"description":"Lead metric for the period, or null when unavailable.","nullable":true,"type":"object","additionalProperties":{}},"participants":{"description":"People who participated in this retro.","type":"array","items":{"type":"object","additionalProperties":{}}},"overview":{"description":"Due/up-to-date overview for the current session.","type":"object","additionalProperties":{}},"period":{"description":"Period metrics, breakdowns, goal statuses, and bet rollups.","type":"object","additionalProperties":{}},"priorActions":{"description":"Open actions carried in from prior retros.","type":"array","items":{"type":"object","additionalProperties":{}}},"cards":{"description":"Retro board cards (worked / did not work / try next).","type":"array","items":{"type":"object","additionalProperties":{}}},"actions":{"description":"Action items created in this retro.","type":"array","items":{"type":"object","additionalProperties":{}}},"resolvedBets":{"description":"Bets resolved during this retro.","type":"array","items":{"type":"object","additionalProperties":{}}}},"required":["id","status","periodStartDate","periodEndDateExclusive","periodLabel","isStale","completedAt","postTotal","cardCount","openActionCount","resolvedBetCount","readyBetCount","leadMetric","participants","period","priorActions","cards","actions","resolvedBets"],"additionalProperties":false},"PublicStrategyRetroSessionSummaryDto":{"type":"object","properties":{"id":{"example":"33333333-3333-4333-8333-333333333333","nullable":true,"type":"string"},"status":{"example":"open","type":"string","enum":["not_started","open","completed"]},"periodStartDate":{"example":"2026-06-01","type":"string"},"periodEndDateExclusive":{"example":"2026-06-15","type":"string"},"periodLabel":{"example":"Jun 1 - Jun 14","type":"string"},"isStale":{"example":false,"type":"boolean"},"completedAt":{"example":null,"nullable":true,"type":"string"},"postTotal":{"example":18,"type":"number"},"cardCount":{"example":6,"type":"number"},"openActionCount":{"example":2,"type":"number"},"resolvedBetCount":{"example":1,"type":"number"},"readyBetCount":{"example":1,"type":"number"},"leadMetric":{"description":"Lead metric for the period, or null when unavailable.","nullable":true,"type":"object","additionalProperties":{}},"participants":{"description":"People who participated in this retro.","type":"array","items":{"type":"object","additionalProperties":{}}}},"required":["id","status","periodStartDate","periodEndDateExclusive","periodLabel","isStale","completedAt","postTotal","cardCount","openActionCount","resolvedBetCount","readyBetCount","leadMetric","participants"],"additionalProperties":false},"PublicStrategyRetroSettingsDto":{"type":"object","properties":{"workspaceId":{"example":"22222222-2222-4222-8222-222222222222","type":"string"},"cadenceWeeks":{"example":2,"description":"Weeks between retros.","type":"number"},"retroDayOfWeek":{"example":5,"description":"Day of week the retro lands on (0 = Sunday).","type":"number"},"updatedAt":{"example":"2026-06-17T00:00:00.000Z","nullable":true,"type":"string"}},"required":["workspaceId","cadenceWeeks","retroDayOfWeek","updatedAt"],"additionalProperties":false},"PublicTaskBoardDto":{"type":"object","properties":{"columns":{"type":"array","items":{"type":"object","additionalProperties":{}}},"tasks":{"type":"array","items":{"type":"object","additionalProperties":{}}},"members":{"type":"array","items":{"type":"object","additionalProperties":{}}}},"required":["columns","tasks","members"],"additionalProperties":false},"PublicTaskBoardTaskListDto":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","additionalProperties":{}}}},"required":["items"],"additionalProperties":false},"PublicTaskBoardTaskDetailDto":{"type":"object","properties":{"task":{"type":"object","additionalProperties":{}},"comments":{"type":"object","additionalProperties":{}},"activity":{"type":"object","additionalProperties":{}}},"required":["task"],"additionalProperties":false},"PublicTaskBoardCommentsDto":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","additionalProperties":{}}}},"required":["items"],"additionalProperties":false},"PublicTaskBoardActivityDto":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","additionalProperties":{}}},"nextCursor":{"nullable":true,"type":"string"}},"required":["items","nextCursor"],"additionalProperties":false},"PublicTaskBoardTaskResultDto":{"type":"object","properties":{"task":{"type":"object","additionalProperties":{}}},"required":["task"],"additionalProperties":false},"PublicTaskBoardMoveTaskResultDto":{"type":"object","properties":{"task":{"type":"object","additionalProperties":{}},"affectedTasks":{"type":"array","items":{"type":"object","additionalProperties":{}}},"reindexed":{"type":"boolean"}},"required":["task","affectedTasks","reindexed"],"additionalProperties":false},"PublicTaskBoardCommentResultDto":{"type":"object","properties":{"comment":{"type":"object","additionalProperties":{}}},"required":["comment"],"additionalProperties":false},"PublicTaskBoardChecklistItemResultDto":{"type":"object","properties":{"item":{"type":"object","additionalProperties":{}}},"required":["item"],"additionalProperties":false},"PublicCalendarFeedDto":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"itemKind":{"type":"string","enum":["content","plannedDraft"]},"postId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"title":{"nullable":true,"type":"string"},"captionSummary":{"nullable":true,"type":"string"},"status":{"type":"string","enum":["draft","pending_approval","rejected","scheduled","sent","failed","cancelled"]},"workflowStatus":{"type":"string","enum":["drafting","review","approved","scheduled","published"]},"plannedAt":{"nullable":true,"format":"date-time","type":"string"},"scheduledAt":{"nullable":true,"format":"date-time","type":"string"},"calendarAt":{"nullable":true,"format":"date-time","type":"string"},"sentAt":{"nullable":true,"format":"date-time","type":"string"},"integrationId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"platform":{"nullable":true,"type":"string"},"accountLabel":{"nullable":true,"type":"string"},"postType":{"nullable":true,"type":"string"},"contentMedia":{"type":"array","items":{"$ref":"#/components/schemas/PublicContentMediaAttachmentDto"}},"labels":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"color":{"nullable":true,"type":"string"}},"required":["id","name","color"],"additionalProperties":false}},"pillars":{"type":"array","items":{"$ref":"#/components/schemas/PublicContentPillarDto"}},"formats":{"type":"array","items":{"$ref":"#/components/schemas/PublicContentFormatDto"}},"campaignId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"priority":{"nullable":true,"type":"string"},"createdAt":{"format":"date-time","type":"string"},"updatedAt":{"format":"date-time","type":"string"}},"required":["id","itemKind","postId","title","captionSummary","status","workflowStatus","plannedAt","scheduledAt","calendarAt","sentAt","integrationId","platform","accountLabel","postType","contentMedia","labels","pillars","formats","campaignId","priority","createdAt","updatedAt"],"additionalProperties":false}},"tasks":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"title":{"type":"string"},"dueDate":{"type":"string"},"state":{"type":"string","enum":["open","overdue","completed"]},"priority":{"nullable":true,"type":"string","enum":["urgent","high","medium","low"]},"column":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"systemKey":{"nullable":true,"type":"string","enum":["backlog","in_progress","review","done"]}},"required":["id","name","systemKey"],"additionalProperties":false},"labels":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"color":{"nullable":true,"type":"string"},"groupId":{"nullable":true,"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","name","color","groupId"],"additionalProperties":false}},"checklist":{"type":"object","properties":{"completed":{"type":"number"},"total":{"type":"number"}},"required":["completed","total"],"additionalProperties":false},"linkedContent":{"nullable":true,"type":"object","properties":{"postId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"title":{"nullable":true,"type":"string"},"snippet":{"type":"string"},"stage":{"type":"string","enum":["idea","drafting"]},"effectiveStage":{"type":"string","enum":["idea","drafting","review","scheduled","published"]},"boardAddedAt":{"nullable":true,"format":"date-time","type":"string"},"updatedAt":{"format":"date-time","type":"string"}},"required":["postId","title","snippet","stage","effectiveStage","boardAddedAt","updatedAt"],"additionalProperties":false},"createdAt":{"format":"date-time","type":"string"},"updatedAt":{"format":"date-time","type":"string"}},"required":["id","title","dueDate","state","priority","column","labels","checklist","linkedContent","createdAt","updatedAt"],"additionalProperties":false}},"pagination":{"type":"object","properties":{"total":{"type":"number"},"limit":{"type":"number"},"offset":{"type":"number"},"hasMore":{"type":"boolean"},"taskTotal":{"type":"number"},"tasksTruncated":{"type":"boolean"}},"required":["total","limit","offset","hasMore"],"additionalProperties":false}},"required":["items","tasks","pagination"],"additionalProperties":false},"PublicCalendarNoteDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"localDate":{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"body":{"type":"string"},"color":{"type":"string"},"sortOrder":{"type":"number"},"createdAt":{"format":"date-time","type":"string"},"updatedAt":{"format":"date-time","type":"string"}},"required":["id","localDate","body","color","sortOrder","createdAt","updatedAt"],"additionalProperties":false},"CreateCalendarNoteDto":{"type":"object","properties":{"localDate":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"body":{"maxLength":1000,"type":"string","minLength":1},"color":{"type":"string","pattern":"^#[0-9a-fA-F]{6}$"}},"required":["localDate","body"],"additionalProperties":false},"UpdateCalendarNoteDto":{"type":"object","properties":{"body":{"maxLength":1000,"type":"string","minLength":1},"color":{"type":"string","pattern":"^#[0-9a-fA-F]{6}$"},"localDate":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},"additionalProperties":false},"MoveCalendarNoteDto":{"type":"object","properties":{"localDate":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"sortOrder":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["localDate"],"additionalProperties":false},"PublicCalendarShareLinksDto":{"type":"object","properties":{"links":{"type":"array","items":{"$ref":"#/components/schemas/PublicCalendarShareLinkDto"}}},"required":["links"],"additionalProperties":false},"PublicCalendarShareLinkDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"title":{"type":"string"},"status":{"type":"string","enum":["active","expired","revoked"]},"currentVersion":{"type":"number"},"settings":{"type":"object","properties":{"version":{"type":"number","enum":[1]},"title":{"type":"string"},"dateRange":{"type":"object","properties":{"start":{"format":"date-time","type":"string"},"end":{"format":"date-time","type":"string"}},"required":["start","end"],"additionalProperties":false},"filters":{"type":"object","properties":{"integrationIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"platforms":{"type":"array","items":{"type":"string"}},"statuses":{"type":"array","items":{"type":"string","enum":["scheduled","sent","pending_approval","draft"]}},"campaignIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"labelIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"pillarIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"formatIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"includePostedHistory":{"type":"boolean"},"includeScheduledFuture":{"type":"boolean"},"includeReviewItems":{"type":"boolean"},"includeDrafts":{"type":"boolean"},"includeCalendarNotes":{"type":"boolean"}},"required":["statuses","includePostedHistory","includeScheduledFuture","includeReviewItems","includeDrafts","includeCalendarNotes"],"additionalProperties":false},"include":{"type":"object","properties":{"captions":{"type":"boolean"},"media":{"type":"boolean"},"postTitles":{"type":"boolean"},"firstComments":{"type":"boolean"},"threadPosts":{"type":"boolean"},"accountNames":{"type":"boolean"},"accountAvatars":{"type":"boolean"},"highLevelApprovalState":{"type":"boolean"},"exactPublishTimes":{"type":"boolean"},"labels":{"type":"boolean"},"pillars":{"type":"boolean"},"formats":{"type":"boolean"}},"required":["captions","media","postTitles","firstComments","threadPosts","accountNames","accountAvatars","highLevelApprovalState","exactPublishTimes","labels","pillars","formats"],"additionalProperties":false}},"required":["version","title","dateRange","filters","include"],"additionalProperties":false},"dateRange":{"nullable":true,"type":"object","properties":{"start":{"format":"date-time","type":"string"},"end":{"format":"date-time","type":"string"}},"required":["start","end"],"additionalProperties":false},"expiresAt":{"format":"date-time","type":"string"},"revokedAt":{"nullable":true,"format":"date-time","type":"string"},"viewCount":{"type":"number"},"lastViewedAt":{"nullable":true,"format":"date-time","type":"string"},"createdAt":{"format":"date-time","type":"string"},"updatedAt":{"format":"date-time","type":"string"},"latestGeneratedAt":{"nullable":true,"format":"date-time","type":"string"}},"required":["id","title","status","currentVersion","settings","dateRange","expiresAt","revokedAt","viewCount","lastViewedAt","createdAt","updatedAt","latestGeneratedAt"],"additionalProperties":false},"CalendarShareSettingsDto":{"type":"object","properties":{"version":{"type":"number","enum":[1]},"title":{"maxLength":120,"type":"string"},"dateRange":{"$ref":"#/components/schemas/CalendarShareDateRangeDto"},"filters":{"$ref":"#/components/schemas/CalendarShareFiltersDto"},"include":{"$ref":"#/components/schemas/CalendarShareIncludeDto"}},"required":["version","title","dateRange","filters","include"],"additionalProperties":false},"CalendarShareDateRangeDto":{"type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start","end"],"additionalProperties":false},"CalendarShareFiltersDto":{"type":"object","properties":{"integrationIds":{"nullable":true,"uniqueItems":true,"maxItems":100,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"platforms":{"nullable":true,"uniqueItems":true,"maxItems":16,"type":"array","items":{"maxLength":64,"type":"string"}},"statuses":{"uniqueItems":true,"minItems":1,"maxItems":4,"type":"array","items":{"type":"string","enum":["scheduled","sent","pending_approval","draft"]}},"campaignIds":{"nullable":true,"uniqueItems":true,"maxItems":100,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"labelIds":{"nullable":true,"uniqueItems":true,"maxItems":100,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"pillarIds":{"nullable":true,"uniqueItems":true,"maxItems":100,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"formatIds":{"nullable":true,"uniqueItems":true,"maxItems":100,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$"}},"includePostedHistory":{"type":"boolean"},"includeScheduledFuture":{"type":"boolean"},"includeReviewItems":{"type":"boolean"},"includeDrafts":{"type":"boolean"},"includeCalendarNotes":{"type":"boolean"}},"required":["statuses","includePostedHistory","includeScheduledFuture","includeReviewItems","includeDrafts","includeCalendarNotes"],"additionalProperties":false},"CalendarShareIncludeDto":{"type":"object","properties":{"captions":{"type":"boolean"},"media":{"type":"boolean"},"postTitles":{"type":"boolean"},"firstComments":{"type":"boolean"},"threadPosts":{"type":"boolean"},"accountNames":{"type":"boolean"},"accountAvatars":{"type":"boolean"},"highLevelApprovalState":{"type":"boolean"},"exactPublishTimes":{"type":"boolean"},"labels":{"type":"boolean"},"pillars":{"type":"boolean"},"formats":{"type":"boolean"}},"required":["captions","media","postTitles","firstComments","threadPosts","accountNames","accountAvatars","highLevelApprovalState","exactPublishTimes","labels","pillars","formats"],"additionalProperties":false},"PreviewCalendarShareDto":{"type":"object","properties":{"settings":{"$ref":"#/components/schemas/CalendarShareSettingsDto"}},"required":["settings"],"additionalProperties":false},"PublicCalendarSharePreviewDto":{"type":"object","properties":{"counts":{"type":"object","properties":{"posts":{"type":"number"},"notes":{"type":"number"},"excludedDraftsWithoutDate":{"type":"number"},"truncated":{"type":"boolean"}},"required":["posts","notes","excludedDraftsWithoutDate","truncated"],"additionalProperties":false},"settingsSummary":{"type":"object","properties":{"dateRange":{"type":"object","properties":{"start":{"format":"date-time","type":"string"},"end":{"format":"date-time","type":"string"}},"required":["start","end"],"additionalProperties":false},"statuses":{"type":"array","items":{"type":"string","enum":["scheduled","sent","pending_approval","draft"]}},"include":{"type":"object","properties":{"captions":{"type":"boolean"},"media":{"type":"boolean"},"postTitles":{"type":"boolean"},"firstComments":{"type":"boolean"},"threadPosts":{"type":"boolean"},"accountNames":{"type":"boolean"},"accountAvatars":{"type":"boolean"},"highLevelApprovalState":{"type":"boolean"},"exactPublishTimes":{"type":"boolean"},"labels":{"type":"boolean"},"pillars":{"type":"boolean"},"formats":{"type":"boolean"}},"required":["captions","media","postTitles","firstComments","threadPosts","accountNames","accountAvatars","highLevelApprovalState","exactPublishTimes","labels","pillars","formats"],"additionalProperties":false},"filters":{"type":"object","properties":{"integrationCount":{"type":"number"},"platformCount":{"type":"number"},"campaignCount":{"type":"number"},"labelCount":{"type":"number"},"pillarCount":{"type":"number"},"formatCount":{"type":"number"}},"required":["integrationCount","platformCount","campaignCount","labelCount","pillarCount","formatCount"],"additionalProperties":false}},"required":["dateRange","statuses","include","filters"],"additionalProperties":false},"warnings":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string","enum":["no_posts","drafts_included","calendar_notes_included","taxonomy_included","snapshot_truncated","drafts_without_date_excluded"]},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false}}},"required":["counts","settingsSummary","warnings"],"additionalProperties":false},"CreateCalendarShareLinkDto":{"type":"object","properties":{"settings":{"$ref":"#/components/schemas/CalendarShareSettingsDto"},"expiresAt":{"type":"string"}},"required":["settings","expiresAt"],"additionalProperties":false},"PublicCalendarCreatedShareLinkDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"title":{"type":"string"},"status":{"type":"string","enum":["active","expired","revoked"]},"currentVersion":{"type":"number"},"settings":{"type":"object","properties":{"version":{"type":"number","enum":[1]},"title":{"type":"string"},"dateRange":{"type":"object","properties":{"start":{"format":"date-time","type":"string"},"end":{"format":"date-time","type":"string"}},"required":["start","end"],"additionalProperties":false},"filters":{"type":"object","properties":{"integrationIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"platforms":{"type":"array","items":{"type":"string"}},"statuses":{"type":"array","items":{"type":"string","enum":["scheduled","sent","pending_approval","draft"]}},"campaignIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"labelIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"pillarIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"formatIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"includePostedHistory":{"type":"boolean"},"includeScheduledFuture":{"type":"boolean"},"includeReviewItems":{"type":"boolean"},"includeDrafts":{"type":"boolean"},"includeCalendarNotes":{"type":"boolean"}},"required":["statuses","includePostedHistory","includeScheduledFuture","includeReviewItems","includeDrafts","includeCalendarNotes"],"additionalProperties":false},"include":{"type":"object","properties":{"captions":{"type":"boolean"},"media":{"type":"boolean"},"postTitles":{"type":"boolean"},"firstComments":{"type":"boolean"},"threadPosts":{"type":"boolean"},"accountNames":{"type":"boolean"},"accountAvatars":{"type":"boolean"},"highLevelApprovalState":{"type":"boolean"},"exactPublishTimes":{"type":"boolean"},"labels":{"type":"boolean"},"pillars":{"type":"boolean"},"formats":{"type":"boolean"}},"required":["captions","media","postTitles","firstComments","threadPosts","accountNames","accountAvatars","highLevelApprovalState","exactPublishTimes","labels","pillars","formats"],"additionalProperties":false}},"required":["version","title","dateRange","filters","include"],"additionalProperties":false},"dateRange":{"nullable":true,"type":"object","properties":{"start":{"format":"date-time","type":"string"},"end":{"format":"date-time","type":"string"}},"required":["start","end"],"additionalProperties":false},"expiresAt":{"format":"date-time","type":"string"},"revokedAt":{"nullable":true,"format":"date-time","type":"string"},"viewCount":{"type":"number"},"lastViewedAt":{"nullable":true,"format":"date-time","type":"string"},"createdAt":{"format":"date-time","type":"string"},"updatedAt":{"format":"date-time","type":"string"},"latestGeneratedAt":{"nullable":true,"format":"date-time","type":"string"},"token":{"type":"string"}},"required":["id","title","status","currentVersion","settings","dateRange","expiresAt","revokedAt","viewCount","lastViewedAt","createdAt","updatedAt","latestGeneratedAt","token"],"additionalProperties":false},"UpdateCalendarShareSnapshotDto":{"type":"object","properties":{"settings":{"$ref":"#/components/schemas/CalendarShareSettingsDto"}},"required":["settings"],"additionalProperties":false},"PublicCalendarShareRevokedDto":{"type":"object","properties":{"success":{"type":"boolean"},"linkId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["success","linkId"],"additionalProperties":false}}}}