How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Opply Buyer self-onboarding API

The Buyer self-onboarding API from Opply — 16 operation(s) for buyer self-onboarding.

Opply Buyer self-onboarding API is one of 47 APIs that Opply publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Buyer self-onboarding. The published artifact set on APIs.io includes an OpenAPI specification.

This API exposes 19 operations across 16 paths, and defines 59 schemas. It is described by OpenAPI 3.0.3, at version 0.0.0.

Requests are made against the base URL https://api.opply.com.

19 operations 16 paths 59 schemas 1 DELETE6 GET2 PATCH10 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.3
API Version
0.0.0
Base URL
https://api.opply.com
Authentication
API Key, API Key
Resource Areas
1

Authentication & Security 2

Opply Buyer self-onboarding API declares 2 security schemes for authenticating requests. An API key is passed in the cookie as sessionid (cookieAuth). An API key is passed in the header as Authorization (tokenAuth).

  • tokenAuth — Token-based authentication with required prefix "Token"

Paths & Operations 19

Across 16 paths, the API surfaces 19 operations — 1 DELETE, 6 GET, 2 PATCH, 10 POST. Each is listed below with its method, path, parameters, and response codes.

Buyer self-onboarding 19
PATCH
/api/v1/companies/me/business-profile/update/
Update the buyer Business Profile section.
api_v1_companies_me_business_profile_update_partial_update body → 200400
POST
/api/v1/companies/me/delivery-locations/
Short-circuit a buyer-confirmed dedup: when the buyer picked "Use my saved address" on a "might be X" delivery card, link the external id to that existing address and return it — no new row, and no n…
api_v1_companies_me_delivery_locations_create body → 201
POST
/api/v1/companies/me/delivery-locations/match-preview/
Preview which discovered delivery addresses the buyer already has saved, so the import review can show "already saved / might be your saved address" hints. Results are aligned by index to the request…
api_v1_companies_me_delivery_locations_match_preview_create body → 200
PATCH
/api/v1/companies/me/onboarding-banking/update/
Update the buyer's IBAN (Banking & payments section).
api_v1_companies_me_onboarding_banking_update_partial_update body → 200
POST
/api/v1/companies/me/onboarding-compliance-documents/
POST /companies/me/onboarding-compliance-documents/ — commit a staged compliance document (e.g. a sales tax exemption certificate). Copies the scrubbed source file out of the onboarding bucket into a…
api_v1_companies_me_onboarding_compliance_documents_create body → 201
GET
/api/v1/companies/me/onboarding-extractions/
/companies/me/onboarding-extractions/ — the staging table the FE persists the agent's proposal to so Step 2 survives a reload. Re-staging for the same batch destructively overwrites the previous prop…
api_v1_companies_me_onboarding_extractions_list 2 params → 200
POST
/api/v1/companies/me/onboarding-extractions/
/companies/me/onboarding-extractions/ — the staging table the FE persists the agent's proposal to so Step 2 survives a reload. Re-staging for the same batch destructively overwrites the previous prop…
api_v1_companies_me_onboarding_extractions_create body → 201
GET
/api/v1/companies/me/onboarding-extractions/{uuid}/
/companies/me/onboarding-extractions/ — the staging table the FE persists the agent's proposal to so Step 2 survives a reload. Re-staging for the same batch destructively overwrites the previous prop…
api_v1_companies_me_onboarding_extractions_retrieve 1 param → 200
POST
/api/v1/companies/me/onboarding-ingredients/
Create catalog.BuyerItem rows for the buyer's company. The post-onboarding Materials page reads from the same model (/api/v1/catalog/items/) so anything created here shows up immediately. kind discri…
api_v1_companies_me_onboarding_ingredients_create body → 201
POST
/api/v1/companies/me/onboarding-ingredients/match-preview/
Preview which discovered materials already exist in the buyer's catalogue, so the import review can show "already in your materials" (exact — merges at commit) / "might be your existing X" (fuzzy) hi…
api_v1_companies_me_onboarding_ingredients_match_preview_create body → 200
POST
/api/v1/companies/me/onboarding-invoice-batches/
/companies/me/onboarding-invoice-batches/ — create or read a batch the buyer uploads invoices into.
api_v1_companies_me_onboarding_invoice_batches_create body → 201
GET
/api/v1/companies/me/onboarding-invoice-batches/{uuid}/
/companies/me/onboarding-invoice-batches/ — create or read a batch the buyer uploads invoices into.
api_v1_companies_me_onboarding_invoice_batches_retrieve 1 param → 200
POST
/api/v1/companies/me/onboarding-invoices/
/companies/me/onboarding-invoices/ — multipart upload, read, and soft-delete for a single invoice file. The bytes themselves are written to a private S3 bucket via invoicestorage.uploadtoprivatebucke…
api_v1_companies_me_onboarding_invoices_create body → 201
GET
/api/v1/companies/me/onboarding-invoices/{uuid}/
/companies/me/onboarding-invoices/ — multipart upload, read, and soft-delete for a single invoice file. The bytes themselves are written to a private S3 bucket via invoicestorage.uploadtoprivatebucke…
api_v1_companies_me_onboarding_invoices_retrieve 1 param → 200
DELETE
/api/v1/companies/me/onboarding-invoices/{uuid}/
/companies/me/onboarding-invoices/ — multipart upload, read, and soft-delete for a single invoice file. The bytes themselves are written to a private S3 bucket via invoicestorage.uploadtoprivatebucke…
api_v1_companies_me_onboarding_invoices_destroy 1 param → 204
GET
/api/v1/companies/me/onboarding-invoices/{uuid}/content/
Return a short-TTL signed URL the agent uses to read the invoice bytes.
api_v1_companies_me_onboarding_invoices_content_retrieve 1 param → 200
GET
/api/v1/companies/me/onboarding-suppliers/
Create + list Supplier rows attached to the buyer's BuyerOnboarding. The agent commits one row per extracted supplier. The list action backs the post-onboarding "Suppliers in progress" tab, which sur…
api_v1_companies_me_onboarding_suppliers_list 2 params → 200
POST
/api/v1/companies/me/onboarding-suppliers/
Create + list Supplier rows attached to the buyer's BuyerOnboarding. The agent commits one row per extracted supplier. The list action backs the post-onboarding "Suppliers in progress" tab, which sur…
api_v1_companies_me_onboarding_suppliers_create body → 201
POST
/api/v1/companies/me/onboarding-suppliers/match-preview/
Preview which discovered suppliers the buyer ALREADY has — onboarded, mid-onboarding, or a pending submission — so the import review can show "you already have this / it's already being set up" hints…
api_v1_companies_me_onboarding_suppliers_match_preview_create body → 200

Schemas 59

The contract defines 59 schemas that model the data the API accepts and returns. The most detailed are BuyerOnboardingSupplierSubmission (26 properties), BuyerOnboardingSupplierSubmissionRequest (23 properties), DeliveryLocation (20 properties), BuyerDocument (20 properties). Each schema is shown below with its type and property counts.

ExtractedComplianceDocumentRead
object
Nested read shape for OnboardingExtractionSerializer.
17 properties 17 required
ExtractionConfidenceEnum
string
high - High medium - Medium low - Low manual - Manual
LegalEntityTypeEnum
string
ltd - Limited Company (Ltd) llp - Limited Liability Partnership (LLP) plc - Public Limited Company (PLC) soletrader - Sole Trader partnership - Partnership oth…
Country
string
AF - Afghanistan AX - Åland Islands AL - Albania DZ - Algeria AS - American Samoa AD - Andorra AO - Angola AI - Anguilla AQ - Antarctica AG - Antigua and Barbu…
DocumentLifecycleStatusEnum
string
valid - Valid expired - Expired expiringsoon - Expiring Soon renewed - Renewed
PriorityEnum
string
high - High medium - Medium low - Low
MatchConfidenceEnum
string
exact - exact fuzzy - fuzzy
PaginatedBuyerOnboardingSupplierSubmissionList
object
4 properties 2 required
OnboardingExtraction
object
12 properties 12 required
OnboardingExtractionStatusEnum
string
staged - Staged reviewed - Reviewed partiallycommitted - Partially committed committed - Committed discarded - Discarded
_LineItemWrite
object
Inline write shape for line items inside a proposal payload.
9 properties 1 required
DocumentType
object
Shared serializer for the DocumentType taxonomy (buyer, supplier, Opply documents).
3 properties 2 required
DeliveryAddressMatchPreviewRequest
object
Batch of connector-discovered delivery addresses to check against the buyer's existing saved delivery addresses, for the import review preview.
1 property 1 required
SupplierMatchResult
object
One preview result. matched is true for a supplier the buyer already has in ANY state — source says which: onboarded (sources from it), inprogress (being onboa…
7 properties 2 required
BuyerOnboardingSupplierSubmissionRequest
object
Request-only schema for creating a supplier submission — writable fields only. Without it the create's OpenAPI request body reuses the read component and deman…
23 properties 1 required
OnboardingInvoiceStatusEnum
string
uploaded - Uploaded agentextracted - Agent extracted agentextractionfailed - Agent extraction failed discarded - Discarded
OnboardingExtractionWrite
object
Body of POST /onboarding-extractions/. Partial staging: only the sections present in the payload are (re-)staged — a present section replaces the previous stag…
8 properties 1 required
NullEnum
PhoneCountryCodeEnum
string
+376 - +376 +971 - +971 +93 - +93 +1268 - +1268 +1264 - +1264 +355 - +355 +374 - +374 +244 - +244 +672 - +672 +54 - +54 +1684 - +1684 +43 - +43 +61 - +61 +297…
PaginatedOnboardingExtractionList
object
4 properties 2 required
BuyerFinancialDocumentTypeEnum
string
managementaccounts - Management Accounts auditedaccounts - Audited Accounts balancesheet - Balance Sheet profitandloss - Profit and Loss cashflowforecast - Cas…
DeliveryAddressMatchPreviewResponse
object
1 property 1 required
ItemMatchResult
object
One item preview result. Unlike suppliers there's no relationship nuance — the buyer's whole catalogue is fair game. An exact match will merge at commit (updat…
6 properties 2 required
SupplierMatchPreviewRequest
object
Batch of connector-discovered supplier names to check against the suppliers the buyer already sources from, for the import review preview.
1 property 1 required
SupplierReviewStatusEnum
string
pendingreview - Pending review matched - Matched to existing supplier onboarding - Onboarding new supplier rejected - Rejected
LineItemClassificationEnum
string
INGREDIENT - Ingredient PACKAGING - Packaging LOGISTICS - Logistics SERVICES - Services OTHER - Other
ItemMatchPreviewResponse
object
1 property 1 required
CatalogItemKindEnum
string
ingredient - Ingredient packaging - Packaging
ExtractedSupplierRead
object
Nested read shape for OnboardingExtractionSerializer.
19 properties 19 required
SupplierMatchPreviewResponse
object
1 property 1 required
OnboardingInvoiceContent
object
Body of GET /onboarding-invoices/{uuid}/content/. signedurl is short-TTL and tied to a single object. Mirrors the shape the agent proxy will forward inside its…
5 properties 5 required
DeliveryAddressPreviewItem
object
One discovered delivery address to check against the buyer's saved ones. Only the signature fields are needed (street + town + postcode + country).
4 properties
BuyerOnboardingSupplierSubmission
object
Buyer Suppliers section. The agent commit POSTs one row per extracted supplier; only suppliername is required. Backed by the buyeronboarding.Supplier model — t…
26 properties 4 required
_ComplianceDocumentWrite
object
Inline write shape for a compliance document inside a proposal payload. Mirrors ExtractedComplianceDocumentProposal in @opply/agent-protocol — every optional s…
16 properties 1 required
ExtractedLineItem
object
Read+write line-item proposal. sourceinvoiceuuid and sourcesupplieruuid are nullable for the empty-path case (no document evidence).
11 properties 6 required
USStateEnum
string
AL - Alabama AK - Alaska AZ - Arizona AR - Arkansas CA - California CO - Colorado CT - Connecticut DE - Delaware FL - Florida GA - Georgia HI - Hawaii ID - Ida…
OnboardingBanking
object
Buyer Banking & payments section. A 1:1 resource on Company: a single optional IBAN. The section is treated as complete when an IBAN is saved; "Skip for now" i…
1 property
OnboardingInvoiceBatchStatusEnum
string
uploading - Uploading readyforextraction - Ready for extraction extracting - Extracting extracted - Extracted extractionfailed - Extraction failed committed -…
DeliveryLocation
object
Buyer Delivery Locations section. A buyer can have 1..N of these, each one a CompanyAddress(addresstype=DELIVERY). The required-field set matches the doc's §4.…
20 properties 8 required
BusinessProfileAddress
object
The buyer's primary CompanyAddress(addresstype=COMPANY). The address country is set server-side from Company.registrationcountrycode, so it is read-only on the…
7 properties 5 required
ComplianceDocumentTypeEnum
string
SALESTAXEXEMPTION - Sales Tax Exemption OTHER - Other
DeliveryAddressMatchResult
object
One delivery-address preview result, aligned by index to the request. An exact match auto-dedups at commit; a fuzzy match is a hint the buyer confirms ('Use my…
5 properties 1 required
PatchedBusinessProfile
object
Buyer Business Profile section. Writes a flat shape that the agent's Step-3 Verify panel posts. Mutates Company plus a paired CompanyAddress(addresstype=COMPAN…
16 properties
OnboardingInvoiceBatch
object
10 properties 10 required
ItemMatchPreviewRequest
object
Batch of connector-discovered material/ingredient names to check against the buyer's existing catalogue, for the import review preview.
1 property 1 required
_SupplierWrite
object
Inline write shape for an extracted supplier (+ its line items).
18 properties 1 required
BlankEnum
BuyerDocument
object
Serializer for BuyerDocument — buyer certification and compliance documents. Handles CRUD with computed status fields, mirroring OpplyDocumentSerializer.
20 properties 9 required
OnboardingIngredient
object
Buyer Ingredients & SKUs section. Creates catalog.BuyerItem rows for the authenticated buyer's company — the same model the post-onboarding Materials page read…
8 properties 2 required
OnboardingInvoiceList
object
Compact shape used inside batch responses and list endpoints. Intentionally never exposes storageobjectkey / storagebucket — the private path stays on the serv…
7 properties 7 required
UnitOfMeasurementEnum
string
fl oz - Fluid Ounces g - Grams mg - milligrams gals - Gallons kg - Kilograms L - Liters tons - Metric Tons oz - Ounces lbs - Pounds pcs - Pieces pt - Pints ml…
OnboardingComplianceCommitResult
OnboardingInvoiceDetail
object
Identical shape to the list serializer in v1 — exists as a separate class so we have a place to add detail-only fields later without renaming the list response.
7 properties 7 required
PatchedOnboardingBanking
object
Buyer Banking & payments section. A 1:1 resource on Company: a single optional IBAN. The section is treated as complete when an IBAN is saved; "Skip for now" i…
1 property
SupplierMatchResultSourceEnum
string
onboarded - onboarded inprogress - inprogress submitted - submitted
BuyerFinancialDocument
object
Read serializer returned for list/create responses.
14 properties 14 required
OnboardingComplianceDocumentCommit
object
Body of POST /onboarding-compliance-documents/. extractedcompliancedocumentuuid names the staged row; the other fields are optional buyer edits from the review…
4 properties 1 required
BusinessProfile
object
Buyer Business Profile section. Writes a flat shape that the agent's Step-3 Verify panel posts. Mutates Company plus a paired CompanyAddress(addresstype=COMPAN…
16 properties 5 required
OnboardingInvoiceUpload
object
Multipart input for POST /onboarding-invoices/. Validation of the file's bytes (MIME sniff, size cap, batch caps) is performed in the viewset because it depend…
2 properties 2 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

opply-buyer-self-onboarding-api-openapi.yml Raw ↑

Other APIs Opply publishes across the network.

Opply Activity Feed API
Opply Admin panel API
Opply Agents API
Opply Agreements API
Opply api API
Opply App Orders API
Opply Brain API
Opply Brands API
Opply Buyer Documents API
Opply Buyer Financial Documents API
Opply Buyer Onboarding API
Opply Buyers API
Where this information came from

This is an independent, third-party profile of Opply Buyer self-onboarding API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.