# Procurify API Documentation API

> Procurify API Documentation API on Apizie: 49 endpoints (Authenticate with OAuth, Get Bills by ID, Get list of Company Payment Methods, Create Company Payment Method, …) returned as clean JSON through one API key. Send your own provider key in the x-upstream-key header. Call it over REST at https://apizie.tech/v1/business:procurify/{endpoint} or from Claude, ChatGPT and Cursor through the Apizie MCP server. Free plan: 1,000 requests a month.

- Project key: `business:procurify`
- Category: Business
- Status: byok
- Source: https://www.procurify.com
- Page: https://apizie.tech/api/business/procurify
- OpenAPI: https://apizie.tech/api/business/procurify/openapi.json

# Disclaimer - Procurify’s API is evolving and is subject to change at any time. Additionally, aspects of the API are undocumented, including certain methods, events, and properties. Given that both documented and…

## Endpoints

### Authenticate with OAuth
`POST https://apizie.tech/v1/business:procurify/oauth-token-request` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| body | object | no | JSON request body |

### Get Bills by ID
`GET https://apizie.tech/v1/business:procurify/ap-bills-get-by-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| id | string | yes |  |

### Get list of Company Payment Methods
`GET https://apizie.tech/v1/business:procurify/ap-company-payment-methods-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| currency | integer | no |  |
| format | string | no |  |
| order_by | string | no | Which field to use when ordering the results. |
| page | integer | no | A page number within the paginated result set. |
| page_size | integer | no | Number of results to return per page. |
| search | string | no | A search term. |
| type | integer | no |  |

### Create Company Payment Method
`POST https://apizie.tech/v1/business:procurify/ap-create-company-payment-method` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| body | object | yes | JSON request body |

### Get Unbilled/Billed Items
`GET https://apizie.tech/v1/business:procurify/ap-items-get` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| bill | integer | no |  |
| bill_uuid | string | no |  |
| billed | boolean | no |  |
| budget | integer | no |  |
| created_at_0 | string | no |  |
| created_at_1 | string | no |  |
| department | number | no |  |
| exclude | string | no |  |
| format | string | no |  |
| location | number | no |  |
| order_by | string | no | Which field to use when ordering the results. |
| page | integer | no | A page number within the paginated result set. |
| page_size | integer | no | Number of results to return per page. |
| received_on_0 | string | no |  |
| received_on_1 | string | no |  |
| reimburse | boolean | no |  |
| requester | number | no |  |
| search | string | no | A search term. |
| vendor | integer | no |  |

### Get Payments
`GET https://apizie.tech/v1/business:procurify/ap-get-payments` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| approver | string | no |  |
| currency | integer | no |  |
| format | string | no |  |
| order_by | string | no | Which field to use when ordering the results. |
| page | integer | no | A page number within the paginated result set. |
| page_size | integer | no | Number of results to return per page. |
| payment_date_0 | string | no |  |
| payment_date_1 | string | no |  |
| payment_method__type | integer | no |  |
| search | string | no | A search term. |

### Get Approver Choices
`GET https://apizie.tech/v1/business:procurify/ap-payments-approver-choices-retrieve` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| id | integer | yes | A unique integer value identifying this payment. |

### Get list of Vendor Payment Methods
`GET https://apizie.tech/v1/business:procurify/ap-vendor-payment-methods-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| currency | integer | no |  |
| format | string | no |  |
| order_by | string | no | Which field to use when ordering the results. |
| page | integer | no | A page number within the paginated result set. |
| page_size | integer | no | Number of results to return per page. |
| search | string | no | A search term. |
| type | integer | no |  |
| vendor | integer | no |  |

### Create Vendor Payment Method
`POST https://apizie.tech/v1/business:procurify/ap-create-vendor-payment-method` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| body | object | yes | JSON request body |

### Get Active/Inactive Currencies
`GET https://apizie.tech/v1/business:procurify/currencies-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| active | boolean | no |  |
| base | boolean | no |  |
| description | string | no |  |
| format | string | no |  |
| name | string | no |  |
| order_by | string | no | Which field to use when ordering the results. |
| page | integer | no | A page number within the paginated result set. |
| page_size | integer | no | Number of results to return per page. |
| rate | number | no |  |
| search | string | no | A search term. |

### Get All Order Items
`GET https://apizie.tech/v1/business:procurify/requisitions-get-all-order-items` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| account | integer | no |  |
| account_code | integer | no | Account Code |
| active | boolean | no |  |
| approved_datetime_0 | string | no | Approved Date |
| approved_datetime_1 | string | no | Approved Date |
| approved_price | number | no |  |
| approved_quantity | number | no |  |
| approver | number | no |  |
| approver_id | number | no |  |
| branch | integer | no | Location |
| catalog | boolean | no |  |
| catalog_item | string | no | A comma-separated list of integers. |
| currency | integer | no |  |
| department | integer | no | Department |
| departments | string | no | A comma-separated list of integers. |
| exclude | string | no | A comma-separated list of integers. |
| exclude_punchout | boolean | no |  |
| format | string | no |  |
| fulfilment_status | string | no |  |
| is_purchased | boolean | no |  |
| is_recurring | boolean | no |  |
| last_changed_by | integer | no |  |
| last_modified_0 | string | no | Last Modified Date |
| last_modified_1 | string | no | Last Modified Date |
| lineComment | string | no |  |
| location | integer | no | Location |
| locations | string | no | A comma-separated list of integers. |
| name | string | no |  |
| num | string | no |  |
| orderNum | integer | no |  |
| orderNum__status | integer | no |  |
| order_by | string | no | Which field to use when ordering the results. |
| order_created_date_0 | string | no | Order Created Date |
| order_created_date_1 | string | no | Order Created Date |
| page | integer | no | A page number within the paginated result set. |
| page_size | integer | no | Number of results to return per page. |
| po_created_date_0 | string | no | Purchased Date |
| po_created_date_1 | string | no | Purchased Date |
| po_vendor | integer | no | Purchased Vendor |
| pref_vendor | integer | no |  |
| price | number | no |  |
| purchase_agreement | number | no |  |
| purchased_date_0 | string | no | Purchased Date |
| purchased_date_1 | string | no | Purchased Date |
| purchaser | integer | no |  |
| quantity | number | no |  |
| receivedFailQty | number | no |  |
| receivedPassQty | number | no |  |
| requester | integer | no | Requester |
| search | string | no | A search term. |
| sku | string | no |  |
| status | integer | no |  |
| type | integer | no |  |
| unit | string | no |  |

### Get All Orders
`GET https://apizie.tech/v1/business:procurify/requisitions-get-all-orders` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| branch | integer | no |  |
| dateRequired | string | no |  |
| date_0 | string | no | Date |
| date_1 | string | no | Date |
| department | integer | no |  |
| format | string | no |  |
| has_blanket_order_items | boolean | no |  |
| is_punchout | boolean | no |  |
| lineCount | integer | no |  |
| location | integer | no |  |
| modified_date_0 | string | no | Last Modified Date |
| modified_date_1 | string | no | Last Modified Date |
| order_by | string | no | Which field to use when ordering the results. |
| page | integer | no | A page number within the paginated result set. |
| page_size | integer | no | Number of results to return per page. |
| required_date_0 | string | no | Date Required |
| required_date_1 | string | no | Date Required |
| search | string | no | A search term. |
| status | integer | no |  |
| totalPrice | number | no |  |

### Get Locations
`GET https://apizie.tech/v1/business:procurify/locations-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| active | boolean | no |  |
| format | string | no |  |
| headquarter | boolean | no |  |
| order_by | string | no | Which field to use when ordering the results. |
| page | integer | no | A page number within the paginated result set. |
| page_size | integer | no | Number of results to return per page. |
| search | string | no | A search term. |

### Create New Location
`POST https://apizie.tech/v1/business:procurify/locations-create` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| body | object | yes | JSON request body |

### Get Location by ID
`GET https://apizie.tech/v1/business:procurify/locations-retrieve` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| id | string | yes |  |

### Get Purchase Order by ID (with items)
`GET https://apizie.tech/v1/business:procurify/purchaseorders-get-by-id-with-items` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| id | string | yes | Procurify PO or UUID |

### Get Purchase Orders by Role & Status
`GET https://apizie.tech/v1/business:procurify/purchaseorders-get-by-role-and-status` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| contract | integer | no | Contract |
| date_0 | string | no | YYYY-MM-DD (start date): Filter POs by Created Date range |
| date_1 | string | no | YYYY-MM-DD (end date): Filter POs by Created Date range |
| expiry_date_0 | string | no | Expiry Date |
| expiry_date_1 | string | no | Expiry Date |
| has_blanket_order_items | boolean | no |  |
| modified_date_0 | string | no | YYYY-MM-DD (start date): Filter POs by Last Modified Date range |
| modified_date_1 | string | no | YYYY-MM-DD (end date): Filter POs by Last Modified Date range |
| order_by | string | no | Sort by field |
| page | integer | no |  |
| page_size | integer | no |  |
| pref_vendor | integer | no | ID of Vendor |
| promise_date_0 | string | no | YYYY-MM-DD (start date): Filter POs by Promise Date range |
| promise_date_1 | string | no | YYYY-MM-DD (end date): Filter POs by Promise Date range |
| role | string | yes |  |
| status | string | yes |  |

### Get Account Codes
`GET https://apizie.tech/v1/business:procurify/accountcodes-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| active | boolean | no |  |
| code | string | no |  |
| format | string | no |  |
| is_parent | boolean | no |  |
| order_by | string | no | Which field to use when ordering the results. |
| page | integer | no | A page number within the paginated result set. |
| page_size | integer | no | Number of results to return per page. |
| search | string | no | A search term. |

### Create Account Codes
`POST https://apizie.tech/v1/business:procurify/accountcodes-create-account-codes` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| body | object | yes | JSON request body |

### Update Account Code
`POST https://apizie.tech/v1/business:procurify/accountcodes-update-account-code` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| id | integer | yes | A unique integer value identifying this account code. |
| body | object | yes | JSON request body |

### Get Accounts
`GET https://apizie.tech/v1/business:procurify/accounts-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| account_code | integer | no |  |
| active | boolean | no |  |
| department | integer | no |  |
| departments | string | no | A comma-separated list of integers. |
| format | string | no |  |
| id | integer | no |  |
| in_effect | boolean | no |  |
| locations | string | no | A comma-separated list of integers. |
| order_by | string | no | Which field to use when ordering the results. |
| page | integer | no | A page number within the paginated result set. |
| page_size | integer | no | Number of results to return per page. |
| search | string | no | A search term. |
| with_expired_budgets | boolean | no |  |

### Get Bills
`GET https://apizie.tech/v1/business:procurify/ap-bills-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| approver | number | no | Approver |
| contract | number | no | Contracts related to bill items' purchase orders |
| currency | integer | no |  |
| due_date_0 | string | no | Due Date |
| due_date_1 | string | no | Due Date |
| exclude_bill_group_ids | string | no |  |
| exclude_expense_bills | string | no | Exclude expense bills |
| expense | string | no | Expense Bills Only |
| format | string | no |  |
| gl_post_date_0 | string | no | Posting Date |
| gl_post_date_1 | string | no | Posting Date |
| group | integer | no |  |
| has_payment | boolean | no | Without Payment |
| has_posting_date | boolean | no | Has Posting Date |
| include_bill_group_ids | string | no |  |
| invoice_date_0 | string | no | Invoice Date |
| invoice_date_1 | string | no | Invoice Date |
| is_exported | boolean | no | Exported Bills Only |
| last_export_date_0 | string | no | Last Export Date |
| last_export_date_1 | string | no | Last Export Date |
| last_export_user | number | no | Last Export User |
| last_modified_datetime_0 | string | no | Last Modified Datetime |
| last_modified_datetime_1 | string | no | Last Modified Datetime |
| modified_date_0 | string | no | Last Modified Date (Deprecated - use 'Last Modified Datetime') |
| modified_date_1 | string | no | Last Modified Date (Deprecated - use 'Last Modified Datetime') |
| order_by | string | no | Which field to use when ordering the results. |
| page | integer | no | A page number within the paginated result set. |
| page_size | integer | no | Number of results to return per page. |
| search | string | no | A search term. |
| submitted_date_0 | string | no | Submitted Date |
| submitted_date_1 | string | no | Submitted Date |
| sync_status | string | no | Sync Status |
| sync_status_v2 | string | no | Sync Status |
| type | integer | no |  |
| user | integer | no |  |
| vendor | integer | no |  |

### Get All Catalog Bundles
`GET https://apizie.tech/v1/business:procurify/catalog-get-all-bundles` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| order_by | string | no | Which field to use when ordering the results. |
| page | integer | no | A page number within the paginated result set. |
| page_size | integer | no | Number of results to return per page. |
| search | string | no | A search term. |

### Get All Catalog Items
`GET https://apizie.tech/v1/business:procurify/catalog-get-all-items` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| bundle | integer | no |  |
| department | string | no | A comma-separated list of integers. |
| format | string | no |  |
| internalSKU | string | no |  |
| location | string | no | A comma-separated list of integers. |
| max_price | number | no |  |
| min_price | number | no |  |
| order_by | string | no | Which field to use when ordering the results. |
| page | integer | no | A page number within the paginated result set. |
| page_size | integer | no | Number of results to return per page. |
| pref_vendor | integer | no |  |
| search | string | no | A search term. |

### Create Catalog Item
`POST https://apizie.tech/v1/business:procurify/catalog-item-create` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| body | object | yes | JSON request body |

### Update Catalog Item
`POST https://apizie.tech/v1/business:procurify/catalog-update-item` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| id | integer | yes | A unique integer value identifying this catalog items. |
| body | object | yes | JSON request body |

### Update Order Item Custom Field Dropdown Choices
`POST https://apizie.tech/v1/business:procurify/customfields-update-order-item-custom-field-dropdown-choices` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| id | integer | yes | A unique integer value identifying this custom field. |
| body | object | yes | JSON request body |

### Get Active/Inactive Order Item Custom Fields
`GET https://apizie.tech/v1/business:procurify/customfields-get-order-item-custom-fields` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| field_type | string | no |  |
| format | string | no |  |
| meta__is_active | boolean | no |  |
| page | integer | no | A page number within the paginated result set. |
| page_size | integer | no | Number of results to return per page. |

### List Departments
`GET https://apizie.tech/v1/business:procurify/departments-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| branch | integer | no | Filter departments by their branch. |
| format | string | no |  |
| include_is_active_for_account_code | integer | no | Setting this adds the addition of the booeal field 'has_active_account' to each department object of the response. The query param accepts… |
| location_perm_override | boolean | no | Setting this overrides the need to enable the PROCUREMENT_ACCESS and/or RECEIVE_BY_DEPARTMENT feature switches. This parameter can only be… |
| locations | array | no | Filter departments by the locations (branches) passed in. |
| order_by | string | no | Which field to use when ordering the results. |
| page | integer | no | A page number within the paginated result set. |
| page_size | integer | no | Number of results to return per page. |
| permission | integer | no | Filter by permission. In isolation, this parameter can only be set to 68 (add purchase order); 841 (view report); or 899 (receive_po),… |
| requestable | string | no | Fetch all requestable departments by the currently authorized user. Accepts ORDER, EXPENSE, TRAVEL, and PAY_REQUEST. |
| search | string | no | A search term. |
| user | integer | no | Filter by user. If this parameter is set, the user must be a superuser or have the add_po_by_department or receive_po_by_department… |

### Create New Department
`POST https://apizie.tech/v1/business:procurify/departments-create` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| body | object | yes | JSON request body |

### Update Department
`POST https://apizie.tech/v1/business:procurify/departments-update` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| id | integer | yes | A unique integer value identifying this department. |
| body | object | yes | JSON request body |

### Get list of all order items
`GET https://apizie.tech/v1/business:procurify/orderitems-list-items` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| account | integer | no |  |
| account_code | integer | no | Account Code |
| active | boolean | no |  |
| approved_datetime_0 | string | no | Approved Date |
| approved_datetime_1 | string | no | Approved Date |
| approved_price | number | no |  |
| approved_quantity | number | no |  |
| approver | number | no |  |
| approver_id | number | no |  |
| branch | integer | no | Location |
| catalog | boolean | no |  |
| catalog_item | string | no | A comma-separated list of integers. |
| currency | integer | no |  |
| department | integer | no | Department |
| departments | string | no | A comma-separated list of integers. |
| exclude | string | no | A comma-separated list of integers. |
| exclude_punchout | boolean | no |  |
| format | string | no |  |
| fulfilment_status | string | no |  |
| is_purchased | boolean | no |  |
| is_recurring | boolean | no |  |
| last_changed_by | integer | no |  |
| last_modified_0 | string | no | Last Modified Date |
| last_modified_1 | string | no | Last Modified Date |
| lineComment | string | no |  |
| location | integer | no | Location |
| locations | string | no | A comma-separated list of integers. |
| name | string | no |  |
| num | string | no |  |
| orderNum | integer | no |  |
| orderNum__status | integer | no |  |
| order_by | string | no | Which field to use when ordering the results. |
| order_created_date_0 | string | no | Order Created Date |
| order_created_date_1 | string | no | Order Created Date |
| page | integer | no | A page number within the paginated result set. |
| page_size | integer | no | Number of results to return per page. |
| po_created_date_0 | string | no | Purchased Date |
| po_created_date_1 | string | no | Purchased Date |
| po_vendor | integer | no | Purchased Vendor |
| pref_vendor | integer | no |  |
| price | number | no |  |
| purchase_agreement | number | no |  |
| purchased_date_0 | string | no | Purchased Date |
| purchased_date_1 | string | no | Purchased Date |
| purchaser | integer | no |  |
| quantity | number | no |  |
| receivedFailQty | number | no |  |
| receivedPassQty | number | no |  |
| requester | integer | no | Requester |
| search | string | no | A search term. |
| sku | string | no |  |
| status | integer | no |  |
| type | integer | no |  |
| unit | string | no |  |

### Get Available User Permissions
`GET https://apizie.tech/v1/business:procurify/permissions-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| order_by | string | no | Which field to use when ordering the results. |
| page | integer | no | A page number within the paginated result set. |
| page_size | integer | no | Number of results to return per page. |
| search | string | no | A search term. |

### Get Available System Roles
`GET https://apizie.tech/v1/business:procurify/permissions-get-available-system-roles` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| order_by | string | no | Which field to use when ordering the results. |
| page | integer | no | A page number within the paginated result set. |
| page_size | integer | no | Number of results to return per page. |
| permission | string | no |  |
| search | string | no | A search term. |
| type | integer | no |  |
| user | integer | no |  |
| userprofile | integer | no |  |

### Update a Purchase Order
`POST https://apizie.tech/v1/business:procurify/purchaseorders-update-order` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| procurify_PO | integer | yes | A unique integer value identifying this po. |
| body | object | yes | JSON request body |

### Close a Purchase Order
`POST https://apizie.tech/v1/business:procurify/purchaseorders-close-order` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| procurify_PO | integer | yes | A unique integer value identifying this po. |

### Reopen a Purchase Order
`POST https://apizie.tech/v1/business:procurify/purchaseorders-reopen-procurify-po` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| procurify_PO | integer | yes | A unique integer value identifying this po. |

### View billing history of a Purchase Order
`GET https://apizie.tech/v1/business:procurify/purchaseorders-view-billing-history` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |

### Creating a requisition
`POST https://apizie.tech/v1/business:procurify/requisitions-create` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| body | object | yes | JSON request body |

### List Users
`GET https://apizie.tech/v1/business:procurify/users-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| is_active | boolean | no |  |
| location | string | no |  |
| order_by | string | no | Which field to use when ordering the results. |
| page | integer | no | A page number within the paginated result set. |
| page_size | integer | no | Number of results to return per page. |
| pending_invite | boolean | no |  |
| permission | string | no |  |
| role | number | no |  |
| search | string | no | A search term. |

### Create New User
`POST https://apizie.tech/v1/business:procurify/users-create` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| body | object | yes | JSON request body |

### Update User
`POST https://apizie.tech/v1/business:procurify/users-update` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| id | integer | yes | A unique integer value identifying this user profile. |
| body | object | yes | JSON request body |

### Deactivate User
`POST https://apizie.tech/v1/business:procurify/users-destroy` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| id | integer | yes | A unique integer value identifying this user profile. |

### Get Logged-in User
`GET https://apizie.tech/v1/business:procurify/users-get-logged-in-user` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |

### Get list of all active vendors
`GET https://apizie.tech/v1/business:procurify/vendors-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| exclude_other | boolean | no |  |
| external_id | string | no |  |
| format | string | no |  |
| name | string | no |  |
| order_by | string | no | Which field to use when ordering the results. |
| page | integer | no | A page number within the paginated result set. |
| page_size | integer | no | Number of results to return per page. |
| search | string | no | A search term. |
| type | integer | no | Type of the vendor. See above for possible options. |
| vendor_group | string | yes | **"all"**: Get list of all vendors. **"credit_card_providers"**: Get list of credit card provider vendors. These vendors are displayed in… |

### Create Vendor
`POST https://apizie.tech/v1/business:procurify/vendors-create` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| body | object | yes | JSON request body |

### Get Vendor by ID
`GET https://apizie.tech/v1/business:procurify/vendors-retrieve` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| id | integer | yes | A unique integer value identifying this vendor. |

### Update Vendor
`POST https://apizie.tech/v1/business:procurify/vendors-update` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| id | integer | yes | A unique integer value identifying this vendor. |
| body | object | yes | JSON request body |

### Partial Update Vendor
`POST https://apizie.tech/v1/business:procurify/vendors-partial-update` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| domain | string | yes | Part of the server address: https://{domain}.procurify.com |
| format | string | no |  |
| id | integer | yes | A unique integer value identifying this vendor. |
| body | object | no | JSON request body |

## Example
```
curl "https://apizie.tech/v1/business:procurify/oauth-token-request" \
  -H "x-api-key: $APIZIE_KEY" \
  -H "x-upstream-key: $PROVIDER_KEY"
```

## FAQ

### How do I call the Procurify API Documentation API?
Create a free Apizie key, then send POST https://apizie.tech/v1/business:procurify/oauth-token-request with the header x-api-key. Every endpoint returns { project, data, timestamp }.

### Is the Procurify API Documentation API free on Apizie?
Yes. The Free plan includes 1,000 requests a month at 100 requests a minute, no credit card. Procurify API Documentation itself also needs your own key from {user_domain}.procurify.com.

### Can AI agents use the Procurify API Documentation API?
Yes. Add the Apizie MCP server (https://apizie.tech/mcp) to Claude, ChatGPT, Cursor or VS Code, then ask in plain language. The agent calls run_scraper with project key business:procurify.

### What is the status of the Procurify API Documentation API?
Needs your own provider key (bring your own key)
