Procurify Permissions API
The permissions API from Procurify — 2 operation(s) for permissions.
The permissions API from Procurify — 2 operation(s) for permissions.
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/procurify-permissions-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: Procurify API Documentation Permissions API
version: ''
description: '# Disclaimer
- Procurify’s API is evolving and is subject to change at any time.'
servers:
- url: https://{user_domain}.procurify.com
description: Your Procurify domain
variables:
user_domain:
default: your-domain
description: Your procurify domain
tags:
- name: Permissions
paths:
/api/v3/permissions/:
get:
operationId: permissions_list
summary: Get Available User Permissions
parameters:
- in: query
name: format
schema:
type: string
enum:
- csv
- json
- name: order_by
required: false
in: query
description: Which field to use when ordering the results.
schema:
type: string
- name: page
required: false
in: query
description: A page number within the paginated result set.
schema:
type: integer
- name: page_size
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- name: search
required: false
in: query
description: A search term.
schema:
type: string
tags:
- Permissions
security:
- RemoteAuthentication: []
- M2MAuthentication: []
- BasicAuthentication: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedPermissionReadList'
examples:
UserPermissions:
value:
metadata:
pagination:
count: 10
next: null
previous: null
page_size: 10
num_pages: 1
current_page: 1
data:
- id: 507
codename: add_bill
summary: User Permissions
text/csv:
schema:
$ref: '#/components/schemas/PaginatedPermissionReadList'
description: ''
/api/v3/permissions/groups/:
get:
operationId: permissions_groups_list
summary: Get Available System Roles
parameters:
- in: query
name: format
schema:
type: string
enum:
- csv
- json
- name: order_by
required: false
in: query
description: Which field to use when ordering the results.
schema:
type: string
- name: page
required: false
in: query
description: A page number within the paginated result set.
schema:
type: integer
- name: page_size
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- in: query
name: permission
schema:
type: string
- name: search
required: false
in: query
description: A search term.
schema:
type: string
- in: query
name: type
schema:
type: integer
- in: query
name: user
schema:
type: integer
- in: query
name: userprofile
schema:
type: integer
tags:
- Permissions
security:
- RemoteAuthentication: []
- M2MAuthentication: []
- BasicAuthentication: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedPermissionGroupReadList'
examples:
SystemRoles:
value:
metadata:
pagination:
count: 10
next: null
previous: null
page_size: 10
num_pages: 1
current_page: 1
data:
- id: 5
name: Approver
user_count: 0
permissions:
- id: 900
codename: view_reports
- id: 982
codename: view_reports_budgets
- id: 977
codename: view_reports_expenses_by_department
- id: 976
codename: view_reports_orders_by_department
- id: 975
codename: view_reports_orders_by_user
- id: 974
codename: view_reports_orders_by_vendor
- id: 101
codename: add_expensereport
- id: 887
codename: approve_expensereport
- id: 71
codename: add_order
- id: 886
codename: approve_order
- id: 95
codename: add_travel
- id: 888
codename: approve_travel
type: 1
summary: System Roles
text/csv:
schema:
$ref: '#/components/schemas/PaginatedPermissionGroupReadList'
description: ''
components:
schemas:
PermissionGroupRead:
type: object
properties:
id:
type: integer
readOnly: true
name:
type: string
maxLength: 150
user_count:
type: integer
readOnly: true
permissions:
type: array
items:
$ref: '#/components/schemas/PermissionRead'
readOnly: true
type:
type: integer
tier:
type: string
readOnly: true
required:
- name
- type
PaginatedPermissionGroupReadList:
type: object
properties:
metadata:
type: object
properties:
pagination:
type: object
properties:
count:
type: integer
example: 10
next:
type:
- string
- 'null'
format: uri
example: null
previous:
type:
- string
- 'null'
format: uri
example: null
page_size:
type: integer
example: 10
num_pages:
type: integer
example: 1
current_page:
type: integer
example: 1
example:
pagination:
count: 10
next: null
previous: null
page_size: 10
num_pages: 1
current_page: 1
data:
type: array
items:
$ref: '#/components/schemas/PermissionGroupRead'
PermissionRead:
type: object
properties:
id:
type: integer
readOnly: true
codename:
type: string
maxLength: 100
tier:
type: string
description: 'Get the tier for this permission from PermissionMeta.
Returns "Basic" if PermissionMeta doesn''t exist, otherwise returns the tier label ("Basic" or "Pro").'
readOnly: true
required:
- codename
PaginatedPermissionReadList:
type: object
properties:
metadata:
type: object
properties:
pagination:
type: object
properties:
count:
type: integer
example: 10
next:
type:
- string
- 'null'
format: uri
example: null
previous:
type:
- string
- 'null'
format: uri
example: null
page_size:
type: integer
example: 10
num_pages:
type: integer
example: 1
current_page:
type: integer
example: 1
example:
pagination:
count: 10
next: null
previous: null
page_size: 10
num_pages: 1
current_page: 1
data:
type: array
items:
$ref: '#/components/schemas/PermissionRead'
securitySchemes:
BasicAuthentication:
type: http
scheme: basic
M2MAuthentication:
type: http
scheme: bearer
bearerFormat: JWT
RemoteAuthentication:
type: oauth2
flows:
authorizationCode:
authorizationUrl: https://<your-domain>.procurify.com/oauth/authorize
tokenUrl: https://<your-domain>.procurify.com/oauth/token
scopes: {}
cookieAuth:
type: apiKey
in: cookie
name: sessionid