Custom software, inspection systems & websites — Perth since 2002
Published June 2026
If you are trying to connect to the OCLC WorldShare API, the good news is that this is usually much simpler than people fear. In most cases, the job is not building giant middleware. The job is getting a clean authenticated bridge in place so your source system can create, update, read, and sometimes delete user records in WorldShare safely.
That means a practical OCLC WorldShare integration is often really a patron sync or identity sync problem. A library may need to connect OCLC to a student system, a membership platform, a college CRM, or an open-source tool such as CiviCRM. The hard part is rarely “can I hit the endpoint”. The hard part is making the data move cleanly enough that staff do not end up fixing duplicates and broken updates by hand.
This page is written to do two things at once:
At a practical level, a simple WorldShare API integration usually needs to do a few things well:
Users endpoint with that bearer tokenThe auth endpoint is the OCLC OAuth token service, and the API endpoint follows the tenant-specific WorldShare SCIM pattern under share.worldcat.org/idaas/scim/v2/.
Some people come to OCLC expecting WSDL files, XML envelopes, and awkward SOAP client setup. For the WorldShare user-management style workflows, the shape is much closer to a modern web integration:
That is helpful because it means the main challenge is not exotic protocol work. It is disciplined integration work: credentials, payload shape, field mapping, lifecycle handling, and safe operational support.
If you want the shortest practical summary of how to connect to OCLC WorldShare, it looks like this:
1. Your system decides a user needs to be created or updated. 2. Your bridge requests an OAuth access token from OCLC. 3. Your bridge sends a SCIM user payload to the WorldShare Users endpoint. 4. OCLC returns the created or updated record with OCLC-side identifiers. 5. Your system stores the correlation between its own record ID and the OCLC-side ID. 6. Later changes reuse that mapping for updates instead of guessing or creating duplicates.
That is the essence of it. Most of the real work sits inside steps 3 to 6.
If you are building this for a real organisation, the safest pattern is usually not “sprinkle OCLC API calls around the application”. It is better to put a small bridge layer between your source system and WorldShare.
CRM / Student System / Membership Platform
|
v
Small internal OCLC bridge
- token handling
- payload shaping
- field mapping
- correlation IDs
- logging / retries
|
v
OCLC WorldShare SCIM Users API
That bridge does not need to be enormous. In fact, smaller is usually better. The point is to keep OCLC-specific logic in one place so the rest of your application talks to your clean interface, not directly to vendor-specific request code spread across random controllers or scripts.
Before anything else, make sure you have:
If these are half-configured, the rest of the project becomes confusing fast. A surprising number of integration delays are not coding problems at all. They are scope or environment problems.
A typical token request uses base64-encoded client_id:client_secret in the Authorization: Basic ... header, then posts form data with grant_type=client_credentials and the required scope.
$headers = [
'Authorization: Basic ' . base64_encode($clientId . ':' . $clientSecret),
'Content-Type: application/x-www-form-urlencoded'
];
$body = http_build_query([
'grant_type' => 'client_credentials',
'scope' => $scope
]);
If you can get and reuse that token reliably, you are through the first real gate.
Users endpoint as the core integration surfaceFrom there, the main practical pattern is straightforward CRUD over the SCIM users endpoint:
POST /Users/ to createGET /Users/{id} to readPUT /Users/{id} to updateDELETE /Users/{id} to remove where your workflow permits itThat means you can design and test the integration like a normal resource-oriented service rather than treating it like magical vendor plumbing.
This is where many OCLC WorldShare integration attempts stall. The body is not just a tiny generic user object. A real request normally includes the core SCIM user schema plus OCLC persona extensions for the workflow you are supporting.
Practically, your payload often needs to contain:
schemas arrayA practical create-user request often includes a barcode, institution ID, branch ID, and the OCLC persona namespaces needed for WorldShare to accept and enrich the record.
This is one of the most important design choices. Do not let OCLC become the only place you can recognise a user. Your CRM, student system, membership platform, or internal workflow should keep its own durable identifier and map that to the OCLC-side identity returned by WorldShare.
That correlation layer is what keeps later updates, reconciliation, and recovery from getting ugly.
Before burying the integration inside a bigger production workflow, prove the entire lifecycle in a tiny script or harness:
This sounds obvious, but it is one of the fastest ways to avoid a lot of later confusion. A tiny repeatable harness gives you a safe place to debug scope issues, schema issues, and mapping problems before business users are involved.
Imagine a college library wants its CRM or membership system to create a patron record in OCLC when a person becomes eligible.
Users endpoint.That is the basic commercial value of the integration. Staff stop rekeying users by hand. Record drift reduces. The workflow becomes calmer and more supportable.
That is often where outside help becomes worthwhile. Not because the HTTP request itself is impossible, but because the surrounding integration architecture determines whether the result feels dependable six months later.
This is usually a good fit if you are one of these:
Send the current system, what needs to sync, whether the problem is create/update/reconciliation, and where the workflow is breaking today. A rough brief is enough.
Discuss the OCLC integration See inherited software takeover support
If your goal is simply to “connect to OCLC”, the simplest correct mental model is: authenticate cleanly, send the right SCIM payloads, keep a stable correlation ID, and hide the vendor-specific details behind a small supportable bridge.
That is how you turn an OCLC WorldShare API integration from a fragile technical experiment into something staff can actually rely on.
Need the next step, not another generic read?
Discuss a software bottleneck · Book an IHTMaps workflow review · Request a website quote
Best fit for inherited systems, spreadsheet-heavy workflows, internal tools, inspection processes, and websites that need better enquiry flow or calmer technical ownership.
Call 0432 000 583 if you want to talk through the current bottleneck directly.
E-business card (QR ready) for conferences and in-person shares. · Site map