Adobe Suite Privacy jobs API

Privacy jobs process customer privacy requests, including access/delete and opt-out requests. Each privacy job is tracked under a specific regulation.

Operations 4

GET /jobs List privacy jobs #
POST /jobs Create a privacy job #
GET /jobs/{JOB_ID} Retrieve a privacy job #
GET /jobs/{JOB_ID}/content Retrieve customer access information #

Documentation

📖
Documentation
https://developer.adobe.com/photoshop/api/docs/
📖
Authentication
https://developer.adobe.com/developer-console/docs/guides/authentication/
📖
Documentation
https://developer.adobe.com/lightroom/api/docs/
📖
Documentation
https://developer.adobe.com/illustrator/api/docs/
📖
Documentation
https://developer.adobe.com/indesign/docs/
📖
Documentation
https://developer.adobe.com/document-services/docs/overview/pdf-services-api/
📖
Documentation
https://developer.adobe.com/document-services/docs/overview/pdf-extract-api/
📖
GettingStarted
https://developer.adobe.com/document-services/docs/overview/pdf-extract-api/gettingstarted/
📖
Documentation
https://developer.adobe.com/document-services/docs/overview/pdf-accessibility-auto-tag-api/
📖
Documentation
https://developer.adobe.com/analytics-apis/docs/
📖
APIReference
https://developer.adobe.com/analytics-apis/docs/2.0/
📖
Documentation
https://developer.adobe.com/firefly-services/docs/
📖
APIReference
https://developer.adobe.com/firefly-services/docs/api/
📖
Documentation
https://developer.adobe.com/audio-video-firefly-services/
📖
GettingStarted
https://developer.adobe.com/audio-video-firefly-services/getting-started/
📖
Documentation
https://developer.adobe.com/creative-cloud-libraries/docs/
📖
APIReference
https://developer.adobe.com/creative-cloud-libraries/docs/api/
📖
Documentation
https://developer.adobe.com/express/embed-sdk/docs/guides/
📖
APIReference
https://developer.adobe.com/express/embed-sdk/docs/v4/
📖
GettingStarted
https://developer.adobe.com/express/embed-sdk/docs/guides/quickstart/
📖
Documentation
https://developer.adobe.com/experience-platform-apis/
📖
GettingStarted
https://experienceleague.adobe.com/en/docs/experience-platform/landing/platform-apis/api-guide
📖
Documentation
https://developer.adobe.com/marketo-apis/
📖
Authentication
https://experienceleague.adobe.com/en/docs/marketo-developer/marketo/rest/authentication
📖
Documentation
https://developer.adobe.com/commerce/docs/
📖
GettingStarted
https://developer.adobe.com/commerce/webapi/get-started/
📖
Documentation
https://developer.adobe.com/experience-cloud/cloud-manager/
📖
Documentation
https://developer.adobe.com/journey-optimizer-apis/
📖
Documentation
https://developer.adobe.com/workfront-apis/
📖
Documentation
https://developer.adobe.com/firefly-services/docs/substance3d/
📖
Documentation
https://developer.adobe.com/data-collection-apis/
📖
Documentation
https://developer.adobe.com/adobe-status/
📖
Documentation
https://developer.adobe.com/vip-marketplace/

Specifications

Other Resources

🔗
Pricing
https://developer.adobe.com/document-services/pricing/
🔗
SDKs
https://developer.adobe.com/document-services/docs/overview/pdf-services-api/sdks/
🔗
ReleaseNotes
https://developer.adobe.com/document-services/docs/overview/pdf-services-api/releasenotes
🔗
Guides
https://developer.adobe.com/analytics-apis/docs/2.0/guides/
🔗
Guides
https://developer.adobe.com/firefly-services/docs/guides/
🔗
Usage Notes
https://developer.adobe.com/audio-video-firefly-services/getting_started/usage/
🔗
Overview
https://developer.adobe.com/creative-cloud-libraries/docs/overview/
🔗
Integration Guide
https://developer.adobe.com/creative-cloud-libraries/docs/integrate/
🔗
API Fundamentals
https://experienceleague.adobe.com/en/docs/experience-platform/landing/platform-apis/api-fundamentals
🔗
Developer Guide
https://experienceleague.adobe.com/en/docs/marketo-developer/marketo/home
🔗
REST API
https://experienceleague.adobe.com/en/docs/marketo-developer/marketo/rest/rest-api
🔗
REST API
https://developer.adobe.com/commerce/webapi/rest/
🔗
GraphQL API
https://developer.adobe.com/commerce/webapi/graphql-api/
🔗
REST API Reference
https://developer.adobe.com/commerce/webapi/reference/rest/paas/
🔗
GraphQL
https://raw.githubusercontent.com/api-evangelist/adobe-suite/refs/heads/main/graphql/adobe-suite-graphql.md
🔗
Webhooks
https://developer.adobe.com/experience-cloud/cloud-manager/guides/getting-started/create-event-integration/
🔗
StatusPage
https://status.adobe.com/

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/adobe-suite-privacy-jobs-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

adobe-suite-privacy-jobs-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Privacy Service Privacy jobs API
  description: "Adobe Experience Platform Privacy Service provides a common, centralized facilitation of access/delete requests and opt-out-of-sale requests for private data on Adobe Experience Cloud applications. The service includes a UI for selecting and creating requests, a business layer that processes incoming and outgoing traffic, a data store for audit and logging information, and temporary storage for data retrieval while requests are pending or waiting to be viewed.\nUse the Privacy Service API to create or manage privacy jobs to access or delete user information, manage opt-out requests, and more. - **Related documentation**:\n  - [Privacy Service documentation](http://www.adobe.com/go/privacy-overview-en)\n\n- **Visualize API calls with Postman (a free, third-party software)**:\n  - [Privacy Service API Postman collection on GitHub](https://github.com/adobe/experience-platform-postman-samples/blob/master/apis/experience-platform/Privacy%20Service%20API.postman_collection.json)\n  - [Video guide for creating the Postman environment](https://video.tv.adobe.com/v/28832)\n  - [Steps for importing environments and collections in Postman](https://learning.getpostman.com/docs/postman/collection_runs/using_environments_in_collection_runs/)\n\n- **API paths**:\n  - PLATFORM Gateway URL: https://<span>platform.adobe.io/\n  - Base path for this API: /data/core/privacy\n  - Example of a complete path: https://<span>platform.adobe.io/data/core/privacy/jobs\n\n- **Required headers**:\n  - All calls require the headers `Authorization`, `x-gw-ims-org-id`, and `x-api-key`. For more information on how to obtain these values, see the guide on [getting started with the Privacy Service API](http://www.adobe.com/go/privacy-getting-started-en).\n  - All requests with a payload in the request body (such as POST, PUT, and PATCH calls) must include the header `Content-Type` with a value of `application/json`.\n\n- **API error handling**:\n    - Refer to the Experience Platform API troubleshooting guide for [FAQs](https://experienceleague.adobe.com/docs/experience-platform/landing/troubleshooting.html#faq), [API status codes](https://experienceleague.adobe.com/docs/experience-platform/landing/troubleshooting.html#api-status-codes), and [request header errors](https://experienceleague.adobe.com/docs/experience-platform/landing/troubleshooting.html#request-header-errors)."
  version: '1.0'
servers:
- url: https://{environment}.adobe.io/data/core/privacy
  variables:
    environment:
      default: platform
      enum:
      - platform
      - platform-stage
tags:
- name: Privacy jobs
  description: Privacy jobs process customer privacy requests, including access/delete and opt-out requests. Each privacy job is tracked under a specific regulation.
paths:
  /jobs:
    get:
      tags:
      - Privacy jobs
      summary: List privacy jobs
      description: '>**NOTE**: For more information on using this operation, see the [privacy jobs endpoint guide](https://experienceleague.adobe.com/docs/experience-platform/privacy/api/privacy-jobs.html) on Experience League.'
      operationId: listPrivacyJobs
      parameters:
      - name: Authorization
        in: header
        description: The access token provided after authorization in the format `Bearer {ACCESS_TOKEN}`. See the guide on [getting started with the Privacy Service API](http://www.adobe.com/go/privacy-getting-started-en) for steps on how to obtain this value.
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: Your specific API key for your unique Platform configuration (`{API_KEY}`). See the guide on [getting started with the Privacy Service API](http://www.adobe.com/go/privacy-getting-started-en) for steps on how to obtain this value.
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        in: header
        description: A unique identifier for your organization (`{IMS_ORG}`). See the guide on [getting started with the Privacy Service API](http://www.adobe.com/go/privacy-getting-started-en) for steps on how to obtain this value.
        required: true
        schema:
          type: string
      - name: regulation
        in: query
        description: The privacy regulation to return jobs from.
        required: true
        schema:
          type: string
          enum:
          - apa_aus
          - ccpa
          - cpa_co_usa
          - cpra_ca_usa
          - ctdpa_ct_usa
          - dpdpa
          - fdbr_fl_usa
          - gdpr
          - hipaa_usa
          - icdpa_ia_usa
          - lgpd_bra
          - mcdpa_mn_usa
          - mcdpa_mt_usa
          - mhmda_wa_usa
          - ndpa_ne_usa
          - nhpa_nh_usa
          - njdpa_nj_usa
          - nzpa_nzl
          - ocpa_or_usa
          - pdpa_tha
          - ql25
          - tdpsa_tx_usa
          - tipa_tn_usa
          - ucpa_ut_usa
          - vcdpa_va_usa
      - name: size
        in: query
        description: The number of jobs to return in the response body.
        schema:
          maximum: 100
          type: integer
          format: int32
          default: 25
      - name: page
        in: query
        description: The page index to return results from when the result count exceeds the limit defined by the `size` parameter.
        schema:
          type: integer
          format: int32
          default: 1
      - name: status
        in: query
        description: Filters jobs by processing status.
        schema:
          type: string
          enum:
          - complete
          - processing
          - submitted
          - error
      - name: fromDate
        in: query
        description: Limits results to those processed after a specified date. Accepts the format YYYY-MM-DD. If this parameter (and a corresponding `toDate`) is not provided, the resulting jobs default to the last seven days.
        schema:
          type: string
      - name: toDate
        in: query
        description: Limits results to those processed before a specified date. Accepts the format YYYY-MM-DD. If this parameter (and a corresponding `fromDate`) is not provided, the resulting jobs default to the last seven days.
        schema:
          type: string
      - name: filterDate
        in: query
        description: Limits results to those processed on a specified date. Accepts the format YYYY-MM-DD.
        schema:
          type: string
      responses:
        '200':
          x-summary: Success
          description: A successful response returns a list of jobs under the provided regulation. Note that data for previously created jobs is only available for retrieval within 30 days of the job's completion date.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PrivacyJobListResponse'
        '400':
          x-summary: Bad request
          description: The request is incomplete or malformed.
          content: {}
        '403':
          x-summary: Missing access permissions
          description: You do not have access permissions for this endpoint.
          content: {}
        '404':
          x-summary: Not found
          description: The requested resource could not be found. Double-check that your ID values are accurate.
          content: {}
        '500':
          x-summary: Internal service error
          description: There was an internal server error. Try the request again in a few minutes, and contact Adobe Support if the problem persists.
          content: {}
    post:
      tags:
      - Privacy jobs
      summary: Create a privacy job
      description: '>**NOTE**: For more information on using this operation, see the [privacy jobs endpoint guide](https://experienceleague.adobe.com/docs/experience-platform/privacy/api/privacy-jobs.html) on Experience League.'
      operationId: createPrivacyJob
      parameters:
      - name: Authorization
        in: header
        description: The access token provided after authorization in the format `Bearer {ACCESS_TOKEN}`. See the guide on [getting started with the Privacy Service API](http://www.adobe.com/go/privacy-getting-started-en) for steps on how to obtain this value.
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: Your specific API key for your unique Platform configuration (`{API_KEY}`). See the guide on [getting started with the Privacy Service API](http://www.adobe.com/go/privacy-getting-started-en) for steps on how to obtain this value.
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        in: header
        description: A unique identifier for your organization (`{IMS_ORG}`). See the guide on [getting started with the Privacy Service API](http://www.adobe.com/go/privacy-getting-started-en) for steps on how to obtain this value.
        required: true
        schema:
          type: string
      - name: Content-Type
        in: header
        description: The type of content being sent in the body of the request. Must be set to `application/json` when providing JSON request payloads.
        required: true
        schema:
          type: string
      requestBody:
        description: The payload for a privacy creation request must include company context information, a list of user IDs and namespaces, and a valid regulation code. See the [privacy jobs endpoint guide](https://docs.adobe.com/content/help/en/experience-platform/privacy/api/privacy-jobs.html) for more details on how to format privacy request payloads.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PrivacyJobRequestDetails'
        required: true
      responses:
        '202':
          x-summary: Success
          description: The jobs were successfully created. The response body contains the details of the newly created privacy jobs.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PrivacyJobCreateList'
        '400':
          x-summary: Bad request
          description: The request is incomplete or malformed.
          content: {}
        '403':
          x-summary: Missing access permissions
          description: You do not have access permissions for this endpoint.
          content: {}
        '404':
          x-summary: Not found
          description: The requested resource could not be found. Double-check that your ID values are accurate.
          content: {}
        '500':
          x-summary: Internal service error
          description: There was an internal server error. Try the request again in a few minutes, and contact Adobe Support if the problem persists.
          content: {}
      x-codegen-request-body-name: body
  /jobs/{JOB_ID}:
    get:
      tags:
      - Privacy jobs
      summary: Retrieve a privacy job
      description: '>**NOTE**: For more information on using this operation, see the [privacy jobs endpoint guide](https://experienceleague.adobe.com/docs/experience-platform/privacy/api/privacy-jobs.html) on Experience League.'
      operationId: retrievePrivacyJob
      parameters:
      - name: JOB_ID
        in: path
        description: The unique ID of a privacy job.
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: The access token provided after authorization in the format `Bearer {ACCESS_TOKEN}`. See the guide on [getting started with the Privacy Service API](http://www.adobe.com/go/privacy-getting-started-en) for steps on how to obtain this value.
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: Your specific API key for your unique Platform configuration (`{API_KEY}`). See the guide on [getting started with the Privacy Service API](http://www.adobe.com/go/privacy-getting-started-en) for steps on how to obtain this value.
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        in: header
        description: A unique identifier for your organization (`{IMS_ORG}`). See the guide on [getting started with the Privacy Service API](http://www.adobe.com/go/privacy-getting-started-en) for steps on how to obtain this value.
        required: true
        schema:
          type: string
      responses:
        '200':
          x-summary: Success
          description: A successful response returns the details of the privacy job.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PrivacyJobDetails'
        '400':
          x-summary: Bad request
          description: The request is incomplete or malformed.
          content: {}
        '403':
          x-summary: Missing access permissions
          description: You do not have access permissions for this endpoint.
          content: {}
        '404':
          x-summary: Not found
          description: The requested resource could not be found. Double-check that your ID values are accurate.
          content: {}
        '500':
          x-summary: Internal service error
          description: There was an internal server error. Try the request again in a few minutes, and contact Adobe Support if the problem persists.
          content: {}
  /jobs/{JOB_ID}/content:
    get:
      tags:
      - Privacy jobs
      summary: Retrieve customer access information
      description: 'Use the `/jobs/{JOB_ID}/content` endpoint to securely retrieve access information for your customers. The download URL provided in the response to a `/jobs/{JOB_ID}` GET request points to an Adobe service endpoint. You can then make a GET request to `/jobs/{JOB_ID}/content` to return your customer data in JSON format. This method implements multiple layers of authentication and access control to enhance security.

        >**NOTE**: For more information on using this operation, see the [content endpoint guide](https://experienceleague.adobe.com/docs/experience-platform/privacy/api/content.html) on Experience League.

        '
      operationId: retrievePrivacyJobContent
      parameters:
      - name: JOB_ID
        in: path
        description: The unique identifier for the privacy job whose data is being requested.
        required: true
        schema:
          type: string
          example: dbe3a6a6-f8e6-11ee-a365-8d1d6df81cc5
      - name: Authorization
        in: header
        description: The access token provided after authorization in the format `Bearer {ACCESS_TOKEN}`.
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: Your specific API key for your unique Platform configuration (`{API_KEY}`).
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        in: header
        description: A unique identifier for your organization (`{IMS_ORG}`).
        required: true
        schema:
          type: string
      - name: Accept
        in: header
        description: Indicates the expected response format. Must be set to `application/json`.
        required: true
        schema:
          type: string
      responses:
        '200':
          x-summary: Success
          description: A successful response returns the requested access information in a ZIP file. Extracted data can be in JSON or other formats.
          content: {}
        '400':
          x-summary: Bad request
          description: The request is incomplete or malformed. Ensure all required parameters are provided and formatted correctly.
          content: {}
        '403':
          x-summary: Missing access permissions
          description: You do not have access permissions for this endpoint. Ensure your authentication credentials are correct and have sufficient privileges.
          content: {}
        '404':
          x-summary: Not found
          description: The requested resource could not be found. Double-check that your ID values are accurate.
          content: {}
        '500':
          x-summary: Internal service error
          description: There was an internal server error. Try the request again in a few minutes, and contact Adobe Support if the problem persists.
          content: {}
components:
  schemas:
    PrivacyJobCreateList:
      type: object
      properties:
        requestId:
          type: string
          description: An ID for the API request that generated the jobs. If a `requestId` was not provided in the request payload, the system generates one automatically.
          example: 16203318964318668RX-054
        totalRecords:
          type: integer
          description: The number of jobs returned in the response.
          format: int64
        jobDetails:
          type: array
          description: Lists the details of each of the created privacy jobs.
          items:
            $ref: '#/components/schemas/PrivacyJobCreateDetails'
      example:
        requestId: 16203318964318668RX-054
        totalRecords: 3
        jobs:
        - jobId: 6f40987c-e535-40bd-aad6-e9414978a095
          customer:
            user:
              key: user12345
              action:
              - access
              userIDs:
              - namespace: email
                value: ajones@acme.com
                type: standard
                namespaceId: 6
                isDeletedClientSide: false
              - namespace: loyaltyAccount
                value: 12AD45FE30R29
                type: integrationCode
                isDeletedClientSide: false
        - jobId: 6f258e0c-3a5c-4095-b379-e5e26b69ddec
          customer:
            user:
              key: DavidSmith
              action:
              - access
              userIDs:
              - namespace: email
                value: dsmith@acme.com
                type: standard
                namespaceId: 6
                isDeletedClientSide: false
              - namespace: ECID
                value: '443636576799758681021090721276'
                type: standard
                namespaceId: 4
                isDeletedClientSide: false
        - jobId: cb62112d-aed8-4024-aa5c-312309e3dec7
          customer:
            user:
              key: user12345
              action:
              - delete
              userIDs:
              - namespace: email
                value: ajones@acme.com
                type: standard
                namespaceId: 6
                isDeletedClientSide: false
              - namespace: loyaltyAccount
                value: 12AD45FE30R29
                type: integrationCode
                isDeletedClientSide: false
    PrivacyProductJobResponse:
      type: object
      properties:
        status:
          type: string
          description: The product-specific status code for the job.
        results:
          $ref: '#/components/schemas/JsonNode'
        message:
          type: string
          description: The response message from the product.
      description: Contains response data from the product.
    PrivacyJobRequestDetails:
      required:
      - companyContexts
      - include
      - users
      type: object
      properties:
        companyContexts:
          minItems: 1
          type: array
          description: 'An array containing authentication information for your organization. It is **required** that one of the identifiers uses `imsOrgId` as its namespace, with its value containing the unique ID for your organization.


            Additional identifiers can be product-specific company qualifiers (such as Adobe Campaign) which identify an integration with an Adobe application belonging to your organization. Potential values include account names, client codes, tenant IDs, or other application identifiers.'
          items:
            $ref: '#/components/schemas/PrivacyCompanyContextDetails'
        users:
          minItems: 1
          type: array
          description: An array containing a collection of at least one user whose information you would like to access or delete. A maximum of 1000 user IDs can be provided in a single request.
          items:
            $ref: '#/components/schemas/PrivacyUserDetails'
        include:
          minItems: 1
          uniqueItems: true
          type: array
          description: An array containing the [product code strings](https://experienceleague.adobe.com/docs/experience-platform/privacy/api/appendix.html?lang=en#accepted-product-values) of each Adobe Experience Cloud application to process the request under. Only include values for products that your organization has an integration with. If multiple product values are included, separate jobs are created for each product.
          items:
            type: string
        expandIds:
          type: string
          description: An optional property that, when set to `true`, represents an optimization for processing the IDs in the specified applications (currently only supported by Adobe Analytics). If omitted, this value defaults to `false`.
          enum:
          - 'true'
          - 'false'
        priority:
          type: string
          description: An optional property used by Adobe Analytics that sets the priority for processing requests. Accepted values are `normal` and `low`. If priority is omitted, the default behavior is `normal`.
          enum:
          - low
          - normal
        region:
          type: string
          description: The region code for the request.
        regulation:
          type: string
          description: "The regulation for the privacy job. The following values are accepted:\n\n\n  - APA (Australia)\n  - CCPA (California)\n  - CPA (Colorado)\n  - CPRA (California)\n  - CTDPA (Connecticut)\n  - DPDPA (Delaware)\n  - FDBR (Florida)\n  - GDPR (European Union)\n  - HIPAA (United States)\n  - ICDPA (Iowa)\n  - LGPD (Brazil)\n  - MCDPA (Minnesota)\n  - MCDPA (Montana)\n  - MHMDA (Washington)\n  - NDPA (Nebraska)\n  - NHDPA (New Hampshire)\n  - NJDPA (New Jersey)\n  - NZPA (New Zealand)\n  - OCPA (Oregon)\n  - PDPA (Thailand)\n  - QL25 (Quebec)\n  - TDPSA (Texas)\n  - TIPA (Tennessee)\n  - UCPA (Utah)\n  - VCDPA (Virginia)"
          enum:
          - apa_aus
          - ccpa
          - cpa_co_usa
          - cpra_ca_usa
          - ctdpa_ct_usa
          - dpdpa
          - fdbr_fl_usa
          - gdpr
          - hipaa_usa
          - icdpa_ia_usa
          - lgpd_bra
          - mcdpa_mn_usa
          - mcdpa_mt_usa
          - mhmda_wa_usa
          - ndpa_ne_usa
          - nhpa_nh_usa
          - njdpa_nj_usa
          - nzpa_nzl
          - ocpa_or_usa
          - pdpa_tha
          - ql25
          - tdpsa_tx_usa
          - tipa_tn_usa
          - ucpa_ut_usa
          - vcdpa_va_usa
      example:
        companyContexts:
        - namespace: imsOrgID
          value: '{IMS_ORG}'
        users:
        - key: DavidSmith
          action:
          - access
          userIDs:
          - namespace: email
            value: dsmith@acme.com
            type: standard
          - namespace: ECID
            type: standard
            value: '443636576799758681021090721276'
            isDeletedClientSide: false
        - key: user12345
          action:
          - access
          - delete
          userIDs:
          - namespace: email
            value: ajones@acme.com
            type: standard
          - namespace: loyaltyAccount
            value: 12AD45FE30R29
            type: integrationCode
        include:
        - Analytics
        - AudienceManager
        expandIds: false
        priority: normal
        regulation: ccpa
    PrivacyJobBasic:
      type: object
      properties:
        jobId:
          type: string
          description: A unique, system-generated ID for the job.
        requestId:
          type: string
          description: An ID for the API request that generated the job. If a `requestId` was not provided in the request payload, the system generates one automatically.
        userKey:
          type: string
          description: An ID for the user that created the privacy job.
        action:
          type: string
          description: The action that the job performs on the specified user's data, either `access` or `delete`.
          enum:
          - access
          - delete
        status:
          type: string
          description: The current processing status of the job.
        submittedBy:
          type: string
          description: An ID for the user that submitted the privacy job.
        createdDate:
          type: string
          description: A timestamp for when the job was created.
          format: date-time
        lastModifiedDate:
          type: string
          description: A timestamp for when the job was last modified.
          format: date-time
    PrivacyJobCreateDetails:
      type: object
      properties:
        jobId:
          type: string
          description: A unique, system-generated ID for the job.
        customer:
          type: object
          properties:
            user:
              type: object
              description: Contains information about the customer whose data is being processed by the job.
              allOf:
              - $ref: '#/components/schemas/PrivacyUserDetails'
          description: Contains a single `user` object which captures information about the customer whose data is being processed by the job.
    PrivacyCompanyContextDetails:
      required:
      - namespace
      - value
      type: object
      properties:
        namespace:
          type: string
          description: The namespace for the company identifier (for example, `imsOrg`).
        value:
          type: string
          description: The value for the company identifier. The value associated with the `imsOrg` namespace must match the value of the `x-gw-ims-org-id` authentication header.
    PrivacyJobDetails:
      allOf:
      - $ref: '#/components/schemas/PrivacyJobBasic'
      - type: object
        properties:
          jobId:
            type: string
            description: A unique, system-generated ID for the job.
          requestId:
            type: string
            description: An ID for the API request that generated the job. If a `requestId` was not provided in the request payload, the system generates one automatically.
          userKey:
            type: string
            description: An ID for the user that created the privacy job.
          action:
            type: string
            description: The action that the job performs on the specified user's data, either `access` or `delete`.
            enum:
            - access
            - delete
          status:
            type: string
            description: The current processing status of the job.
          submittedBy:
            type: string
            description: An ID for the user that submitted the privacy job.
          qualifiedCount:
            type: integer
            description: The number of records that qualified for the privacy job based on the provided user identity information.
            format: int64
          createdDate:
            type: string
            description: A timestamp for when the job was created.
            format: date-time
          lastModifiedDate:
            type: string
            description: A timestamp for when the job was last modified.
            format: date-time
          userIds:
            type: array
            description: A list of identities for the data subject (user) associated with the job.
            items:
              $ref: '#/components/schemas/PrivacyUserIdDetails'
          productResponses:
            type: array
            description: A list of responses from the Adobe Experience Cloud products that were specified in the privacy request.
            items:
              $ref: '#/components/schemas/PrivacyProductResponseDetails'
          downloadUrl:
            type: string
            description: A download URL for the job.
          childJobs:
            uniqueItems: true
            type: array
            description: A list of child jobs associated with the privacy job.
            items:
              $ref: '#/components/schemas/PrivacyJobDetails'
          regulation:
            type: string
            description: The privacy regulation that the job was created under.
    PrivacyProductResponseDetails:
      type: object
      properties:
        product:
          type: string
          description: The [product code](https://experienceleague.adobe.com/docs/experience-platform/privacy/api/appendix.html?lang=en#accepted-product-values) for the Adobe Experience Cloud application associated with the response data.
        retryCount:
          type: integer
          description: The number of times the privacy job has been attempted for the product in question.
          format: int32
        processedDate:
          type: string
          description: A timestamp of when the job was processed by the product.
          format: date-time
        productStatusResponse:
          $ref: '#/components/schemas/PrivacyProductJobResponse'
    PrivacyJobListResponse:
      type: object
      properties:
        totalRecords:
          type: integer
          description: The number of jobs returned in the response.
          format: int64
        jobDetails:
          type: array
          description: A list of returned jobs for the specified regulation. Each listed object contains details about the privacy job in question.
          items:
            $ref: '#/components/schemas/PrivacyJobBasic'
      example:
        totalRecords: 4
        jobDetails:
        - jobId: 3f9d2e11-4c7a-481f-8f58-f49a113fd158
          requestId: 16197332222128898RX-318
          userKey: '{USER_ID}'
          action: delete
          status: complete
          submittedBy: '{USER_ID}'
          createdDate: 04/29/2021 09:53 PM GMT
          lastModifiedDate: 04/29/2021 11:20 PM GMT
        - jobId: 8ce192aa-7ba7-4975-b82e-8db2faadf14d
          requestId: 16190370131972548RX-946
          userKey: '{USER_ID}'
          action: access
          status: complete
          submittedBy: '{USER_ID}'
          createdDate: 04/21/2021 08:30 PM GMT
          lastModifiedDate: 04/21/2021 09:52 PM GMT
        - jobId: 15c1e737-9512-4d5d-a67f-0c6b8db24745
          requestId: 16189645482190022RX-311
          userKey: '{USER_ID}'
          action: access
          status: complete
          submittedBy: '{USER_ID}'
          createdDate: 04/21/2021 12:22 AM GMT
          lastModifiedDate: 04/21/2021 09:52 PM GMT
        - jobId: cb8aab65-ba38-4703-ab8f-d035156fbaa9
          requestId: 16189644965236664RX-029
          userKey: '{USER_ID}'
          action: access
          status: complete
          submittedBy: '{USER_ID}'
          createdDate: 04/21/2021 12:21 AM GMT
          lastModifiedDate: 04/21/2021 09:52 PM GMT
    JsonNode:
      type: object
      properties:
        array:
          type: boolean
          description: Indicates whether the JSON Node contains an array value.
        'null':
          type: boolean
          description: Indicates whether the JSON Node contains a null value.
        number:
          type: boolean
          description: Indicates whether the JSON Node contains a number value.
        valueNode:
          type: boolean
          description: Indicates whether the JSON Node's `value` attribute is populated.
        containerNode:
          type: boolean
          description: Indicates whether the container node is present.
        missingNode:
          type: boolean
          description: Indicates whether the JSON Node is missing when one was otherwise expected.
        object:
          type: boolean
          description: Indicates whether the JSON Node contains an object value.
        nodeType:
          type: string
          description: The type of JSON Node.
          enum:
          - ARRAY
          - BINARY
          - BOOLEAN
          - MISSING
          - 'NULL'
          - NUMBER
          - OBJECT
          - POJO
          - STRING
        pojo:
          type: boolean
          description: Indicates whether the JSON Node contains a plain old Java object (POJO) value.
        integralNumber:
          type: boolean
          description: Indicates whether the JSON Node contains an integral number value

# --- truncated at 32 KB (35 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/adobe-suite/refs/heads/main/openapi/adobe-suite-privacy-jobs-api-openapi.yml