PlanRadar List V2 API
Get the lists that you defined in your account
Get the lists that you defined in your account
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/planradar-list-v2-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
title: PlanRadar's API Documentation Approval Requests V2 List V2 API
version: '2.0'
description: "Welcome to PlanRadar's API documentation, here you can find all the details about our APIs as well as test them online.<br />\n <h5>Rate Limits</h5>30 requests per minute per account, aggregated across all tokens.<br />\n If the threshold is exceeded, a 5-minute cooldown is applied to the account, aggregated across all tokens.<br />\n During the cooldown period, further requests may be rejected until the cooldown ends.<br />\n In rare cases, an endpoint may have a different rate limit than the default. When that happens, the differing limit will be explicitly stated in the API documentation for that endpoint.<br />\n <h5>Access Key</h5>In order to be able to access any API you have to create an access token.Therefore you have to follow these steps:-\n <ul>\n <li>Go to your profile page and click on Personal Access Tokens on the left side bar</li><li>Click on the 'Create Access Token' top right button in order to create a new access token.</li><li>Copy the created token and paste it into the field that pops up when you click on the 'Authorize' button </li><li>Note: you can copy the token only once.</li><li>Now you can easily access any API</li>\n </ul>\n <h5>V2 APIs</h5>We are currently working on upgrading all our APIs to v2, and we recommend that you use v2 APIs if it is available.\n <p>V2 APIs are faster, robust and more flexible than v1 APIs</p>"
servers:
- url: /
tags:
- name: List V2
description: Get the lists that you defined in your account
paths:
/api/v2/{customer_id}/lists/{id}:
put:
summary: Updates specific list
tags:
- List V2
description: "Updates a specific list by its id. This endpoint uses a draft-based workflow that requires 3 sequential requests with the same temp-uuid:\n\n**Step 1 - Initialize draft:** Send `init_draft: true` with a client-generated `temp-uuid` to copy existing entries into a draft table.\n\n**Step 2 - Modify entries:** Send one or more requests with the same `temp-uuid` to add, update, or delete entries in the draft.\n- To add/update an entry: include an `item` object with `name`, `uuid`, `parent-id`, and `order`.\n- To delete an entry: include `entry-uuid` with the UUID of the entry to remove.\n\n**Step 3 - Save changes:** Send `save: true` with the same `temp-uuid` to persist the draft changes to the actual list.\n\nThe `temp-uuid` must be a valid UUID and unique for each update session. It is generated by the client.\n\n---\n\n**curl Examples:**\n\n**Step 1 — Initialize draft:**\n<pre>\ncurl -X PUT \"https://app.planradar.com/api/v2/{customer_id}/lists/{list_id}\" \\\n -H \"X-PlanRadar-API-Key: YOUR_API_KEY\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\n \"data\": {\n \"attributes\": {\n \"temp-uuid\": \"c7982fd2-cf0c-4806-a3ef-f87447e80e5f\",\n \"init_draft\": true\n }\n }\n }'\n</pre>\n\n**Step 2 — Add a new entry:**\n<pre>\ncurl -X PUT \"https://app.planradar.com/api/v2/{customer_id}/lists/{list_id}\" \\\n -H \"X-PlanRadar-API-Key: YOUR_API_KEY\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\n \"data\": {\n \"attributes\": {\n \"temp-uuid\": \"c7982fd2-cf0c-4806-a3ef-f87447e80e5f\",\n \"item\": {\n \"name\": \"New Entry\",\n \"uuid\": \"5101ebd3-922c-4830-85aa-b7b6be97d2ca\",\n \"parent-id\": null,\n \"order\": 0\n }\n }\n }\n }'\n</pre>\n\n**Step 3 — Save changes:**\n<pre>\ncurl -X PUT \"https://app.planradar.com/api/v2/{customer_id}/lists/{list_id}\" \\\n -H \"X-PlanRadar-API-Key: YOUR_API_KEY\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\n \"data\": {\n \"attributes\": {\n \"temp-uuid\": \"c7982fd2-cf0c-4806-a3ef-f87447e80e5f\",\n \"save\": true\n }\n }\n }'\n</pre>\n"
security:
- apiKey: []
parameters:
- name: customer_id
in: path
required: true
schema:
type: string
- name: id
in: path
description: id of the list
required: true
schema:
type: string
responses:
'406':
description: Unsupported Accept Header
requestBody:
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
attributes:
type: object
properties:
name:
type: string
description: Name of the list
temp-uuid:
type: string
format: uuid
description: Client-generated UUID, must be unique per update session
example: c7982fd2-cf0c-4806-a3ef-f87447e80e5f
init_draft:
type: boolean
description: Set to true to initialize a draft from the current list entries (Step 1)
save:
type: boolean
description: Set to true to persist draft changes to the actual list (Step 3)
item:
type: object
description: A single entry to add or update in the draft (Step 2)
properties:
id:
type: string
description: Entry UUID, required when updating an existing entry
name:
type: string
description: Name of the entry
uuid:
type: string
format: uuid
description: Client-generated UUID for a new entry
parent-id:
type:
- string
- 'null'
description: UUID of the parent entry for hierarchical lists, null for root entries
order:
type: integer
description: Position/order of the entry in the list
entry-uuid:
type: string
description: UUID of the entry to delete from the draft (Step 2)
/api/v2/{customer_id}/projects/{project_id}/ticket_types/lists/:
get:
summary: Returns all lists of a specific project
tags:
- List V2
description: This API returns all lists that are attached to the ticket types that are used by a specific project based on its id.
parameters:
- name: customer_id
in: path
required: true
schema:
type: string
- name: project_id
in: path
required: true
schema:
type: string
- name: last_sync_date
in: query
description: is a Unix Timestamp. If it is set, only lists that were created after that timestamp will be returned
schema:
type: string
- name: page
in: query
description: ' sets the number of pages for the returned lists'
schema:
type: integer
- name: pagesize
in: query
description: ' sets the number of lists that should be returned per page<br/>Maximum is 500, default is 100'
schema:
type: integer
- name: disable_relations
in: query
description: ' Returns only the ticket_type_lists without loading the list entries, which would make the API faster '
schema:
type: boolean
responses:
'404':
description: Lists Not Found
'406':
description: Unsupported Accept Header
components:
securitySchemes:
apiKey:
type: apiKey
name: X-PlanRadar-API-Key
in: header
externalDocs:
description: Find out more about our development portal
url: https://www.planradar.com/knowledge-base-overview/