Ramp: Create a procurement request — request body — body
Create a procurement request: request body, field body. Complete fields and constraints for contract 2026-10-27.
API reference · Contract 2026-10-27
SDK schema: Create a procurement request — request body — body
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | Body for POST /unified-requests: create a procurement request. The spend program must be a procurement program; other program types are rejected. |
accounting_field_selections | array | Optional | Request-level accounting selections; purchase-order programs only. Limited to fields the program enables at the request level and your ERP allows there. |
accounting_field_selections[] | Model | Each item | Expand Edit a procurement request — request body — body accounting field selections item |
currency | Model | Required within parent | Expand Edit a procurement request — request body — body currency ISO 4217 currency code for the request. |
end_date | JSON | Optional | |
end_date (anyOf 1) | string | Alternative | End of the spend period, formatted YYYY-MM-DD. Default: null Format: date |
end_date (anyOf 2) | null | Alternative | |
entity_id | JSON | Optional | |
entity_id (anyOf 1) | string | Alternative | ID of the business entity the request belongs to. Defaults to the spend program’s entity, or the requester’s entity. Default: null Format: uuid |
entity_id (anyOf 2) | null | Alternative | |
field_answers | array | Optional | Answers to the spend program’s request form fields. Each answer’s answer_type must match the field’s type. |
field_answers[] | JSON | Each item | discriminator: {“mapping”: {“address”: ”#/components/schemas/ApiAddressFieldAnswerRequestBody”, “boolean”: ”#/components/schemas/ApiBooleanFieldAnswerRequestBody”, “contact”: ”#/components/schemas/ApiContactFieldAnswerRequestBody”, “date”: ”#/components/schemas/ApiDateFieldAnswerRequestBody”, “department”: ”#/components/schemas/ApiDepartmentFieldAnswerRequestBody”, “email”: ”#/components/schemas/ApiEmailFieldAnswerRequestBody”, “link”: ”#/components/schemas/ApiLinkFieldAnswerRequestBody”, “merchant”: ”#/components/schemas/ApiMerchantFieldAnswerRequestBody”, “merchant_category”: ”#/components/schemas/ApiMerchantCategoryFieldAnswerRequestBody”, “monetary_amount”: ”#/components/schemas/ApiMonetaryAmountFieldAnswerRequestBody”, “multi_select”: ”#/components/schemas/ApiMultiSelectFieldAnswerRequestBody”, “number”: ”#/components/schemas/ApiNumberFieldAnswerRequestBody”, “paragraph”: ”#/components/schemas/ApiParagraphFieldAnswerRequestBody”, “single_select”: ”#/components/schemas/ApiSingleSelectFieldAnswerRequestBody”, “text”: ”#/components/schemas/ApiTextFieldAnswerRequestBody”, “user”: ”#/components/schemas/ApiUserFieldAnswerRequestBody”, “vendor”: ”#/components/schemas/ApiVendorFieldAnswerRequestBody”}, “propertyName”: “answer_type”} |
field_answers[] (oneOf 1) | Model | Alternative | Expand Edit a procurement request — request body — body field answers item answer type address |
field_answers[] (oneOf 2) | Model | Alternative | Expand Edit a procurement request — request body — body field answers item answer type boolean |
field_answers[] (oneOf 3) | Model | Alternative | Expand Edit a procurement request — request body — body field answers item answer type contact |
field_answers[] (oneOf 4) | Model | Alternative | Expand Edit a procurement request — request body — body field answers item answer type date |
field_answers[] (oneOf 5) | Model | Alternative | Expand Edit a procurement request — request body — body field answers item answer type department |
field_answers[] (oneOf 6) | Model | Alternative | Expand Edit a procurement request — request body — body field answers item answer type email |
field_answers[] (oneOf 7) | Model | Alternative | Expand Edit a procurement request — request body — body field answers item answer type link |
field_answers[] (oneOf 8) | Model | Alternative | Expand Edit a procurement request — request body — body field answers item answer type merchant category |
field_answers[] (oneOf 9) | Model | Alternative | Expand Edit a procurement request — request body — body field answers item answer type merchant |
field_answers[] (oneOf 10) | Model | Alternative | Expand Edit a procurement request — request body — body field answers item answer type monetary amount |
field_answers[] (oneOf 11) | Model | Alternative | Expand Edit a procurement request — request body — body field answers item answer type multi select |
field_answers[] (oneOf 12) | Model | Alternative | Expand Edit a procurement request — request body — body field answers item answer type number |
field_answers[] (oneOf 13) | Model | Alternative | Expand Edit a procurement request — request body — body field answers item answer type paragraph |
field_answers[] (oneOf 14) | Model | Alternative | Expand Edit a procurement request — request body — body field answers item answer type single select |
field_answers[] (oneOf 15) | Model | Alternative | Expand Edit a procurement request — request body — body field answers item answer type text |
field_answers[] (oneOf 16) | Model | Alternative | Expand Edit a procurement request — request body — body field answers item answer type user |
field_answers[] (oneOf 17) | Model | Alternative | Expand Edit a procurement request — request body — body field answers item answer type vendor |
line_items | array | Optional | Line items for the request; purchase-order programs only. |
line_items[] | Model | Each item | Expand Create a procurement request — request body — body line items item |
name | JSON | Optional | |
name (anyOf 1) | string | Alternative | Name of the request. Default: null |
name (anyOf 2) | null | Alternative | |
request_owner_id | string | Required within parent | ID of the user who owns the request. Approvals route as if this user submitted it. Format: uuid |
spend_program_id | string | Required within parent | ID of the procurement spend program to request against. Non-procurement programs are rejected. Format: uuid |
start_date | JSON | Optional | |
start_date (anyOf 1) | string | Alternative | Start of the spend period, formatted YYYY-MM-DD. Default: null Format: date |
start_date (anyOf 2) | null | Alternative | |
submit | boolean | Optional | Submit for approval (default true). Set false to save a draft. Default: true |
Referenced models: Edit a procurement request — request body — body accounting field selections item, Edit a procurement request — request body — body field answers item answer type address, Edit a procurement request — request body — body field answers item answer type boolean, Edit a procurement request — request body — body field answers item answer type contact, Edit a procurement request — request body — body field answers item answer type date, Edit a procurement request — request body — body field answers item answer type department, Edit a procurement request — request body — body field answers item answer type email, Edit a procurement request — request body — body field answers item answer type link, Edit a procurement request — request body — body field answers item answer type merchant category, Edit a procurement request — request body — body field answers item answer type merchant, Edit a procurement request — request body — body field answers item answer type monetary amount, Edit a procurement request — request body — body field answers item answer type multi select, Edit a procurement request — request body — body field answers item answer type number, Edit a procurement request — request body — body field answers item answer type paragraph, Create a procurement request — request body — body line items item, Edit a procurement request — request body — body field answers item answer type single select, Edit a procurement request — request body — body field answers item answer type text, Edit a procurement request — request body — body field answers item answer type user, Edit a procurement request — request body — body field answers item answer type vendor, Edit a procurement request — request body — body currency