---
id: create-campaign
sidebar_label: Create a campaign
hide_title: true
hide_table_of_contents: true
api: {"operationId":"createCampaign","tags":["Certification Campaigns"],"description":"Creates a new Certification Campaign with the information provided in the request body.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Campaign","allOf":[{"type":"object","title":"Slim Campaign","required":["name","description","type"],"properties":{"id":{"type":"string","readOnly":true},"name":{"description":"The campaign name. If this object is part of a template, special formatting applies; see the `/campaign-templates/{id}/generate` endpoint documentation for details.","type":"string"},"description":{"type":"string","description":"The campaign description. If this object is part of a template, special formatting applies; see the `/campaign-templates/{id}/generate` endpoint documentation for details."},"deadline":{"type":"string","format":"date-time","description":"The campaign's completion deadline."},"type":{"type":"string","description":"The type of campaign. Could be extended in the future.","enum":["MANAGER","SOURCE_OWNER","SEARCH","ROLE_COMPOSITION"]},"emailNotificationEnabled":{"type":"boolean"},"autoRevokeAllowed":{"type":"boolean"},"recommendationsEnabled":{"type":"boolean","description":"Enables IAI for this campaign. Accepts true even if the IAI product feature is off. If IAI is turned off then campaigns generated from this template will indicate false. The real value will then be returned if IAI is ever enabled for the org in the future."},"status":{"type":"string","description":"The campaign's current status.","readOnly":true,"enum":["PENDING","STAGED","CANCELING","ACTIVATING","ACTIVE","COMPLETING","COMPLETED","ERROR","ARCHIVED"]}},"example":{"id":"2c9079b270a266a60170a2779fcb0007","name":"Manager Campaign","description":"Everyone needs to be reviewed by their manager.","deadline":"2020-03-15T10:00:01.456Z","type":"MANAGER","emailNotificationEnabled":true,"autoRevokeAllowed":false,"recommendationsEnabled":false,"status":"ACTIVE"}},{"type":"object","properties":{"created":{"type":"string","readOnly":true,"format":"date-time"},"modified":{"type":"string","readOnly":true,"format":"date-time"},"filter":{"type":"object","description":"Determines which items will be included in this campaign. The default campaign filter is used if this field is left blank.","properties":{"id":{"type":"string","description":"The ID of whatever type of filter is being used."},"type":{"type":"string","enum":["CAMPAIGN_FILTER"]}}},"sunsetCommentsRequired":{"type":"boolean","description":"Determines if comments on sunset date changes are required.","default":true},"sourceOwnerCampaignInfo":{"type":"object","description":"Must be set only if the campaign type is SOURCE_OWNER.","properties":{"sourceIds":{"type":"array","description":"The list of sources to be included in the campaign.","items":{"type":"string"}}}},"searchCampaignInfo":{"type":"object","description":"Must be set only if the campaign type is SEARCH.","properties":{"type":{"type":"string","description":"The type of search campaign represented.","enum":["IDENTITY","ACCESS"]},"description":{"type":"string","description":"Describes this search campaign. Intended for storing the query used, and possibly the number of identities selected/available."},"reviewer":{"description":"If specified, this identity or governance group will be the reviewer for all certifications in this campaign. The allowed DTO types are IDENTITY and GOVERNANCE_GROUP","allOf":[{"type":"object","properties":{"type":{"description":"DTO type","type":"string","enum":["ACCOUNT_CORRELATION_CONFIG","ACCESS_PROFILE","ACCESS_REQUEST_APPROVAL","ACCOUNT","APPLICATION","CAMPAIGN","CAMPAIGN_FILTER","CERTIFICATION","CLUSTER","CONNECTOR_SCHEMA","ENTITLEMENT","GOVERNANCE_GROUP","IDENTITY","IDENTITY_PROFILE","IDENTITY_REQUEST","LIFECYCLE_STATE","PASSWORD_POLICY","ROLE","RULE","SOD_POLICY","SOURCE","TAG_CATEGORY","TASK_RESULT","REPORT_RESULT","SOD_VIOLATION","ACCOUNT_ACTIVITY"],"example":"IDENTITY"},"id":{"type":"string","description":"ID of the object to which this reference applies","example":"2c91808568c529c60168cca6f90c1313"},"name":{"type":"string","description":"Human-readable display name of the object to which this reference applies","example":"William Wilson"}}},{"type":"object"}]},"query":{"type":"string","description":"The scope for the campaign. The campaign will cover identities returned by the query and identities that have access items returned by the query. One of `query` or `identityIds` must be set."},"identityIds":{"type":"array","description":"A direct list of identities to include in this campaign. One of `identityIds` or `query` must be set.","items":{"type":"string"},"maxItems":1000},"accessConstraints":{"type":"array","description":"Further reduces the scope of the campaign by excluding identities (from `query` or `identityIds`) that do not have this access.","items":{"type":"object","properties":{"type":{"type":"string","enum":["ENTITLEMENT","ACCESS_PROFILE","ROLE"]},"ids":{"description":"Must be set only if operator is SELECTED.","type":"array","items":{"type":"string"}},"operator":{"type":"string","enum":["ALL","SELECTED"]}},"required":["type","operator"],"example":{"type":"ENTITLEMENT","ids":["2c90ad2a70ace7d50170acf22ca90010"],"operator":"SELECTED"}},"maxItems":1000}},"required":["type"]},"roleCompositionCampaignInfo":{"type":"object","description":"Optional configuration options for role composition campaigns.","properties":{"reviewer":{"description":"If specified, this identity or governance group will be the reviewer for all certifications in this campaign. The allowed DTO types are IDENTITY and GOVERNANCE_GROUP","allOf":[{"type":"object","properties":{"type":{"description":"DTO type","type":"string","enum":["ACCOUNT_CORRELATION_CONFIG","ACCESS_PROFILE","ACCESS_REQUEST_APPROVAL","ACCOUNT","APPLICATION","CAMPAIGN","CAMPAIGN_FILTER","CERTIFICATION","CLUSTER","CONNECTOR_SCHEMA","ENTITLEMENT","GOVERNANCE_GROUP","IDENTITY","IDENTITY_PROFILE","IDENTITY_REQUEST","LIFECYCLE_STATE","PASSWORD_POLICY","ROLE","RULE","SOD_POLICY","SOURCE","TAG_CATEGORY","TASK_RESULT","REPORT_RESULT","SOD_VIOLATION","ACCOUNT_ACTIVITY"],"example":"IDENTITY"},"id":{"type":"string","description":"ID of the object to which this reference applies","example":"2c91808568c529c60168cca6f90c1313"},"name":{"type":"string","description":"Human-readable display name of the object to which this reference applies","example":"William Wilson"}}},{"type":"object"}]},"roleIds":{"type":"array","description":"Optional list of roles to include in this campaign. Only one of `roleIds` and `query` may be set; if neither are set, all roles are included.","items":{"type":"string"}},"remediatorRef":{"type":"object","description":"This determines who remediation tasks will be assigned to. Remediation tasks are created for each revoke decision on items in the campaign. The only legal remediator type is 'IDENTITY', and the chosen identity must be a Role Admin or Org Admin.","properties":{"type":{"type":"string","enum":["IDENTITY"]},"id":{"type":"string","description":"The ID of the remediator."},"name":{"type":"string","description":"The name of the remediator.","readOnly":true}},"required":["type","id"]},"query":{"type":"string","description":"Optional search query to scope this campaign to a set of roles. Only one of `roleIds` and `query` may be set; if neither are set, all roles are included."},"description":{"type":"string","description":"Describes this role composition campaign. Intended for storing the query used, and possibly the number of roles selected/available."}},"required":["remediatorRef"]},"alerts":{"type":"array","description":"A list of errors and warnings that have accumulated.","readOnly":true,"items":{"type":"object","properties":{"level":{"type":"string","enum":["ERROR","WARN","INFO"]},"localizations":{"type":"array","items":{"type":"object","properties":{"locale":{"type":"string","description":"The locale for the message text, a BCP 47 language tag.","example":"en-US"},"localeOrigin":{"type":"string","enum":["DEFAULT","REQUEST"],"description":"An indicator of how the locale was selected. *DEFAULT* means the locale is the system default. *REQUEST* means the locale was selected from the request context (i.e., best match based on the *Accept-Language* header). Additional values may be added in the future without notice.","example":"DEFAULT"},"text":{"type":"string","description":"Actual text of the error message in the indicated locale.","example":"The request was syntactically correct but its content is semantically invalid."}}}}}}},"totalCertifications":{"type":"integer","description":"The total number of certifications in this campaign.","readOnly":true},"completedCertifications":{"type":"integer","description":"The number of completed certifications in this campaign.","readOnly":true},"sourcesWithOrphanEntitlements":{"type":"array","description":"A list of sources in the campaign that contain \\\"orphan entitlements\\\" (entitlements without a corresponding Managed Attribute). An empty list indicates the campaign has no orphan entitlements. Null indicates there may be unknown orphan entitlements in the campaign (the campaign was created before this feature was implemented).","readOnly":true,"items":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string","enum":["SOURCE"]},"name":{"type":"string"}}}}}}],"example":{"id":"2c9079b270a266a60170a2779fcb0007","name":"Manager Campaign","description":"Everyone needs to be reviewed by their manager.","created":"2020-03-03T22:15:13.611Z","modified":"2020-03-03T22:20:12.674Z","deadline":"2020-03-15T00:00:00.456Z","type":"MANAGER","emailNotificationEnabled":true,"autoRevokeAllowed":false,"recommendationsEnabled":false,"status":"ACTIVE","filter":{"type":"CAMPAIGN_FILTER","id":"e0adaae69852e8fe8b8a3d48e5ce757c"}}},"examples":{"Manager":{"value":{"name":"Manager Review","description":"A review of everyone's access by their manager.","deadline":"2020-12-25T06:00:00.468Z","type":"MANAGER","emailNotificationEnabled":false,"autoRevokeAllowed":false,"recommendationsEnabled":false,"filter":{"type":"CAMPAIGN_FILTER","id":"0c46fb26c6b20967a55517ee90d15b93"}}},"Search":{"value":{"name":"Search Campaign","description":"Search Campaign","deadline":"2020-12-25T06:00:00.468Z","type":"SEARCH","emailNotificationEnabled":false,"autoRevokeAllowed":false,"recommendationsEnabled":false,"filter":{"type":"CAMPAIGN_FILTER","id":"0c46fb26c6b20967a55517ee90d15b93"},"searchCampaignInfo":{"type":"ACCESS","query":"user"}}},"Source Owner":{"value":{"name":"Source Owner","description":"Source Owner Info","deadline":"2020-12-25T06:00:00.468Z","type":"SOURCE_OWNER","emailNotificationEnabled":false,"autoRevokeAllowed":false,"recommendationsEnabled":false,"filter":{"type":"CAMPAIGN_FILTER","id":"0c46fb26c6b20967a55517ee90d15b93"},"sourceOwnerCampaignInfo":{"sourceIds":["612b31b1a0f04aaf83123bdb80e70db6"]}}},"Role Composition":{"value":{"name":"Role Composition Campaign","description":"A review done by a role owner.","deadline":"2020-12-25T06:00:00.468Z","type":"ROLE_COMPOSITION","emailNotificationEnabled":false,"autoRevokeAllowed":false,"recommendationsEnabled":false,"filter":{"type":"CAMPAIGN_FILTER","id":"0c46fb26c6b20967a55517ee90d15b93"},"roleCompositionCampaignInfo":{"remediatorRef":{"type":"IDENTITY","id":"7ec252acbd4245548bc25df22348cb75","name":"SailPoint Support"},"roleIds":["b15d609fc5c8434b865fe552315fda8f"]}}}}}}},"responses":{"200":{"description":"Indicates that the campaign requested was successfully created and returns its representation.","content":{"application/json":{"schema":{"type":"object","title":"Campaign","allOf":[{"type":"object","title":"Slim Campaign","required":["name","description","type"],"properties":{"id":{"type":"string","readOnly":true},"name":{"description":"The campaign name. If this object is part of a template, special formatting applies; see the `/campaign-templates/{id}/generate` endpoint documentation for details.","type":"string"},"description":{"type":"string","description":"The campaign description. If this object is part of a template, special formatting applies; see the `/campaign-templates/{id}/generate` endpoint documentation for details."},"deadline":{"type":"string","format":"date-time","description":"The campaign's completion deadline."},"type":{"type":"string","description":"The type of campaign. Could be extended in the future.","enum":["MANAGER","SOURCE_OWNER","SEARCH","ROLE_COMPOSITION"]},"emailNotificationEnabled":{"type":"boolean"},"autoRevokeAllowed":{"type":"boolean"},"recommendationsEnabled":{"type":"boolean","description":"Enables IAI for this campaign. Accepts true even if the IAI product feature is off. If IAI is turned off then campaigns generated from this template will indicate false. The real value will then be returned if IAI is ever enabled for the org in the future."},"status":{"type":"string","description":"The campaign's current status.","readOnly":true,"enum":["PENDING","STAGED","CANCELING","ACTIVATING","ACTIVE","COMPLETING","COMPLETED","ERROR","ARCHIVED"]}},"example":{"id":"2c9079b270a266a60170a2779fcb0007","name":"Manager Campaign","description":"Everyone needs to be reviewed by their manager.","deadline":"2020-03-15T10:00:01.456Z","type":"MANAGER","emailNotificationEnabled":true,"autoRevokeAllowed":false,"recommendationsEnabled":false,"status":"ACTIVE"}},{"type":"object","properties":{"created":{"type":"string","readOnly":true,"format":"date-time"},"modified":{"type":"string","readOnly":true,"format":"date-time"},"filter":{"type":"object","description":"Determines which items will be included in this campaign. The default campaign filter is used if this field is left blank.","properties":{"id":{"type":"string","description":"The ID of whatever type of filter is being used."},"type":{"type":"string","enum":["CAMPAIGN_FILTER"]}}},"sunsetCommentsRequired":{"type":"boolean","description":"Determines if comments on sunset date changes are required.","default":true},"sourceOwnerCampaignInfo":{"type":"object","description":"Must be set only if the campaign type is SOURCE_OWNER.","properties":{"sourceIds":{"type":"array","description":"The list of sources to be included in the campaign.","items":{"type":"string"}}}},"searchCampaignInfo":{"type":"object","description":"Must be set only if the campaign type is SEARCH.","properties":{"type":{"type":"string","description":"The type of search campaign represented.","enum":["IDENTITY","ACCESS"]},"description":{"type":"string","description":"Describes this search campaign. Intended for storing the query used, and possibly the number of identities selected/available."},"reviewer":{"description":"If specified, this identity or governance group will be the reviewer for all certifications in this campaign. The allowed DTO types are IDENTITY and GOVERNANCE_GROUP","allOf":[{"type":"object","properties":{"type":{"description":"DTO type","type":"string","enum":["ACCOUNT_CORRELATION_CONFIG","ACCESS_PROFILE","ACCESS_REQUEST_APPROVAL","ACCOUNT","APPLICATION","CAMPAIGN","CAMPAIGN_FILTER","CERTIFICATION","CLUSTER","CONNECTOR_SCHEMA","ENTITLEMENT","GOVERNANCE_GROUP","IDENTITY","IDENTITY_PROFILE","IDENTITY_REQUEST","LIFECYCLE_STATE","PASSWORD_POLICY","ROLE","RULE","SOD_POLICY","SOURCE","TAG_CATEGORY","TASK_RESULT","REPORT_RESULT","SOD_VIOLATION","ACCOUNT_ACTIVITY"],"example":"IDENTITY"},"id":{"type":"string","description":"ID of the object to which this reference applies","example":"2c91808568c529c60168cca6f90c1313"},"name":{"type":"string","description":"Human-readable display name of the object to which this reference applies","example":"William Wilson"}}},{"type":"object"}]},"query":{"type":"string","description":"The scope for the campaign. The campaign will cover identities returned by the query and identities that have access items returned by the query. One of `query` or `identityIds` must be set."},"identityIds":{"type":"array","description":"A direct list of identities to include in this campaign. One of `identityIds` or `query` must be set.","items":{"type":"string"},"maxItems":1000},"accessConstraints":{"type":"array","description":"Further reduces the scope of the campaign by excluding identities (from `query` or `identityIds`) that do not have this access.","items":{"type":"object","properties":{"type":{"type":"string","enum":["ENTITLEMENT","ACCESS_PROFILE","ROLE"]},"ids":{"description":"Must be set only if operator is SELECTED.","type":"array","items":{"type":"string"}},"operator":{"type":"string","enum":["ALL","SELECTED"]}},"required":["type","operator"],"example":{"type":"ENTITLEMENT","ids":["2c90ad2a70ace7d50170acf22ca90010"],"operator":"SELECTED"}},"maxItems":1000}},"required":["type"]},"roleCompositionCampaignInfo":{"type":"object","description":"Optional configuration options for role composition campaigns.","properties":{"reviewer":{"description":"If specified, this identity or governance group will be the reviewer for all certifications in this campaign. The allowed DTO types are IDENTITY and GOVERNANCE_GROUP","allOf":[{"type":"object","properties":{"type":{"description":"DTO type","type":"string","enum":["ACCOUNT_CORRELATION_CONFIG","ACCESS_PROFILE","ACCESS_REQUEST_APPROVAL","ACCOUNT","APPLICATION","CAMPAIGN","CAMPAIGN_FILTER","CERTIFICATION","CLUSTER","CONNECTOR_SCHEMA","ENTITLEMENT","GOVERNANCE_GROUP","IDENTITY","IDENTITY_PROFILE","IDENTITY_REQUEST","LIFECYCLE_STATE","PASSWORD_POLICY","ROLE","RULE","SOD_POLICY","SOURCE","TAG_CATEGORY","TASK_RESULT","REPORT_RESULT","SOD_VIOLATION","ACCOUNT_ACTIVITY"],"example":"IDENTITY"},"id":{"type":"string","description":"ID of the object to which this reference applies","example":"2c91808568c529c60168cca6f90c1313"},"name":{"type":"string","description":"Human-readable display name of the object to which this reference applies","example":"William Wilson"}}},{"type":"object"}]},"roleIds":{"type":"array","description":"Optional list of roles to include in this campaign. Only one of `roleIds` and `query` may be set; if neither are set, all roles are included.","items":{"type":"string"}},"remediatorRef":{"type":"object","description":"This determines who remediation tasks will be assigned to. Remediation tasks are created for each revoke decision on items in the campaign. The only legal remediator type is 'IDENTITY', and the chosen identity must be a Role Admin or Org Admin.","properties":{"type":{"type":"string","enum":["IDENTITY"]},"id":{"type":"string","description":"The ID of the remediator."},"name":{"type":"string","description":"The name of the remediator.","readOnly":true}},"required":["type","id"]},"query":{"type":"string","description":"Optional search query to scope this campaign to a set of roles. Only one of `roleIds` and `query` may be set; if neither are set, all roles are included."},"description":{"type":"string","description":"Describes this role composition campaign. Intended for storing the query used, and possibly the number of roles selected/available."}},"required":["remediatorRef"]},"alerts":{"type":"array","description":"A list of errors and warnings that have accumulated.","readOnly":true,"items":{"type":"object","properties":{"level":{"type":"string","enum":["ERROR","WARN","INFO"]},"localizations":{"type":"array","items":{"type":"object","properties":{"locale":{"type":"string","description":"The locale for the message text, a BCP 47 language tag.","example":"en-US"},"localeOrigin":{"type":"string","enum":["DEFAULT","REQUEST"],"description":"An indicator of how the locale was selected. *DEFAULT* means the locale is the system default. *REQUEST* means the locale was selected from the request context (i.e., best match based on the *Accept-Language* header). Additional values may be added in the future without notice.","example":"DEFAULT"},"text":{"type":"string","description":"Actual text of the error message in the indicated locale.","example":"The request was syntactically correct but its content is semantically invalid."}}}}}}},"totalCertifications":{"type":"integer","description":"The total number of certifications in this campaign.","readOnly":true},"completedCertifications":{"type":"integer","description":"The number of completed certifications in this campaign.","readOnly":true},"sourcesWithOrphanEntitlements":{"type":"array","description":"A list of sources in the campaign that contain \\\"orphan entitlements\\\" (entitlements without a corresponding Managed Attribute). An empty list indicates the campaign has no orphan entitlements. Null indicates there may be unknown orphan entitlements in the campaign (the campaign was created before this feature was implemented).","readOnly":true,"items":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string","enum":["SOURCE"]},"name":{"type":"string"}}}}}}],"example":{"id":"2c9079b270a266a60170a2779fcb0007","name":"Manager Campaign","description":"Everyone needs to be reviewed by their manager.","created":"2020-03-03T22:15:13.611Z","modified":"2020-03-03T22:20:12.674Z","deadline":"2020-03-15T00:00:00.456Z","type":"MANAGER","emailNotificationEnabled":true,"autoRevokeAllowed":false,"recommendationsEnabled":false,"status":"ACTIVE","filter":{"type":"CAMPAIGN_FILTER","id":"e0adaae69852e8fe8b8a3d48e5ce757c"}}},"examples":{"Manager":{"value":{"id":"5594f43b76804a6980ece5fdccf74be7","name":"Manager Review","description":"A review of everyone's access by their manager.","deadline":"2020-12-25T06:00:00.468Z","type":"MANAGER","status":"PENDING","emailNotificationEnabled":false,"autoRevokeAllowed":false,"recommendationsEnabled":false,"created":"2022-08-02T20:21:18.421Z","modified":null,"filter":{"type":"CAMPAIGN_FILTER","id":"0fbe863c063c4c88a35fd7f17e8a3df5","sunsetCommentsRequired":true,"sourceOwnerCampaignInfo":null,"searchCampaignInfo":null,"roleCompositionCampaignInfo":null,"alerts":null,"totalCertifications":0,"completedCertifications":0,"sourcesWithOrphanEntitlements":null}}},"Search":{"value":{"id":"ec041831cb2147778b594feb9d8db44a","name":"Search Campaign","description":"Search Campaign","deadline":"2020-12-25T06:00:00.468Z","type":"SEARCH","status":"PENDING","emailNotificationEnabled":false,"autoRevokeAllowed":false,"recommendationsEnabled":false,"created":"2022-08-03T13:54:34.344Z","modified":null,"filter":{"type":"CAMPAIGN_FILTER","id":"0fbe863c063c4c88a35fd7f17e8a3df5"},"sunsetCommentsRequired":true,"sourceOwnerCampaignInfo":null,"searchCampaignInfo":{"type":"ACCESS","description":"user","reviewer":{"type":"IDENTITY","id":"7ec252acbd4245548bc25df22348cb75","name":null},"query":"user","identityIds":null,"accessConstraints":[]},"roleCompositionCampaignInfo":null,"alerts":null,"totalCertifications":0,"completedCertifications":0,"sourcesWithOrphanEntitlements":null}},"Source Owner":{"value":{"id":"fd7b76ba4ea042de8a9414aa12fc977a","name":"Source Owner","description":"Source Owner Info","deadline":"2020-12-25T06:00:00.468Z","type":"SOURCE_OWNER","status":"PENDING","emailNotificationEnabled":false,"autoRevokeAllowed":false,"recommendationsEnabled":false,"created":"2022-08-03T13:34:19.541Z","modified":null,"filter":{"type":"CAMPAIGN_FILTER","id":"0fbe863c063c4c88a35fd7f17e8a3df5"},"sunsetCommentsRequired":true,"sourceOwnerCampaignInfo":null,"sourceIds":["612b31b1a0f04aaf83123bdb80e70db6"],"searchCampaignInfo":null,"roleCompositionCampaignInfo":null,"alerts":null,"totalCertifications":0,"completedCertifications":0,"sourcesWithOrphanEntitlements":null}},"Role Composition":{"value":{"id":"3b2e2e5821e84127b6d693d41c40623b","name":"Role Composition Campaign","description":"A review done by a role owner.","deadline":"2020-12-25T06:00:00.468Z","type":"ROLE_COMPOSITION","status":"PENDING","emailNotificationEnabled":false,"autoRevokeAllowed":false,"recommendationsEnabled":false,"created":"2022-08-02T20:30:46.083Z","modified":null,"filter":{"type":"CAMPAIGN_FILTER","id":"0fbe863c063c4c88a35fd7f17e8a3df5"},"sunsetCommentsRequired":true,"sourceOwnerCampaignInfo":null,"searchCampaignInfo":null,"roleCompositionCampaignInfo":{"remediatorRef":{"type":"IDENTITY","id":"7ec252acbd4245548bc25df22348cb75","name":"SailPoint Support"},"reviewerId":null,"reviewer":null,"roleIds":["b15d609fc5c8434b865fe552315fda8f"],"query":null,"description":null},"alerts":null,"totalCertifications":0,"completedCertifications":0,"sourcesWithOrphanEntitlements":null}}}}}},"400":{"description":"Client Error - Returned if the request body is invalid.","content":{"application/json":{"schema":{"type":"object","properties":{"detailCode":{"type":"string","description":"Fine-grained error code providing more detail of the error.","example":"400.1 Bad Request Content"},"trackingId":{"type":"string","description":"Unique tracking id for the error.","example":"e7eab60924f64aa284175b9fa3309599"},"messages":{"type":"array","description":"Generic localized reason for error","items":{"type":"object","properties":{"locale":{"type":"string","description":"The locale for the message text, a BCP 47 language tag.","example":"en-US"},"localeOrigin":{"type":"string","enum":["DEFAULT","REQUEST"],"description":"An indicator of how the locale was selected. *DEFAULT* means the locale is the system default. *REQUEST* means the locale was selected from the request context (i.e., best match based on the *Accept-Language* header). Additional values may be added in the future without notice.","example":"DEFAULT"},"text":{"type":"string","description":"Actual text of the error message in the indicated locale.","example":"The request was syntactically correct but its content is semantically invalid."}}}},"causes":{"type":"array","description":"Plain-text descriptive reasons to provide additional detail to the text provided in the messages field","items":{"type":"object","properties":{"locale":{"type":"string","description":"The locale for the message text, a BCP 47 language tag.","example":"en-US"},"localeOrigin":{"type":"string","enum":["DEFAULT","REQUEST"],"description":"An indicator of how the locale was selected. *DEFAULT* means the locale is the system default. *REQUEST* means the locale was selected from the request context (i.e., best match based on the *Accept-Language* header). Additional values may be added in the future without notice.","example":"DEFAULT"},"text":{"type":"string","description":"Actual text of the error message in the indicated locale.","example":"The request was syntactically correct but its content is semantically invalid."}}}}}}}}},"401":{"description":"Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"description":"A message describing the error","example":"JWT validation failed: JWT is expired"}}}}}},"403":{"description":"Forbidden - Returned if the user you are running as, doesn't have access to this end-point.","content":{"application/json":{"schema":{"type":"object","properties":{"detailCode":{"type":"string","description":"Fine-grained error code providing more detail of the error.","example":"400.1 Bad Request Content"},"trackingId":{"type":"string","description":"Unique tracking id for the error.","example":"e7eab60924f64aa284175b9fa3309599"},"messages":{"type":"array","description":"Generic localized reason for error","items":{"type":"object","properties":{"locale":{"type":"string","description":"The locale for the message text, a BCP 47 language tag.","example":"en-US"},"localeOrigin":{"type":"string","enum":["DEFAULT","REQUEST"],"description":"An indicator of how the locale was selected. *DEFAULT* means the locale is the system default. *REQUEST* means the locale was selected from the request context (i.e., best match based on the *Accept-Language* header). Additional values may be added in the future without notice.","example":"DEFAULT"},"text":{"type":"string","description":"Actual text of the error message in the indicated locale.","example":"The request was syntactically correct but its content is semantically invalid."}}}},"causes":{"type":"array","description":"Plain-text descriptive reasons to provide additional detail to the text provided in the messages field","items":{"type":"object","properties":{"locale":{"type":"string","description":"The locale for the message text, a BCP 47 language tag.","example":"en-US"},"localeOrigin":{"type":"string","enum":["DEFAULT","REQUEST"],"description":"An indicator of how the locale was selected. *DEFAULT* means the locale is the system default. *REQUEST* means the locale was selected from the request context (i.e., best match based on the *Accept-Language* header). Additional values may be added in the future without notice.","example":"DEFAULT"},"text":{"type":"string","description":"Actual text of the error message in the indicated locale.","example":"The request was syntactically correct but its content is semantically invalid."}}}}}},"examples":{"403":{"summary":"An example of a 403 response object","value":{"detailCode":"403 Forbidden","trackingId":"b21b1f7ce4da4d639f2c62a57171b427","messages":[{"locale":"en-US","localeOrigin":"DEFAULT","text":"The server understood the request but refuses to authorize it."}]}}}}}},"429":{"description":"Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"description":"A message describing the error","example":" Rate Limit Exceeded "}}}}}},"500":{"description":"Internal Server Error - Returned if there is an unexpected error.","content":{"application/json":{"schema":{"type":"object","properties":{"detailCode":{"type":"string","description":"Fine-grained error code providing more detail of the error.","example":"400.1 Bad Request Content"},"trackingId":{"type":"string","description":"Unique tracking id for the error.","example":"e7eab60924f64aa284175b9fa3309599"},"messages":{"type":"array","description":"Generic localized reason for error","items":{"type":"object","properties":{"locale":{"type":"string","description":"The locale for the message text, a BCP 47 language tag.","example":"en-US"},"localeOrigin":{"type":"string","enum":["DEFAULT","REQUEST"],"description":"An indicator of how the locale was selected. *DEFAULT* means the locale is the system default. *REQUEST* means the locale was selected from the request context (i.e., best match based on the *Accept-Language* header). Additional values may be added in the future without notice.","example":"DEFAULT"},"text":{"type":"string","description":"Actual text of the error message in the indicated locale.","example":"The request was syntactically correct but its content is semantically invalid."}}}},"causes":{"type":"array","description":"Plain-text descriptive reasons to provide additional detail to the text provided in the messages field","items":{"type":"object","properties":{"locale":{"type":"string","description":"The locale for the message text, a BCP 47 language tag.","example":"en-US"},"localeOrigin":{"type":"string","enum":["DEFAULT","REQUEST"],"description":"An indicator of how the locale was selected. *DEFAULT* means the locale is the system default. *REQUEST* means the locale was selected from the request context (i.e., best match based on the *Accept-Language* header). Additional values may be added in the future without notice.","example":"DEFAULT"},"text":{"type":"string","description":"Actual text of the error message in the indicated locale.","example":"The request was syntactically correct but its content is semantically invalid."}}}}}},"examples":{"500":{"summary":"An example of a 500 response object","value":{"detailCode":"500.0 Internal Fault","trackingId":"b21b1f7ce4da4d639f2c62a57171b427","messages":[{"locale":"en-US","localeOrigin":"DEFAULT","text":"An internal fault occurred."}]}}}}}}},"method":"post","path":"/campaigns","servers":[{"url":"https://{tenant}.api.identitynow.com/beta","description":"This is the beta API server.","variables":{"tenant":{"default":"sailpoint","description":"This is the name of your tenant, typically your company's name."}}}],"security":[{"oauth2":[]}],"securitySchemes":{"oauth2":{"type":"oauth2","description":"OAuth2 Bearer token (JWT). See [IdentityNow REST API Authentication](https://developer.sailpoint.com/docs/authentication.html) for more information.\n- Directions for generating a [personal access token](https://developer.sailpoint.com/docs/authentication.html#personal-access-tokens)\n- Directions using [client credentials flow](https://developer.sailpoint.com/docs/authentication.html#client-credentials-grant-flow)\n- Directions for using [authorization code flow](https://developer.sailpoint.com/docs/authentication.html#authorization-code-grant-flow)\n\nWhich authentication method should I choose? See our [guide](https://developer.sailpoint.com/docs/authentication.html#which-oauth-2-0-grant-flow-should-i-use)\n\nLearn more about how to find your `tokenUrl` and `authorizationUrl` [in our docs](https://developer.sailpoint.com/docs/authentication.html#finding-your-tenant-s-oauth-details)\n","flows":{"clientCredentials":{"tokenUrl":"https://tenant.api.identitynow.com/oauth/token","scopes":{"sp:scopes:default":"default scope","sp:scopes:all":"access to all scopes"}},"authorizationCode":{"authorizationUrl":"https://tenant.identitynow.com/oauth/authorize","tokenUrl":"https://tenant.api.identitynow.com/oauth/token","scopes":{"sp:scopes:default":"default scope","sp:scopes:all":"access to all scopes"}}}}},"jsonRequestBodyExample":{"id":"2c9079b270a266a60170a2779fcb0007","name":"Manager Campaign","description":"Everyone needs to be reviewed by their manager.","created":"2020-03-03T22:15:13.611Z","modified":"2020-03-03T22:20:12.674Z","deadline":"2020-03-15T00:00:00.456Z","type":"MANAGER","emailNotificationEnabled":true,"autoRevokeAllowed":false,"recommendationsEnabled":false,"status":"ACTIVE","filter":{"type":"CAMPAIGN_FILTER","id":"e0adaae69852e8fe8b8a3d48e5ce757c"}},"info":{"contact":{"email":"developers@sailpoint.com","name":"Developer Relations","url":"https://developer.sailpoint.com/discuss"},"description":"These are the public, beta APIs for SailPoint's SaaS services and are subject to change.","title":"SailPoint - Beta SaaS API","version":"3.1.0-beta"},"postman":{"name":"Create a campaign","description":{"content":"Creates a new Certification Campaign with the information provided in the request body.","type":"text/plain"},"url":{"path":["campaigns"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"method":"POST","body":{"mode":"raw","raw":"\"\"","options":{"raw":{"language":"json"}}}}}
sidebar_class_name: "post api-method"
info_path: docs/sailpoint-api-beta/sail-point-beta-saa-s-api
---
import ApiTabs from "@theme/ApiTabs";
import MimeTabs from "@theme/MimeTabs";
import ParamsItem from "@theme/ParamsItem";
import ResponseSamples from "@theme/ResponseSamples";
import SchemaItem from "@theme/SchemaItem"
import SchemaTabs from "@theme/SchemaTabs";
import DiscriminatorTabs from "@theme/DiscriminatorTabs";
import TabItem from "@theme/TabItem";
## Create a campaign
Creates a new Certification Campaign with the information provided in the request body.
Request Body required
filter object
sourceOwnerCampaignInfo object
searchCampaignInfo object
reviewer object
accessConstraints object[]
roleCompositionCampaignInfo object
reviewer object
remediatorRef object
alerts object[]
localizations object[]
sourcesWithOrphanEntitlements object[]