Skip to main content
POST
/
v1
/
purposes
Create a purpose (status defaults to draft)
curl --request POST \
  --url https://gateway.inviolet.ai/v1/purposes \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "label": "customer_support_lookup",
  "intent_class": "reporting",
  "id": "<string>",
  "display_name": "Customer Support Lookup",
  "description": "<string>",
  "status": "draft",
  "approval_required": true,
  "ttl_minutes": 123,
  "data_elements": [
    {
      "data_source_id": "<string>",
      "path": "<string>"
    }
  ],
  "created_at": "2023-11-07T05:31:56Z",
  "updated_at": "2023-11-07T05:31:56Z"
}
'

Authorizations

Authorization
string
header
required

API key minted at /settings/api-keys. Three scopes: read_only, policy_write, admin.

Body

application/json
label
string
required
Example:

"customer_support_lookup"

intent_class
enum<string>
required
Available options:
reporting,
export,
admin,
lookup,
analysis,
write,
other
id
string
display_name
string
Example:

"Customer Support Lookup"

description
string
status
enum<string>
Available options:
draft,
active,
archived
approval_required
boolean
ttl_minutes
integer | null
data_elements
object[]
created_at
string<date-time>
updated_at
string<date-time>

Response

Created.