Net Rentals API
Build custom rental websites, apps, dashboards, integrations, and automations while Net Rentals handles the rental infrastructure underneath.
This page maps the proposed public Net Rentals developer platform based on the current rental architecture. Endpoints shown here should not be treated as generally available until they are marked as released.
https://api.net-rentals.com/v1
https://api.sandbox.net-rentals.com/v1
Environments
Separate development traffic from live rental operations by using the environment that matches your integration stage.
api.sandbox.net-rentals.com/v1
Testing and development
api.net-rentals.com/v1
Live rental operations
Authentication
Authenticate requests with a bearer API key. Secret keys belong on trusted servers and should never be exposed in browser JavaScript.
Authorization header
Pass your API key using the standard
Authorization header.
Authorization: Bearer nr_live_sk_xxxxxxxxx
Key types
nr_live_pk_*
Browser-safe key for specifically approved public operations.
nr_live_sk_*
Server-only production credential.
nr_test_pk_*
Browser-safe key for sandbox operations.
nr_test_sk_*
Server-only sandbox credential.
Errors
API errors should use a consistent structure so integrations can handle authentication, validation, conflicts, payment failures, and internal errors predictably.
Standard error object
Human-readable messages can be shown to developers while stable error codes drive integration logic.
{
"error": {
"type": "invalid_request",
"code": "booking_not_ready",
"message": "The rental cannot start until the security deposit is secured.",
"request_id": "req_123"
}
}
authentication_error
authorization_error
invalid_request
validation_error
conflict
rate_limit_error
payment_error
integration_error
internal_error
Pagination
Collection endpoints can use cursor-based pagination to move through large result sets.
GET /v1/bookings?limit=50&starting_after=booking_123
Idempotency
Money-moving and lifecycle-changing requests should accept an idempotency key so network retries do not accidentally duplicate actions.
Idempotency-Key: 6c57e21d-...
POST /bookings
POST /checkout
POST /refund
POST /deposit/capture
POST /charges/{id}/collect
POST /disputes
Business
Read or update the rental business and its operational settings.
/v1/business
Retrieve the current business.
/v1/business
Update business information.
/v1/business/settings
Retrieve rental settings.
/v1/business/settings
Update supported operational settings.
Example settings
booking_approval_mode
cancellation_window
security_deposit_defaults
included_mileage_defaults
pickup_rules
return_rules
identity_requirements
agreement_requirements
Team & permissions
Manage team members, invitations, roles, and scoped access.
/v1/team
List team members.
/v1/team/{member_id}
Retrieve one team member.
/v1/team/invitations
Invite a team member.
/v1/team/{member_id}
Update role or permissions.
/v1/team/{member_id}
Remove a team member.
Vehicles
Build around the fleet: pricing, availability, photos, locations, policies, mileage, and vehicle configuration.
/v1/vehicles
List vehicles.
/v1/vehicles
Create a vehicle.
/v1/vehicles/{vehicle_id}
Retrieve a vehicle.
/v1/vehicles/{vehicle_id}
Update a vehicle.
/v1/vehicles/{vehicle_id}
Archive or remove a vehicle.
/v1/vehicles/{vehicle_id}/availability
Read availability.
/v1/vehicles/{vehicle_id}/pricing
Read pricing configuration.
/v1/vehicles/{vehicle_id}/pricing
Update supported pricing.
Vehicle data
daily_rate
deposit
included_miles
extra_mile_fee
location
delivery_options
access_method
minimum_age
photos
features
Availability & quotes
Search vehicle availability and create price estimates before a booking is created.
/v1/availability
Search available vehicles.
/v1/quotes
Create a rental quote.
/v1/quotes/{quote_id}
Retrieve a quote.
Create a quote
Submit a vehicle and rental period to calculate the proposed booking price.
{
"vehicle_id": "veh_123",
"start_at": "2026-08-20T10:00:00-04:00",
"end_at": "2026-08-23T10:00:00-04:00",
"unlimited_miles": false
}
Bookings
Bookings are the central rental object connecting the customer, vehicle, payment, pickup, return, and post-trip lifecycle.
/v1/bookings
Create a booking.
/v1/bookings
List bookings.
/v1/bookings/{booking_id}
Retrieve a booking.
/v1/bookings/{booking_id}
Update supported booking fields.
/v1/bookings/{booking_id}/approve
Approve a booking.
/v1/bookings/{booking_id}/cancel
Cancel a booking.
/v1/bookings/{booking_id}/extend
Extend an eligible booking.
/v1/bookings/{booking_id}/timeline
Retrieve lifecycle history.
Lifecycle states
pending_payment
checkout_started
payment_pending
booked
confirmed
ready_for_pickup
active
late
return_in_review
completed
canceled
refunded
problem
Payments
Keep rental payments attached to the reservation that created them.
/v1/bookings/{booking_id}/checkout
Create checkout for a booking.
/v1/bookings/{booking_id}/payment
Retrieve payment state.
/v1/bookings/{booking_id}/payment/retry
Retry an eligible failed payment.
/v1/bookings/{booking_id}/refund
Request an eligible refund.
/v1/bookings/{booking_id}/transactions
List booking transactions.
Security deposits
Read and manage supported security-deposit operations around a booking.
/v1/bookings/{booking_id}/deposit
Retrieve deposit state.
/v1/bookings/{booking_id}/deposit
Create or secure a deposit.
/v1/bookings/{booking_id}/deposit/capture
Capture an eligible deposit.
/v1/bookings/{booking_id}/deposit/release
Release an eligible deposit.
Identity verification
Start verification, read verification state, and access authorized identity media through restricted URLs.
/v1/bookings/{booking_id}/identity-verification
Start identity verification.
/v1/bookings/{booking_id}/identity-verification
Retrieve verification state.
/v1/bookings/{booking_id}/identity-verification/media
Retrieve authorized private media references.
Rental agreements
Create, send, inspect, and retrieve agreement state for a booking.
/v1/bookings/{booking_id}/agreement
Create an agreement.
/v1/bookings/{booking_id}/agreement
Retrieve agreement data.
/v1/bookings/{booking_id}/agreement/send
Send agreement for signing.
/v1/bookings/{booking_id}/agreement/status
Retrieve agreement state.
Insurance
Submit and review supported insurance requirements.
/v1/bookings/{booking_id}/insurance
Retrieve insurance state.
/v1/bookings/{booking_id}/insurance
Submit insurance information.
/v1/bookings/{booking_id}/insurance/approve
Approve an eligible submission.
/v1/bookings/{booking_id}/insurance/reject
Reject an eligible submission.
Pickup & release
Read pickup readiness and submit the operational records required to start a rental.
/v1/bookings/{booking_id}/pickup-readiness
Retrieve readiness gates.
/v1/bookings/{booking_id}/pickup/photos
Submit release photos.
/v1/bookings/{booking_id}/pickup/mileage
Record mileage out.
/v1/bookings/{booking_id}/pickup/complete
Complete an eligible pickup.
Suggested photo slots
front
rear
driver_side
passenger_side
interior
odometer
damage_detail
Vehicle access
Manage owner handoff, keys-in-car, access codes, or future external access providers without bypassing rental readiness gates.
/v1/bookings/{booking_id}/vehicle-access
Retrieve access configuration.
/v1/bookings/{booking_id}/vehicle-access
Update access configuration.
/v1/bookings/{booking_id}/vehicle-access/release
Release access when permitted.
/v1/bookings/{booking_id}/vehicle-access/revoke
Revoke released access.
Returns
Start, submit, review, and complete the return lifecycle.
/v1/bookings/{booking_id}/return
Retrieve return state.
/v1/bookings/{booking_id}/return/start
Open the return flow.
/v1/bookings/{booking_id}/return/photos
Submit return photos.
/v1/bookings/{booking_id}/return/mileage
Record mileage in.
/v1/bookings/{booking_id}/return/submit
Submit return for review.
/v1/bookings/{booking_id}/return/complete
Complete an eligible return.
Mileage
Read mileage out, mileage in, included mileage, overage, and calculated mileage fees.
Mileage object
Mileage state can connect the return workflow directly to post-trip fee calculation.
{
"mileage_out": 42000,
"mileage_in": 42350,
"miles_used": 350,
"included_miles": 300,
"over_miles": 50,
"extra_mile_fee_cents": 75,
"mileage_fee_cents": 3750,
"unlimited_miles": false
}
Post-trip charges
Create and manage supported fees, evidence, collection attempts, refunds, and waivers.
/v1/bookings/{booking_id}/charges
List charges for a booking.
/v1/bookings/{booking_id}/charges
Create a charge.
/v1/charges/{charge_id}
Retrieve a charge.
/v1/charges/{charge_id}/evidence
Add evidence.
/v1/charges/{charge_id}/collect
Start eligible collection.
/v1/charges/{charge_id}/waive
Waive an eligible charge.
Disputes
Attach disputes to individual fees while preserving booking-level operational safeguards.
/v1/disputes
List disputes.
/v1/disputes/{dispute_id}
Retrieve a dispute.
/v1/charges/{charge_id}/disputes
Create a dispute for a charge.
/v1/disputes/{dispute_id}/evidence
Add dispute evidence.
/v1/disputes/{dispute_id}/approve
Approve an eligible dispute.
/v1/disputes/{dispute_id}/close
Close a dispute.
Customers
Read tenant-scoped customer records and their related rental history.
/v1/customers
List customers.
/v1/customers
Create a customer.
/v1/customers/{customer_id}
Retrieve a customer.
/v1/customers/{customer_id}/bookings
List customer bookings.
/v1/customers/{customer_id}/charges
List customer charges.
Messages
Read conversations and send authorized messages through supported channels.
/v1/conversations
List conversations.
/v1/conversations/{conversation_id}
Retrieve a conversation.
/v1/conversations/{conversation_id}/messages
Send a message.
/v1/bookings/{booking_id}/messages
Send a booking-scoped message.
in_app
sms
email
Website & branding
Build custom customer-facing experiences while keeping Net Rentals underneath as the rental engine.
/v1/website
Retrieve website configuration.
/v1/website
Update supported website configuration.
/v1/public/vehicles
List public fleet vehicles.
/v1/public/vehicles/{vehicle_id}
Retrieve a public vehicle.
/v1/branding
Retrieve branding configuration.
/v1/branding
Update supported branding.
A future public fleet, availability, quote, and booking API could power React, Next.js, Webflow, Framer, native mobile apps, kiosks, or other custom customer experiences.
Custom domains
/v1/domains
List domains.
/v1/domains
Add a domain.
/v1/domains/{domain_id}/verification
Read verification requirements.
/v1/domains/{domain_id}/verify
Check verification.
Files & evidence
Use private file workflows for vehicle photos, rental evidence, agreements, and other authorized media.
/v1/files/upload-url
Create an authorized upload URL.
/v1/files/{file_id}
Retrieve authorized file metadata.
/v1/files/{file_id}
Delete an eligible file.
Reports & analytics
/v1/reports/revenue
Revenue metrics.
/v1/reports/bookings
Booking metrics.
/v1/reports/utilization
Fleet utilization metrics.
/v1/reports/disputes
Dispute metrics.
Custom metadata
Store integration-specific identifiers without changing Net Rentals' core rental model.
{
"metadata": {
"crm_customer_id": "salesforce_9921",
"source": "miami_landing_page",
"affiliate": "hotel_partner_32"
}
}
Webhook endpoint management
Register external endpoints and manage delivery configuration through the developer API.
/v1/developers/webhooks
List webhook endpoints.
/v1/developers/webhooks
Create an endpoint.
/v1/developers/webhooks/{endpoint_id}
Update endpoint configuration.
/v1/developers/webhooks/{endpoint_id}/deliveries
List delivery attempts.
Sensitive data stays outside the public API.
Developer access should preserve tenant boundaries, permissions, rental-state gates, and private-data restrictions.
- Full payment-card PAN
- CVV
- Stripe secret keys
- Unauthorized private access credentials
- Public identity-document URLs
- Unredacted payment credentials from messages
- Tenant scoping
- Role and permission checks
- Booking-state gates
- Deposit requirements
- Dispute locks
- Auditability
Start smaller than the architecture.
The rental platform can support a broad developer surface, but a first public release should focus on the resources developers need to build a reliable direct-booking integration.
GET /vehicles
GET /vehicles/{id}
GET /availability
POST /quotes
POST /bookings
GET /bookings/{id}
POST /bookings/{id}/cancel
GET /customers/{id}
GET /bookings/{id}/payment
GET /bookings/{id}/deposit
GET /bookings/{id}/charges
POST /messages
pickup / return writes
deposit capture
post-trip charge creation
dispute management
website management
domain API
team API
analytics
files / evidence
OAuth apps
embedded components
Build your rental experience your way.
Net Rentals handles the rental infrastructure underneath.