---
sourceDocument: Xanadu-API-Referenz
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/de-DE/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - de-DE

ft:publication_title :

    - Xanadu-API-Referenz

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# Project Portfolio Management-API

# Project Portfolio Management-API {#ariaid-title1}

* Freigeben Version: Xanadu
* 
* Aktualisiert 1. August 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 3 Minuten Lesedauer

Die Project Portfolio Management- API bietet Endpunkte für den Massenimport von Kostenplänen und Projektaufgaben.
Für den Zugriff auf diese API ist das Plugin „PPM Standard" (com.snc.financial_planning_pmo) erforderlich. Der anrufende Benutzer muss über die Rolle it_project_manager verfügen.

Diese API wird im `Now` -Namespace bereitgestellt.

## Projekt-Portfoliomanagement -- POST /now/ppm/insert_cost_plans {#ariaid-title2}

Erstellt Kostenpläne in der Kostenplantabelle \[cost_plan\].

### URL-Format

Standard-URL: /api/now/ppm/insert_cost_plans

### Unterstützte Anforderungsparameter

{#ppm-POST-costplans__entry__2}

| Name | Beschreibung |
|-|-|
| Keine |   |
[Tabelle : 1. Pfadparameter]

{#ppm-POST-costplans__entry__6}

| Name | Beschreibung |
|-|-|
| Keine |   |
[Tabelle : 2. Abfrageparameter]

{#ppm-POST-costplans__entry__10}

| Name | Beschreibung |
|-|-|
| end_fiscal_period | Erforderlich. Sys_id der endenden Geschäftsperiode für den Kostenplan. Befindet sich in der Tabelle „Geschäftsperioden" \[fiscal_period\]. Datentyp: Zeichenfolge |
| name | Erforderlich. Name des Kostenplans Datentyp: Zeichenfolge |
| resource_type | Erforderlich. Sys_id des Ressourcentyps. Befindet sich in der Tabelle „Ressourcentypdefinition" \[resource_type_definition\]. Datentyp: Zeichenfolge |
| start_fiscal_period | Erforderlich. Sys_id der ersten Geschäftsperiode für den Kostenplan. Befindet sich in der Tabelle „Geschäftsperioden" \[fiscal_period\]. Datentyp: Zeichenfolge |
| Aufgabe | Erforderlich. Sys_id des Projekts oder Bedarfs für den Kostenplan Befindet sich in der Tabelle „Projekt" \[pm_project\] oder „Bedarf" \[dmn_demand\]. Datentyp: Zeichenfolge |
| Einheit_Kosten | Erforderlich. Stückkosten für den Kostenplan. Datentyp: Zeichenfolge |
[Tabelle : 3. Parameter des Anforderungstexts (JSON)]

### Header

Die folgenden Anforderungs- und Antwortkopfzeilen gelten nur für diese HTTP-Aktion oder für diese Aktion auf eine bestimmte Weise. Eine Liste der allgemeinen Header, die in der REST API verwendet werden, finden Sie unter [Unterstützte REST API-Header](https://servicenow-prod.fluidtopics.net/bHLogaRspC43ztA1sd~MJg "REST (REpresentational State Transfer) ist eine einfache zustandslose Architektur, die Standards zwischen Computersystemen im Web bereitstellt, sodass sie leichter miteinander kommunizieren können.").
{#ppm-POST-costplans__entry__24}{#ppm-POST-costplans__accept-JSON-only-entry-RESTAPI}{#ppm-POST-costplans__content_type-JSON-only-entry-RESTAPI}

| Kopfzeile | Beschreibung |
|-|-|
| Akzeptieren | Datenformat des Antworttexts. Unterstützt nur application/json. |
| Content-Type | Datenformat des Anforderungstexts. Unterstützt nur application/json. |
[Tabelle : 4. Anforderungskopfzeilen]

{#ppm-POST-costplans__entry__30}

| Kopfzeile | Beschreibung |
|-|-|
| Keine |   |
[Tabelle : 5. Antwortkopfzeilen]

### Statuscodes

Die folgenden Statuscodes gelten für diese HTTP-Aktion. Eine Liste der möglichen Statuscodes, die in der REST API verwendet werden, finden Sie unter [HTTP-Antwortcodes](https://servicenow-prod.fluidtopics.net/bHLogaRspC43ztA1sd~MJg "REST (REpresentational State Transfer) ist eine einfache zustandslose Architektur, die Standards zwischen Computersystemen im Web bereitstellt, sodass sie leichter miteinander kommunizieren können.")der REST-API.
{#ppm-POST-costplans__entry__34}{#ppm-POST-costplans__entry-200-status-code}{#ppm-POST-costplans__entry-401-status-code}

| Statuscode | Beschreibung |
|-|-|
| 200 | Erfolgreich. Die Anforderung wurde erfolgreich verarbeitet. |
| 401 | Nicht autorisiert. Die Anmeldeinformationen sind falsch oder wurden nicht übergeben. |
[Tabelle : 6. Statuscodes]

### Parameter des Antwort-Haupttexts (JSON)

{#ppm-POST-costplans__entry__40}

| Name | Beschreibung |
|-|-|
| Ergebnis | Objekt mit Informationen zum Status der API-Anforderung. Datentyp: Objekt "result": { "status": "String" } |
| result.status | Status der API-Anforderung. Datentyp: Zeichenfolge |
[ ]

### cURL-Anforderung

In diesem Beispiel werden zwei Kostenpläne importiert.

    curl "https://instance.servicenow.com/api/now/ppm/insert_cost_plans" \
    --request POST \
    --header "Accept:application/json" \
    --header "Content-Type:application/json" \
    --data "[
       {
          "name": "Cost plan 1",
          "resource_type": "3d16eaf79330120064f572edb67ffb04",
          "start_fiscal_period": "ed47e5d90b3010108d9ac74363673a98",
          "end_fiscal_period": "0a47e5d90b3010108d9ac74363673afd",
          "task": "0fc9f992db601810852ca6dc13961951",
          "unit_cost": 1200
       },
       {
          "name": "Cost plan 2",
          "resource_type": "3d16eaf79330120064f572edb67ffb04",
          "start_fiscal_period": "ed47e5d90b3010108d9ac74363673a98",
          "end_fiscal_period": "7947e5d90b3010108d9ac74363673ac9",
          "task": "0fc9f992db601810852ca6dc13961951",
          "unit_cost": 3600
       }
    ]" \
    --user 'username':'password'

Antworttext.

    {
       "result": {
          "status": "success"
       }
    }

## Projekt-Portfoliomanagement -- POST /now/ppm/insert_project_tasks {#ariaid-title3}

Erstellt ein Projekt und zugehörige Projektaufgaben.
Projekte werden in der Tabelle „Projekt" \[pm_project\] und Projektaufgaben werden in der Tabelle „Projektaufgabe" \[pm_project_task\] erstellt.

### URL-Format

Standard-URL: /api/now/ppm/insert_project_tasks

### Unterstützte Anforderungsparameter

{#ppm-POST-projecttasks__table_m1f_w5s_bwb__entry__2}

| Name | Beschreibung |
|-|-|
| Keine |   |
[Tabelle : 7. Pfadparameter]

{#ppm-POST-projecttasks__table_m1f_w5s_bwb} {#ppm-POST-projecttasks__table_nhq_w5s_bwb__entry__2}

| Name | Beschreibung |
|-|-|
| Keine |   |
[Tabelle : 8. Abfrageparameter]

{#ppm-POST-projecttasks__table_nhq_w5s_bwb} {#ppm-POST-projecttasks__table_qqf_x5s_bwb__entry__2}

| Name | Beschreibung |
|-|-|
| child_tasks | Array von Aufgaben für das Projekt. Jede Aufgabe ist ein Objekt im Array. Datentyp: Array "child_tasks": [ { "child_tasks": [Array], "external_id": "String", "short_description": "String" } ] |
| child_tasks.child_tasks | Array von untergeordneten Aufgaben für die übergeordnete Aufgabe. Jede untergeordnete Aufgabe ist ein Objekt im Array. Jede untergeordnete Aufgabe kann ein eigenes Array von untergeordneten Aufgaben haben. Datentyp: Array "child_tasks": [ { "child_tasks": [Array], "external_id": "String", "short_description": "String" } ] |
| child_tasks.external_id | Eindeutiger Bezeichner der Aufgabe aus dem externen System. Datentyp: Zeichenfolge |
| child_tasks.short_description | Kurze Beschreibung der Aufgabe. Datentyp: Zeichenfolge |
| end_date | Enddatum für das Projekt Datentyp: Zeichenfolge |
| external_id | Eindeutiger Bezeichner des Projekts aus dem externen System. Datentyp: Zeichenfolge |
| short_description | Kurzbeschreibung des Projekts. Datentyp: Zeichenfolge |
| start_date | Startdatum für das Projekt Datentyp: Zeichenfolge |
[Tabelle : 9. Parameter des Anforderungstexts (JSON)]

{#ppm-POST-projecttasks__table_qqf_x5s_bwb}

### Header

Die folgenden Anforderungs- und Antwortkopfzeilen gelten nur für diese HTTP-Aktion oder für diese Aktion auf eine bestimmte Weise. Eine Liste der allgemeinen Header, die in der REST API verwendet werden, finden Sie unter [Unterstützte REST API-Header](https://servicenow-prod.fluidtopics.net/bHLogaRspC43ztA1sd~MJg "REST (REpresentational State Transfer) ist eine einfache zustandslose Architektur, die Standards zwischen Computersystemen im Web bereitstellt, sodass sie leichter miteinander kommunizieren können.").
{#ppm-POST-projecttasks__table_gtc_jbt_bwb__entry__2}{#ppm-POST-projecttasks__accept-JSON-only-entry-RESTAPI}{#ppm-POST-projecttasks__content_type-JSON-only-entry-RESTAPI}

| Kopfzeile | Beschreibung |
|-|-|
| Akzeptieren | Datenformat des Antworttexts. Unterstützt nur application/json. |
| Content-Type | Datenformat des Anforderungstexts. Unterstützt nur application/json. |
[Tabelle : 10. Anforderungskopfzeilen]

{#ppm-POST-projecttasks__table_gtc_jbt_bwb} {#ppm-POST-projecttasks__entry__34}

| Kopfzeile | Beschreibung |
|-|-|
| Keine |   |
[Tabelle : 11. Antwortkopfzeilen]

### Statuscodes

Die folgenden Statuscodes gelten für diese HTTP-Aktion. Eine Liste der möglichen Statuscodes, die in der REST API verwendet werden, finden Sie unter [HTTP-Antwortcodes](https://servicenow-prod.fluidtopics.net/bHLogaRspC43ztA1sd~MJg "REST (REpresentational State Transfer) ist eine einfache zustandslose Architektur, die Standards zwischen Computersystemen im Web bereitstellt, sodass sie leichter miteinander kommunizieren können.")der REST-API.
{#ppm-POST-projecttasks__table_acm_3bt_bwb__entry__2}{#ppm-POST-projecttasks__entry-200-status-code}{#ppm-POST-projecttasks__entry-401-status-code}

| Statuscode | Beschreibung |
|-|-|
| 200 | Erfolgreich. Die Anforderung wurde erfolgreich verarbeitet. |
| 401 | Nicht autorisiert. Die Anmeldeinformationen sind falsch oder wurden nicht übergeben. |
[Tabelle : 12. Statuscodes]

{#ppm-POST-projecttasks__table_acm_3bt_bwb}

### Parameter des Antwort-Haupttexts (JSON) {#ppm-POST-projecttasks__section_vtd_kbt_bwb}

{#ppm-POST-projecttasks__table_wtd_kbt_bwb__entry__2}

| Name | Beschreibung |
|-|-|
| Ergebnis | Objekt mit Informationen zum Status der API-Anforderung. Datentyp: Objekt "result": { "status": "String" } |
| result.status | Status der API-Anforderung. Datentyp: Zeichenfolge |
[ ]

{#ppm-POST-projecttasks__table_wtd_kbt_bwb}  

### cURL-Anforderung

In diesem Beispiel wird ein Projekt mit zwei Aufgaben (zpq_T1 und zpq_T2) importiert. Die erste Aufgabe enthält mehrere untergeordnete Aufgaben, und die zweite Aufgabe weist Abhängigkeiten von den untergeordneten Aufgaben der ersten Aufgabe auf.

    curl "https://instance.servicenow.com/api/now/ppm/insert_project_tasks" \
    --request POST \
    --header "Accept:application/json" \
    --header "Content-Type:application/json" \
    --data "{
       "start_date": "2022-05-18 08:00:00",
       "end_date": "2022-05-18 17:00:00",
       "short_description": "zpq_Project",
       "external_id": "0",
       "child_tasks": [
          {
             "short_description": "zpq_T1",
             "external_id": "1",
             "child_tasks": [
                {
                   "external_id": "1.1",
                   "short_description": "zpq_T11",
                   "child_tasks": [
                      {
                         "external_id": "1.1.1",
                         "short_description": "zpq_T111"
                      }
                   ]
                },
                {
                   "external_id": "1.2",
                   "short_description": "zpq_T12"
                }
             ]
          },
          {
             "short_description": "zpq_T2",
             "external_id": "2",
             "dependencies": [
                {
                   "external_id": "1.1",
                   "lag": -1,
                   "type": "fs"
                },
                {
                   "external_id": "1.2",
                   "lag": 2,
                   "type": "fs"
                }
             ]
          }
       ]
    }" \
    --user 'username':'password'

Antworttext.

    {
       "result": {
          "status": "success"
       }
    }


